Updated iOSSampleApp and related files.
authoryangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Thu, 7 Jul 2011 19:26:42 +0000 (19:26 +0000)
committeryangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Thu, 7 Jul 2011 19:26:42 +0000 (19:26 +0000)
Removed include guard in SkTime_Unix.cpp, which the iOSSampleApp now uses.

git-svn-id: http://skia.googlecode.com/svn/trunk@1820 2bbb7eff-a529-9590-31e7-b0007b416f81

27 files changed:
experimental/iOSSampleApp/Shared/main.m
experimental/iOSSampleApp/SkAlertPrompt.h [new file with mode: 0644]
experimental/iOSSampleApp/SkAlertPrompt.m [new file with mode: 0644]
experimental/iOSSampleApp/SkIOSNotifier.h
experimental/iOSSampleApp/SkIOSNotifier.mm
experimental/iOSSampleApp/SkTime_iOS.mm [deleted file]
experimental/iOSSampleApp/SkUIDetailViewController.h
experimental/iOSSampleApp/SkUIDetailViewController.mm
experimental/iOSSampleApp/SkUIRootViewController.h
experimental/iOSSampleApp/SkUIRootViewController.mm
experimental/iOSSampleApp/SkUIView_shell.h
experimental/iOSSampleApp/SkUIView_shell.mm
experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig
experimental/iOSSampleApp/iOSSampleApp.xcodeproj/project.pbxproj
experimental/iOSSampleApp/iPad/AppDelegate_iPad.h
experimental/iOSSampleApp/iPad/AppDelegate_iPad.mm
experimental/iOSSampleApp/iPad/MainWindow_iPad.xib
experimental/iOSSampleApp/iPad/SkUISplitViewController.h
experimental/iOSSampleApp/iPad/SkUISplitViewController.mm
experimental/iOSSampleApp/iPhone/AppDelegate_iPhone.h
experimental/iOSSampleApp/iPhone/AppDelegate_iPhone.mm
experimental/iOSSampleApp/iPhone/MainWindow_iPhone.xib
experimental/iOSSampleApp/iPhone/SkUINavigationController.h
experimental/iOSSampleApp/iPhone/SkUINavigationController.mm
src/ports/SkTime_Unix.cpp
src/utils/ios/SkOSFile_iOS.mm
src/utils/ios/SkOSWindow_iOS.mm

index 2a26f1b..1d3af77 100644 (file)
@@ -1,7 +1,7 @@
 #import <UIKit/UIKit.h>
 
 int main(int argc, char *argv[]) {
-    
+    signal(SIGPIPE, SIG_IGN);
     NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
     int retVal = UIApplicationMain(argc, argv, nil, nil);
     [pool release];
diff --git a/experimental/iOSSampleApp/SkAlertPrompt.h b/experimental/iOSSampleApp/SkAlertPrompt.h
new file mode 100644 (file)
index 0000000..36053a9
--- /dev/null
@@ -0,0 +1,19 @@
+//
+//  SkAlertPrompt.h
+//  iOSSampleApp
+//
+//  Created by Yang Su on 7/6/11.
+//  Copyright 2011 Google Inc. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+
+@interface SkAlertPrompt : UIAlertView {
+    UITextField *textField;
+}
+@property (nonatomic, retain) UITextField *textField;
+
+- (NSString*)enteredText;
+
+@end
diff --git a/experimental/iOSSampleApp/SkAlertPrompt.m b/experimental/iOSSampleApp/SkAlertPrompt.m
new file mode 100644 (file)
index 0000000..5156b10
--- /dev/null
@@ -0,0 +1,47 @@
+//
+//  SkAlertPrompt.m
+//  iOSSampleApp
+//
+//  Created by Yang Su on 7/6/11.
+//  Copyright 2011 Google Inc. All rights reserved.
+//
+
+#import "SkAlertPrompt.h"
+
+@implementation SkAlertPrompt
+@synthesize textField;
+
+- (id)initWithTitle:(NSString *)title
+            message:(NSString *)message
+           delegate:(id)delegate
+  cancelButtonTitle:(NSString *)cancelButtonTitle
+     otherButtonTitles:(NSString *)okayButtonTitle,... {
+    if (self = [super initWithTitle:title
+                            message:message
+                           delegate:delegate
+                  cancelButtonTitle:cancelButtonTitle
+                  otherButtonTitles:okayButtonTitle, nil]) {
+        self.textField = [[UITextField alloc]
+                          initWithFrame:CGRectMake(12, 45, 260, 25)];
+        [self.textField setBackgroundColor:[UIColor whiteColor]];
+        textField.borderStyle = UITextBorderStyleLine;
+        [self addSubview:self.textField];
+    }
+    return self;
+}
+
+- (void)show {
+    [textField becomeFirstResponder];
+    [super show];
+}
+
+- (NSString *)enteredText {
+    return textField.text;
+}
+
+- (void)dealloc {
+    [textField release];
+    [super dealloc];
+}
+
+@end
index 75884fd..755ed45 100644 (file)
@@ -1,8 +1,7 @@
 #import <Foundation/Foundation.h>
 
-@interface SkIOSNotifier : NSObject {
-}
--(void) receiveSkEvent:(NSNotification*)notification;
-+(void) postTimedEvent:(NSTimeInterval)ti;
-+(void) timerFireMethod:(NSTimer*)theTimer;
+@interface SkIOSNotifier : NSObject
+- (void)receiveSkEvent:(NSNotification*)notification;
++ (void)postTimedSkEvent:(NSTimeInterval)ti;
++ (void)timerFireMethod:(NSTimer*)theTimer;
 @end
index 92c89d2..5c2bc55 100644 (file)
@@ -2,15 +2,16 @@
 #import "SkEvent.h"
 #define SkEventClass @"SkEvenClass"
 @implementation SkIOSNotifier
+//Overwritten from NSObject
 - (id)init {
     self = [super init];
     if (self) {
-        //Register as an observer for SkEventClass events and call 
+        //Register as an observer for SkEventClass events and call
         //receiveSkEvent: upon receiving the event
-        [[NSNotificationCenter defaultCenter] addObserver:self 
-                                                 selector:@selector(receiveSkEvent:) 
-                                                     name:SkEventClass object:nil];
-        
+        [[NSNotificationCenter defaultCenter] addObserver:self
+                                                 selector:@selector(receiveSkEvent:)
+                                                     name:SkEventClass
+                                                   object:nil];
     }
     return self;
 }
     return YES;
 }
 
--(void) receiveSkEvent:(NSNotification *)notification {
+//SkEvent Handers
+- (void)receiveSkEvent:(NSNotification *)notification {
     if(SkEvent::ProcessEvent())
         SkEvent::SignalNonEmptyQueue();
 }
 
-+(void) postTimedEvent:(NSTimeInterval)ti {
-    [NSTimer scheduledTimerWithTimeInterval:ti target:self 
++ (void)postTimedSkEvent:(NSTimeInterval)timeInterval {
+    [NSTimer scheduledTimerWithTimeInterval:timeInterval target:self
                                    selector:@selector(timerFireMethod:)
                                    userInfo:nil repeats:NO];
 }
 
-+(void) timerFireMethod:(NSTimer*)theTimer {
++ (void)timerFireMethod:(NSTimer*)theTimer {
        SkEvent::ServiceQueueTimer();
 }
+
 @end
 ////////////////////////////////////////////////////////////////////////////////
 void SkEvent::SignalNonEmptyQueue() {
     //post a SkEventClass event to the default notification center
-    [[NSNotificationCenter defaultCenter] postNotificationName:SkEventClass 
+    [[NSNotificationCenter defaultCenter] postNotificationName:SkEventClass
                                                         object:nil];
 }
 
@@ -50,6 +53,6 @@ void SkEvent::SignalQueueTimer(SkMSec delay) {
        if (delay) {
         //Convert to seconds
         NSTimeInterval ti = delay/(float)SK_MSec1;
-        [SkIOSNotifier postTimedEvent:ti];
-       }  
-}
\ No newline at end of file
+        [SkIOSNotifier postTimedSkEvent:ti];
+       }
+}
diff --git a/experimental/iOSSampleApp/SkTime_iOS.mm b/experimental/iOSSampleApp/SkTime_iOS.mm
deleted file mode 100644 (file)
index f58342b..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//#if defined(SK_BUILD_FOR_IOS)
-#include "SkTime.h"
-#include <sys/time.h>
-#include <Foundation/Foundation.h>
-void SkTime::GetDateTime(DateTime* dt)
-{
-    if (dt)
-    {
-        NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
-        NSCalendarUnit unitFlags =  NSYearCalendarUnit | NSMonthCalendarUnit | 
-                                    NSWeekCalendarUnit | NSDayCalendarUnit | 
-                                    NSHourCalendarUnit | NSMinuteCalendarUnit | 
-                                    NSSecondCalendarUnit;
-        
-        NSDate *date = [NSDate date];
-        NSDateComponents *dateComponents = [calendar components:unitFlags 
-                                                       fromDate:date];
-        dt->fYear       = SkToU16([dateComponents year]);
-        dt->fMonth      = SkToU8([dateComponents month]);
-        dt->fDayOfWeek  = SkToU8([dateComponents weekday]);
-        dt->fDay        = SkToU8([dateComponents day]);
-        dt->fHour       = SkToU8([dateComponents hour]);
-        dt->fMinute     = SkToU8([dateComponents minute]);
-        dt->fSecond     = SkToU8([dateComponents second]);
-    }
-}
-
-SkMSec SkTime::GetMSecs()
-{
-    struct timeval tv;
-    gettimeofday(&tv, NULL);
-    return (SkMSec) (tv.tv_sec * 1000 + tv.tv_usec / 1000 ); // microseconds to milliseconds
-}
-//#endif
\ No newline at end of file
index ebf7514..eba1b6e 100644 (file)
@@ -1,36 +1,32 @@
 #import <UIKit/UIKit.h>
 #import "SkUIRootViewController.h"
 #import "SkUIView_shell.h"
-#import "SampleApp.h"
-#import "SkData.h"
+
+class SampleWindow;
+class SkData;
 @interface SkUIDetailViewController : UIViewController {
+@private
     UINavigationBar* fNavigationBar;
     UIBarButtonItem* fPrintButton;
-    @private
     SkData* fData;
     SkUIView_shell* fSkUIView;
     SampleWindow* fWind;
-    CGPoint fInitialOffset, fInitialCenter;
-    CGFloat fInitialScale, fInitialRotation;
-    
 }
 @property (nonatomic, retain) IBOutlet UINavigationBar *fNavigationBar;
 @property (nonatomic, retain) IBOutlet UIBarButtonItem* fPrintButton;
 
-- (IBAction)printContent:(id)sender;
-
+//Instance methods
 - (void)redraw;
 - (void)populateRoot:(SkUIRootViewController*)root;
 - (void)goToItem:(NSUInteger)index;
 
+//UI actions
+- (IBAction)printContent:(id)sender;
+- (IBAction)usePipe:(id)sender;
+- (IBAction)enterServerIP:(id)sender;
+
+//SplitView popover management
 - (void)showRootPopoverButtonItem:(UIBarButtonItem *)barButtonItem;
 - (void)invalidateRootPopoverButtonItem:(UIBarButtonItem *)barButtonItem;
 
-- (void)initGestureRecognizers;
-- (void)handleDoubleTapGesture:(UIGestureRecognizer *)sender;
-- (void)handlePanGesture:(UIPanGestureRecognizer *)sender;
-- (void)handlePinchGesture:(UIPinchGestureRecognizer *)sender;
-- (void)handleSwipeGesture:(UISwipeGestureRecognizer *)sender;
-- (void)handleRotationGesture:(UIRotationGestureRecognizer *)sender;
-
 @end
index fdaa215..f19ce76 100644 (file)
@@ -1,29 +1,36 @@
+#import "SkAlertPrompt.h"
 #import "SkUIDetailViewController.h"
-#import "SkApplication.h"
-#import "SkWindow.h"
-#import "SkCGUtils.h"
+#include "SampleApp.h"
+#include "SkApplication.h"
+#include "SkCGUtils.h"
+#include "SkData.h"
+#include "SkWindow.h"
 
 @implementation SkUIDetailViewController
 @synthesize fNavigationBar, fPrintButton;
 
+//Overwritten from UIViewController
 - (void)viewDidLoad {
     [super viewDidLoad];
-    
+
     fSkUIView = (SkUIView_shell*)self.view;
     fSkUIView.fTitle = fNavigationBar.topItem;
-    
+
     application_init();
-    fWind = (SampleWindow*)create_sk_window(self.view);
+    fWind = (SampleWindow*)create_sk_window(self.view, NULL, NULL);
     CGSize s = self.view.bounds.size;
     fWind->resize(s.width, s.height);
     [fSkUIView setSkWindow:(SkOSWindow*)fWind];
-    
-    [self initGestureRecognizers];
-    [NSTimer scheduledTimerWithTimeInterval:0.001 target:self 
-                                   selector:@selector(redraw) userInfo:nil 
+
+    [NSTimer scheduledTimerWithTimeInterval:0.001 target:self
+                                   selector:@selector(redraw) userInfo:nil
                                     repeats:YES];
 }
 
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+    return YES; // Overriden to allow auto rotation for any direction
+}
+
 - (void)dealloc {
     [fNavigationBar release];
     [fPrintButton release];
@@ -32,6 +39,7 @@
     [super dealloc];
 }
 
+//Instance Methods
 - (void)redraw {
     [self.view setNeedsDisplay];
 }
 }
 
 - (void)goToItem:(NSUInteger)index {
-    fWind->goToSample(index); 
+    fWind->goToSample(index);
+}
+
+//UI actions
+- (IBAction)usePipe:(id)sender {
+    //fWind->togglePipe();
 }
 
 - (IBAction)printContent:(id)sender {
     UIPrintInfo *printInfo = [UIPrintInfo printInfo];
     printInfo.jobName = @"Skia iOS SampleApp";
     printInfo.duplex = UIPrintInfoDuplexLongEdge;
-        
     printInfo.outputType = UIPrintInfoOutputGeneral;
     fWind->saveToPdf();
     [self.view drawRect:self.view.bounds];
     fData = fWind->getPDFData();
     NSData* data = [NSData dataWithBytesNoCopy:(void*)fData->data() length:fData->size()];
-    controller.showsPageRange = YES;
     controller.printInfo = printInfo;
-    controller.printingItem = data; 
+    controller.printingItem = data;
     //Add ref because data pointer retains a pointer to data
     fData->ref();
-    
+
     void (^SkCompletionHandler)(UIPrintInteractionController *, BOOL, NSError *) =
     ^(UIPrintInteractionController *pic, BOOL completed, NSError *error) {
         fData->unref();
@@ -70,7 +81,7 @@
             NSLog(@"FAILED! due to error in domain %@ with error code %u",
                   error.domain, error.code);
     };
-    
+
     if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
         [controller presentFromBarButtonItem:fPrintButton animated:YES
                         completionHandler:SkCompletionHandler];
     }
 }
 
-#pragma mark -
-#pragma mark Rotation support
-
-- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
-    return YES; // Overriden to allow auto rotation for any direction
+- (IBAction)enterServerIP:(id)sender {
+    SkAlertPrompt *prompt = [[SkAlertPrompt alloc] initWithTitle:@"Enter Server IP:"
+                                                         message:@"\n"
+                                                        delegate:self
+                                               cancelButtonTitle:@"Cancel"
+                                               otherButtonTitles:@"Enter", nil];
+    // show the dialog box
+    [prompt show];
+    [prompt release];
 }
 
-#pragma mark -
-#pragma mark Managing the popover
-
+// manage popup
+- (void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex
+{
+    if (buttonIndex != [alertView cancelButtonIndex])
+    {
+        NSString *entered = [(SkAlertPrompt*)alertView enteredText];
+        //fWind->setServerIP([entered UTF8String]);
+    }
+}
+//Popover Management
 - (void)showRootPopoverButtonItem:(UIBarButtonItem *)barButtonItem {
     // Add the popover button to the left navigation item.
     [fNavigationBar.topItem setLeftBarButtonItem:barButtonItem animated:NO];
     // Remove the popover button.
     [fNavigationBar.topItem setLeftBarButtonItem:nil animated:NO];
 }
-
-// Gestures
-- (void)initGestureRecognizers {
-    UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc]
-                                         initWithTarget:self 
-                                         action:@selector(handleDoubleTapGesture:)];
-    doubleTap.numberOfTapsRequired = 2;
-    [self.view addGestureRecognizer:doubleTap];
-    [doubleTap release];
-    
-    UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc]
-                                   initWithTarget:self 
-                                   action:@selector(handlePanGesture:)];
-    [self.view addGestureRecognizer:pan];
-    [pan release];
-    
-    UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc]
-                                       initWithTarget:self 
-                                       action:@selector(handlePinchGesture:)];
-    [self.view addGestureRecognizer:pinch];
-    [pinch release];
-    
-    UISwipeGestureRecognizer *lswipe = [[UISwipeGestureRecognizer alloc]
-                                       initWithTarget:self 
-                                       action:@selector(handleSwipeGesture:)];
-    lswipe.direction = UISwipeGestureRecognizerDirectionLeft;
-    [self.view addGestureRecognizer:lswipe];
-    [lswipe release];
-    
-    UISwipeGestureRecognizer *rswipe = [[UISwipeGestureRecognizer alloc]
-                                       initWithTarget:self 
-                                       action:@selector(handleSwipeGesture:)];
-    //Swipe direction default to right
-    [self.view addGestureRecognizer:rswipe];
-    [rswipe release];
-    
-    UIRotationGestureRecognizer *rotation = [[UIRotationGestureRecognizer alloc]
-                                       initWithTarget:self 
-                                       action:@selector(handleRotationGesture:)];
-    [self.view addGestureRecognizer:rotation];
-    [rotation release];
-}
-
-- (void)handleDoubleTapGesture:(UIGestureRecognizer *)sender {
-    [fSkUIView resetTransformations];
-}
-
-- (void)handlePanGesture:(UIPanGestureRecognizer *)sender {
-    CGPoint translate = [sender translationInView:self.view];
-    switch (sender.state) {
-        case UIGestureRecognizerStateBegan:
-            fInitialOffset = fSkUIView.fOffset;
-            fInitialCenter = fSkUIView.fCenter;
-            break;
-            
-        case UIGestureRecognizerStateChanged:
-            fSkUIView.fOffset = CGPointMake(fInitialOffset.x + translate.x, 
-                                            fInitialOffset.y + translate.y);
-            fSkUIView.fCenter = CGPointMake(fInitialCenter.x - translate.x, 
-                                            fInitialCenter.y - translate.y);
-            break;
-        case UIGestureRecognizerStateEnded:
-        case UIGestureRecognizerStateCancelled:
-        case UIGestureRecognizerStateFailed:
-            break;
-        default:
-            break;
-    }
-}
-
-- (void)handlePinchGesture:(UIPinchGestureRecognizer *)sender {
-    switch (sender.state) {
-        case UIGestureRecognizerStateBegan:
-            fInitialScale = fSkUIView.fScale;
-            break;
-        case UIGestureRecognizerStateChanged:
-            fSkUIView.fScale = fInitialScale * [sender scale];
-            break;
-        case UIGestureRecognizerStateEnded:
-        case UIGestureRecognizerStateCancelled:
-        case UIGestureRecognizerStateFailed:
-            break;
-        default:
-            break;
-    }
-}
-
-- (void)handleSwipeGesture:(UISwipeGestureRecognizer *)sender {
-    if (sender.direction == UISwipeGestureRecognizerDirectionLeft) {
-        fWind->previousSample(); 
-    }
-    else {
-        fWind->nextSample(); 
-    }
-}
-
-- (void)handleRotationGesture:(UIRotationGestureRecognizer *)sender {
-    switch (sender.state) {
-        case UIGestureRecognizerStateBegan:
-            fInitialRotation = fSkUIView.fRotation;
-            break;
-        case UIGestureRecognizerStateChanged:
-            fSkUIView.fRotation = fInitialRotation + [sender rotation] * 50.0;
-            break;
-        case UIGestureRecognizerStateEnded:
-        case UIGestureRecognizerStateCancelled:
-        case UIGestureRecognizerStateFailed:
-            break;
-        default:
-            break;
-    }
-}
-
 @end
index 58cb159..4ea5d16 100644 (file)
@@ -1,13 +1,15 @@
 #import <UIKit/UIKit.h>
-@interface SkUIRootViewController : UITableViewController <UITableViewDataSource> {                     
-    UIPopoverController *popoverController;    
+
+@interface SkUIRootViewController : UITableViewController <UITableViewDataSource> {
+@private
+    UIPopoverController *popoverController;
     UIBarButtonItem *popoverButtonItem;
-    @private
     NSMutableArray* fSamples;
 }
 @property (nonatomic, retain) UIPopoverController *popoverController;
 @property (nonatomic, retain) UIBarButtonItem *popoverButtonItem;
 
-- (void)initList;
+- (void)initSamples;
 - (void)addItem:(NSString*)anItem;
-@end
\ No newline at end of file
+
+@end
index 6ae759e..b0b22e6 100644 (file)
@@ -1,75 +1,64 @@
 #import "SkUIRootViewController.h"
 #import "SkUISplitViewController.h"
 @implementation SkUIRootViewController
-
 @synthesize popoverController, popoverButtonItem;
 
-
-- (void)addItem:(NSString*)anItem {
-    [fSamples addObject:anItem];
+//Overwritten from UIViewController
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    self.contentSizeForViewInPopover = CGSizeMake(200, self.view.bounds.size.height);
 }
 
-- (void)initList {
-    fSamples = [[NSMutableArray alloc] init];
+- (void)viewDidUnload {
+    [super viewDidUnload];
+    self.popoverButtonItem = nil;
 }
 
-#pragma mark -
-#pragma mark Rotation support
-
 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
     return YES;
 }
 
-#pragma mark -
-#pragma mark View lifecycle
-
-
-- (void)viewDidLoad {
-    [super viewDidLoad];
-    self.contentSizeForViewInPopover = CGSizeMake(200, self.view.bounds.size.height);
+- (void)dealloc {
+    [popoverController release];
+    [popoverButtonItem release];
+    [fSamples release];
+    [super dealloc];
 }
 
-#pragma mark -
-#pragma mark Table view data source
 
+//Table View Delegate Methods
 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
     // Return the number of sections.
     return 1;
 }
 
-
 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
     // Return the number of rows in the section.
     return [fSamples count];
 }
 
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
-    
+
     static NSString *CellIdentifier = @"Cell";
-    
+
     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
     if (cell == nil) {
-        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault 
+        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
                                        reuseIdentifier:CellIdentifier] autorelease];
     }
-    
+
     cell.textLabel.text = [fSamples objectAtIndex:indexPath.row];
     return cell;
 }
 
-#pragma mark -
-#pragma mark Memory management
-
-- (void)viewDidUnload {
-    [super viewDidUnload];
-    self.popoverButtonItem = nil;
+//Instance methods
+- (void)addItem:(NSString*)anItem {
+    [fSamples addObject:anItem];
 }
 
-- (void)dealloc {
-    [popoverController release];
-    [popoverButtonItem release];
-    [fSamples release];
-    [super dealloc];
+- (void)initSamples {
+    fSamples = [[NSMutableArray alloc] init];
 }
+
 @end
 
index 7ba85c5..d23143f 100644 (file)
@@ -1,22 +1,18 @@
 #import <UIKit/UIKit.h>
-#import "SkView.h"
-#import "SkOSWindow_iOS.h"
-class SkUIContainerView;
+#include "SkEvent.h"
 
+class SkOSWindow;
+class SkIRect;
 @interface SkUIView_shell : UIView {
+@private
     UINavigationItem* fTitle;
     SkOSWindow* fSkWind;
-@private
-    CGPoint fOffset, fCenter;
-    CGFloat fScale, fRotation;
 }
+@property(nonatomic, retain) UINavigationItem* fTitle;
 
-@property(assign) CGPoint fOffset, fCenter; 
-@property(assign) CGFloat fScale, fRotation;
-@property(retain) UINavigationItem* fTitle;
-- (void)resetTransformations;
 - (void)setSkWindow:(SkOSWindow*)anSkWindow;
 - (void)setSkTitle:(const char*)title;
 - (void)postInvalWithRect:(const SkIRect*)rectOrNil;
 - (BOOL)onHandleEvent:(const SkEvent&)event;
+
 @end
index cff931a..7fe35d7 100644 (file)
@@ -1,16 +1,14 @@
-#import "SkCGUtils.h"
+#include "SkCanvas.h"
+#include "SkCGUtils.h"
+#include "SkEvent.h"
+#include "SkOSWindow_iOS.h"
+#include "SkView.h"
 #import "SkUIView_shell.h"
-#import "SkEvent.h"
-#import "SkCanvas.h"
 
 @implementation SkUIView_shell
-@synthesize fOffset, fCenter, fScale, fRotation, fTitle;
-
-- (void)dealloc {
-    [fTitle release];
-    [super dealloc];
-}
+@synthesize fTitle;
 
+//Overwritten from UIView
 - (void)layoutSubviews {
     [super layoutSubviews];
     CGSize s = self.bounds.size;
 }
 
 - (void)drawRect:(CGRect)rect {
-    //TODO -- check if our UIView is backed by a CALayer, and possibly use 
+    //TODO -- check if our UIView is backed by a CALayer, and possibly use
     //skia's gpu backend
     if (fSkWind != nil) {
         SkCanvas canvas;
-        SkMatrix matrix;
-        matrix.setTranslate(fOffset.x + fCenter.x, fOffset.y + fCenter.y);
-        matrix.preRotate(fRotation);
-        matrix.preScale(fScale, fScale);
-        matrix.preTranslate(-fCenter.x, -fCenter.y);
-        fSkWind->setMatrix(matrix);
-        SkIRect r = SkIRect::MakeWH(rect.size.width, rect.size.height);
-        fSkWind->update(&r, &canvas);
-        
+        SkIRect dirtyRect = SkIRect::MakeWH(rect.size.width, rect.size.height);
+        fSkWind->update(&dirtyRect, &canvas);
+
         CGImageRef cgimage = SkCreateCGImageRef(fSkWind->getBitmap());
         [[UIImage imageWithCGImage:cgimage] drawAtPoint:CGPointMake(0, 44)];
         CGImageRelease(cgimage);
     }
 }
 
-- (void)resetTransformations {
-    fOffset = CGPointMake(0, 0);
-    fCenter = CGPointMake(fSkWind->width() / 2.0, fSkWind->height() / 2.0);
-    fRotation = 0;
-    fScale = 1.0;
+- (void)dealloc {
+    [fTitle release];
+    [super dealloc];
 }
 
+//Instance methods
 - (void)setSkWindow:(SkOSWindow*)anSkWindow {
     fSkWind = anSkWindow;
-    [self resetTransformations];
 }
 
-///////////////////////////////////////////////////////////////////////////////
-
+//Handlers for SkOSWindow
 - (void)setSkTitle:(const char *)title {
-    if (fTitle) {
-        fTitle.title = [NSString stringWithUTF8String:title];
-    }
+    fTitle.title = [NSString stringWithUTF8String:title];
 }
 
-- (BOOL)onHandleEvent:(const SkEvent&)evt {
+- (BOOL)onHandleEvent:(const SkEvent&)event {
     return false;
 }
 
-- (void)postInvalWithRect:(const SkIRect*)r {
-    if (r) {
-        [self setNeedsDisplayInRect:CGRectMake(r->fLeft, r->fTop,
-                                               r->width(), r->height())];
+- (void)postInvalWithRect:(const SkIRect*)rect {
+    if (rect) {
+        [self setNeedsDisplayInRect:CGRectMake(rect->fLeft, rect->fTop,
+                                               rect->width(), rect->height())];
     } else {
         [self setNeedsDisplay];
     }
 }
 
+//Gesture Handlers
+- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
+    for (UITouch *touch in touches) {
+        CGPoint loc = [touch locationInView:self];
+        fSkWind->handleClick(loc.x, loc.y, SkView::Click::kDown_State, touch);
+    }
+}
+
+- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
+    for (UITouch *touch in touches) {
+        CGPoint loc = [touch locationInView:self];
+        fSkWind->handleClick(loc.x, loc.y, SkView::Click::kMoved_State, touch);
+    }
+}
+
+- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
+    for (UITouch *touch in touches) {
+        CGPoint loc = [touch locationInView:self];
+        fSkWind->handleClick(loc.x, loc.y, SkView::Click::kUp_State, touch);
+    }
+}
+
+- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {
+    for (UITouch *touch in touches) {
+        CGPoint loc = [touch locationInView:self];
+        fSkWind->handleClick(loc.x, loc.y, SkView::Click::kUp_State, touch);
+    }
+}
 @end
index f209e4a..80de334 100644 (file)
@@ -5,9 +5,10 @@
 //  Created by Yang Su on 6/30/11.
 //  Copyright 2011 Google Inc. All rights reserved.
 //
+GCC_PREFIX_HEADER=iOSSampleApp_Prefix.pch
 
-ARCHS=armv6
-IPHONEOS_DEPLOYMENT_TARGET=4.0
+ARCHS=armv6 armv7
+IPHONEOS_DEPLOYMENT_TARGET=4.2
 SDKROOT=iphoneos
 TARGETED_DEVICE_FAMILY=1,2
 
index 671f978..3bfc1e5 100755 (executable)
@@ -9,6 +9,9 @@
 /* Begin PBXBuildFile section */
                1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
                1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
+               26075BB013C4B45C0034339C /* SampleNetPipeReader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26E0E53C13B5167C00866555 /* SampleNetPipeReader.cpp */; };
+               26075E6013C506560034339C /* SkAlertPrompt.m in Sources */ = {isa = PBXBuildFile; fileRef = 26075E5F13C506560034339C /* SkAlertPrompt.m */; };
+               26075F5913C513D30034339C /* SampleDrawingBoard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26075F5813C513D30034339C /* SampleDrawingBoard.cpp */; };
                260E00D513B11F5B0064D447 /* bitmapfilters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001513B11F5B0064D447 /* bitmapfilters.cpp */; };
                260E00D613B11F5B0064D447 /* blurs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001613B11F5B0064D447 /* blurs.cpp */; };
                260E00D713B11F5B0064D447 /* complexclip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001713B11F5B0064D447 /* complexclip.cpp */; };
                260E02A813B1225D0064D447 /* SkBitmapProcState_matrixProcs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E021613B1225D0064D447 /* SkBitmapProcState_matrixProcs.cpp */; };
                260E02A913B1225D0064D447 /* SkBitmapSampler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E021813B1225D0064D447 /* SkBitmapSampler.cpp */; };
                260E02AA13B1225D0064D447 /* SkBitmap_scroll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E021D13B1225D0064D447 /* SkBitmap_scroll.cpp */; };
-               260E02AB13B1225D0064D447 /* SkBlitRow_D16.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E021F13B1225D0064D447 /* SkBlitRow_D16.cpp */; };
-               260E02AC13B1225D0064D447 /* SkBlitRow_D32.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022013B1225D0064D447 /* SkBlitRow_D32.cpp */; };
                260E02AD13B1225D0064D447 /* SkBlitRow_D4444.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022113B1225D0064D447 /* SkBlitRow_D4444.cpp */; };
                260E02AE13B1225D0064D447 /* SkBlitter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022213B1225D0064D447 /* SkBlitter.cpp */; };
-               260E02AF13B1225D0064D447 /* SkBlitter_4444.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022313B1225D0064D447 /* SkBlitter_4444.cpp */; };
-               260E02B013B1225D0064D447 /* SkBlitter_A1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022413B1225D0064D447 /* SkBlitter_A1.cpp */; };
-               260E02B113B1225D0064D447 /* SkBlitter_A8.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022513B1225D0064D447 /* SkBlitter_A8.cpp */; };
-               260E02B213B1225D0064D447 /* SkBlitter_ARGB32.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022613B1225D0064D447 /* SkBlitter_ARGB32.cpp */; };
-               260E02B313B1225D0064D447 /* SkBlitter_RGB16.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022713B1225D0064D447 /* SkBlitter_RGB16.cpp */; };
-               260E02B413B1225D0064D447 /* SkBlitter_Sprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022813B1225D0064D447 /* SkBlitter_Sprite.cpp */; };
                260E02B513B1225D0064D447 /* SkBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022913B1225D0064D447 /* SkBuffer.cpp */; };
                260E02B613B1225D0064D447 /* SkCanvas.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022A13B1225D0064D447 /* SkCanvas.cpp */; };
                260E02B713B1225D0064D447 /* SkChunkAlloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022B13B1225D0064D447 /* SkChunkAlloc.cpp */; };
                260E02E513B1225D0064D447 /* SkPictureRecord.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026613B1225D0064D447 /* SkPictureRecord.cpp */; };
                260E02E613B1225D0064D447 /* SkPixelRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026813B1225D0064D447 /* SkPixelRef.cpp */; };
                260E02E713B1225D0064D447 /* SkPoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026913B1225D0064D447 /* SkPoint.cpp */; };
-               260E02E813B1225D0064D447 /* SkProcSpriteBlitter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026A13B1225D0064D447 /* SkProcSpriteBlitter.cpp */; };
                260E02E913B1225D0064D447 /* SkPtrRecorder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026B13B1225D0064D447 /* SkPtrRecorder.cpp */; };
                260E02EA13B1225D0064D447 /* SkQuadClipper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026C13B1225D0064D447 /* SkQuadClipper.cpp */; };
                260E02EB13B1225D0064D447 /* SkRasterizer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026E13B1225D0064D447 /* SkRasterizer.cpp */; };
                260E02F613B1225D0064D447 /* SkScan_Path.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E027B13B1225D0064D447 /* SkScan_Path.cpp */; };
                260E02F713B1225D0064D447 /* SkShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E027C13B1225D0064D447 /* SkShader.cpp */; };
                260E02F813B1225D0064D447 /* SkShape.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E027D13B1225D0064D447 /* SkShape.cpp */; };
-               260E02F913B1225D0064D447 /* SkSpriteBlitter_ARGB32.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E028113B1225D0064D447 /* SkSpriteBlitter_ARGB32.cpp */; };
-               260E02FA13B1225D0064D447 /* SkSpriteBlitter_RGB16.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E028213B1225D0064D447 /* SkSpriteBlitter_RGB16.cpp */; };
                260E02FB13B1225D0064D447 /* SkStream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E028313B1225D0064D447 /* SkStream.cpp */; };
                260E02FC13B1225D0064D447 /* SkString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E028413B1225D0064D447 /* SkString.cpp */; };
                260E02FD13B1225D0064D447 /* SkStroke.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E028513B1225D0064D447 /* SkStroke.cpp */; };
                260E030313B1225D0064D447 /* SkUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E029013B1225D0064D447 /* SkUtils.cpp */; };
                260E030413B1225D0064D447 /* SkWriter32.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E029113B1225D0064D447 /* SkWriter32.cpp */; };
                260E030513B1225D0064D447 /* SkXfermode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E029213B1225D0064D447 /* SkXfermode.cpp */; };
-               260E030613B1225D0064D447 /* opts_check_SSE2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E029413B1225D0064D447 /* opts_check_SSE2.cpp */; };
                260E030713B1225D0064D447 /* SkDebug_stdio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E029613B1225D0064D447 /* SkDebug_stdio.cpp */; };
                260E030B13B1225D0064D447 /* SkGlobals_global.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E029A13B1225D0064D447 /* SkGlobals_global.cpp */; };
                260E030C13B1225D0064D447 /* SkMemory_malloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E029B13B1225D0064D447 /* SkMemory_malloc.cpp */; };
                260E046813B1232F0064D447 /* SkFlipPixelRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E044D13B1232F0064D447 /* SkFlipPixelRef.cpp */; };
                260E046913B1232F0064D447 /* SkImageDecoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E044E13B1232F0064D447 /* SkImageDecoder.cpp */; };
                260E047113B1232F0064D447 /* SkImageEncoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E045613B1232F0064D447 /* SkImageEncoder.cpp */; };
-               260E04B813B123730064D447 /* SkBitmapProcState_opts_SSE2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E04B513B123730064D447 /* SkBitmapProcState_opts_SSE2.cpp */; };
-               260E04B913B123730064D447 /* SkBlitRow_opts_SSE2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E04B613B123730064D447 /* SkBlitRow_opts_SSE2.cpp */; };
-               260E04BA13B123730064D447 /* SkUtils_opts_SSE2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E04B713B123730064D447 /* SkUtils_opts_SSE2.cpp */; };
                260E050113B123840064D447 /* SkSVGCircle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E04CE13B123840064D447 /* SkSVGCircle.cpp */; };
                260E050213B123840064D447 /* SkSVGClipPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E04D013B123840064D447 /* SkSVGClipPath.cpp */; };
                260E050313B123840064D447 /* SkSVGDefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E04D213B123840064D447 /* SkSVGDefs.cpp */; };
                260EF2B013AFDBD30064D447 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
                260EFB7113B0DBFF0064D447 /* SkUIRootViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 260EFB7013B0DBFF0064D447 /* SkUIRootViewController.mm */; };
                260EFBA513B0DF600064D447 /* SkUIDetailViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 260EFBA413B0DF600064D447 /* SkUIDetailViewController.mm */; };
+               2662AB7013BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 2662AB6F13BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig */; };
+               2662AB7613BD0C0D00CDE7E9 /* SkiOSSampleApp-Release.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 2662AB7513BD0C0D00CDE7E9 /* SkiOSSampleApp-Release.xcconfig */; };
+               2662AB7813BD0C1E00CDE7E9 /* SkiOSSampleApp-Base.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 2662AB7713BD0C1E00CDE7E9 /* SkiOSSampleApp-Base.xcconfig */; };
                26677D6613B4C548009319B8 /* SkData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26677D6513B4C548009319B8 /* SkData.cpp */; };
-               26E0E33013B4DB3800866555 /* SkTime_iOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 260EEC0013AFBEFF0064D447 /* SkTime_iOS.mm */; };
                26E0E40A13B4E67800866555 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 260EE9D113AFA7850064D447 /* OpenGLES.framework */; };
                26E0E46413B4F28A00866555 /* SkOSFile_iOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 260EE8BB13AFA7790064D447 /* SkOSFile_iOS.mm */; };
+               26E0E55413B5186100866555 /* SkNetIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26E0E55213B5186100866555 /* SkNetIO.cpp */; };
+               26F548C213B918EC007CC564 /* SkBlitter_4444.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022313B1225D0064D447 /* SkBlitter_4444.cpp */; };
+               26F548C313B918ED007CC564 /* SkBlitter_A1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022413B1225D0064D447 /* SkBlitter_A1.cpp */; };
+               26F548C413B918ED007CC564 /* SkBlitter_A8.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022513B1225D0064D447 /* SkBlitter_A8.cpp */; };
+               26F548C513B918EE007CC564 /* SkBlitter_ARGB32.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022613B1225D0064D447 /* SkBlitter_ARGB32.cpp */; };
+               26F548C613B918EF007CC564 /* SkBlitter_RGB16.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022713B1225D0064D447 /* SkBlitter_RGB16.cpp */; };
+               26F548C713B918EF007CC564 /* SkBlitter_Sprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022813B1225D0064D447 /* SkBlitter_Sprite.cpp */; };
+               26F548C813B918F1007CC564 /* SkProcSpriteBlitter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E026A13B1225D0064D447 /* SkProcSpriteBlitter.cpp */; };
+               26F548C913B918F2007CC564 /* SkSpriteBlitter_ARGB32.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E028113B1225D0064D447 /* SkSpriteBlitter_ARGB32.cpp */; };
+               26F548CA13B918F2007CC564 /* SkSpriteBlitter_RGB16.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E028213B1225D0064D447 /* SkSpriteBlitter_RGB16.cpp */; };
+               26F548DA13B9192E007CC564 /* SkBlitRow_D32.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E022013B1225D0064D447 /* SkBlitRow_D32.cpp */; };
+               26F548DB13B9192E007CC564 /* SkBlitRow_D16.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E021F13B1225D0064D447 /* SkBlitRow_D16.cpp */; };
+               26F548E913B91980007CC564 /* SkBitmapProcState_opts_arm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F548E013B91980007CC564 /* SkBitmapProcState_opts_arm.cpp */; };
+               26F548EC13B91980007CC564 /* SkBlitRow_opts_none.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F548E413B91980007CC564 /* SkBlitRow_opts_none.cpp */; };
+               26F548ED13B91980007CC564 /* SkUtils_opts_none.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F548E613B91980007CC564 /* SkUtils_opts_none.cpp */; };
                2860E328111B887F00E27156 /* AppDelegate_iPhone.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2860E326111B887F00E27156 /* AppDelegate_iPhone.mm */; };
                2860E329111B887F00E27156 /* MainWindow_iPhone.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2860E327111B887F00E27156 /* MainWindow_iPhone.xib */; };
                2860E32E111B888700E27156 /* AppDelegate_iPad.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2860E32C111B888700E27156 /* AppDelegate_iPad.mm */; };
                1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
                1D6058910D05DD3D006BFB54 /* iOSSampleApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iOSSampleApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
                1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+               26075E5E13C506560034339C /* SkAlertPrompt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkAlertPrompt.h; sourceTree = "<group>"; };
+               26075E5F13C506560034339C /* SkAlertPrompt.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SkAlertPrompt.m; sourceTree = "<group>"; };
+               26075F5813C513D30034339C /* SampleDrawingBoard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SampleDrawingBoard.cpp; sourceTree = "<group>"; };
                260E001513B11F5B0064D447 /* bitmapfilters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bitmapfilters.cpp; sourceTree = "<group>"; };
                260E001613B11F5B0064D447 /* blurs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = blurs.cpp; sourceTree = "<group>"; };
                260E001713B11F5B0064D447 /* complexclip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = complexclip.cpp; sourceTree = "<group>"; };
                260E007313B11F5B0064D447 /* SampleXfermodesBlur.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SampleXfermodesBlur.cpp; sourceTree = "<group>"; };
                260E007513B11F5B0064D447 /* SkGPipeRead.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkGPipeRead.cpp; sourceTree = "<group>"; };
                260E007613B11F5B0064D447 /* SkGPipeWrite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkGPipeWrite.cpp; sourceTree = "<group>"; };
-               260E01B213B1225D0064D447 /* Sk64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Sk64.h; sourceTree = "<group>"; };
-               260E01B313B1225D0064D447 /* SkAdvancedTypefaceMetrics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkAdvancedTypefaceMetrics.h; sourceTree = "<group>"; };
-               260E01B413B1225D0064D447 /* SkAutoKern.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkAutoKern.h; sourceTree = "<group>"; };
-               260E01B513B1225D0064D447 /* SkBitmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkBitmap.h; sourceTree = "<group>"; };
-               260E01B613B1225D0064D447 /* SkBlitRow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkBlitRow.h; sourceTree = "<group>"; };
-               260E01B713B1225D0064D447 /* SkBlitter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkBlitter.h; sourceTree = "<group>"; };
-               260E01B813B1225D0064D447 /* SkBounder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkBounder.h; sourceTree = "<group>"; };
-               260E01B913B1225D0064D447 /* SkBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkBuffer.h; sourceTree = "<group>"; };
-               260E01BA13B1225D0064D447 /* SkCanvas.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkCanvas.h; sourceTree = "<group>"; };
-               260E01BB13B1225D0064D447 /* SkChunkAlloc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkChunkAlloc.h; sourceTree = "<group>"; };
-               260E01BC13B1225D0064D447 /* SkClampRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkClampRange.h; sourceTree = "<group>"; };
-               260E01BD13B1225D0064D447 /* SkClipStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkClipStack.h; sourceTree = "<group>"; };
-               260E01BE13B1225D0064D447 /* SkColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkColor.h; sourceTree = "<group>"; };
-               260E01BF13B1225D0064D447 /* SkColorFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkColorFilter.h; sourceTree = "<group>"; };
-               260E01C013B1225D0064D447 /* SkColorPriv.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkColorPriv.h; sourceTree = "<group>"; };
-               260E01C113B1225D0064D447 /* SkColorShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkColorShader.h; sourceTree = "<group>"; };
-               260E01C213B1225D0064D447 /* SkComposeShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkComposeShader.h; sourceTree = "<group>"; };
-               260E01C313B1225D0064D447 /* SkDeque.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDeque.h; sourceTree = "<group>"; };
-               260E01C413B1225D0064D447 /* SkDescriptor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDescriptor.h; sourceTree = "<group>"; };
-               260E01C513B1225D0064D447 /* SkDevice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDevice.h; sourceTree = "<group>"; };
-               260E01C613B1225D0064D447 /* SkDither.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDither.h; sourceTree = "<group>"; };
-               260E01C713B1225D0064D447 /* SkDraw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDraw.h; sourceTree = "<group>"; };
-               260E01C813B1225D0064D447 /* SkDrawFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDrawFilter.h; sourceTree = "<group>"; };
-               260E01C913B1225D0064D447 /* SkDrawLooper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDrawLooper.h; sourceTree = "<group>"; };
-               260E01CA13B1225D0064D447 /* SkEndian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkEndian.h; sourceTree = "<group>"; };
-               260E01CB13B1225D0064D447 /* SkFDot6.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFDot6.h; sourceTree = "<group>"; };
-               260E01CC13B1225D0064D447 /* SkFixed.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFixed.h; sourceTree = "<group>"; };
-               260E01CD13B1225D0064D447 /* SkFlate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFlate.h; sourceTree = "<group>"; };
-               260E01CE13B1225D0064D447 /* SkFlattenable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFlattenable.h; sourceTree = "<group>"; };
-               260E01CF13B1225D0064D447 /* SkFloatBits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFloatBits.h; sourceTree = "<group>"; };
-               260E01D013B1225D0064D447 /* SkFloatingPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFloatingPoint.h; sourceTree = "<group>"; };
-               260E01D113B1225D0064D447 /* SkFontHost.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFontHost.h; sourceTree = "<group>"; };
-               260E01D213B1225D0064D447 /* SkGeometry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkGeometry.h; sourceTree = "<group>"; };
-               260E01D313B1225D0064D447 /* SkGlobals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkGlobals.h; sourceTree = "<group>"; };
-               260E01D413B1225D0064D447 /* SkGraphics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkGraphics.h; sourceTree = "<group>"; };
-               260E01D513B1225D0064D447 /* SkMMapStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMMapStream.h; sourceTree = "<group>"; };
-               260E01D613B1225D0064D447 /* SkMallocPixelRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMallocPixelRef.h; sourceTree = "<group>"; };
-               260E01D713B1225D0064D447 /* SkMask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMask.h; sourceTree = "<group>"; };
-               260E01D813B1225D0064D447 /* SkMaskFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMaskFilter.h; sourceTree = "<group>"; };
-               260E01D913B1225D0064D447 /* SkMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMath.h; sourceTree = "<group>"; };
-               260E01DA13B1225D0064D447 /* SkMatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMatrix.h; sourceTree = "<group>"; };
-               260E01DB13B1225D0064D447 /* SkMetaData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMetaData.h; sourceTree = "<group>"; };
-               260E01DC13B1225D0064D447 /* SkOSFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkOSFile.h; sourceTree = "<group>"; };
-               260E01DD13B1225D0064D447 /* SkPackBits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPackBits.h; sourceTree = "<group>"; };
-               260E01DE13B1225D0064D447 /* SkPaint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPaint.h; sourceTree = "<group>"; };
-               260E01DF13B1225D0064D447 /* SkPath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPath.h; sourceTree = "<group>"; };
-               260E01E013B1225D0064D447 /* SkPathEffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPathEffect.h; sourceTree = "<group>"; };
-               260E01E113B1225D0064D447 /* SkPathMeasure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPathMeasure.h; sourceTree = "<group>"; };
-               260E01E213B1225D0064D447 /* SkPerspIter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPerspIter.h; sourceTree = "<group>"; };
-               260E01E313B1225D0064D447 /* SkPicture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPicture.h; sourceTree = "<group>"; };
-               260E01E413B1225D0064D447 /* SkPixelRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPixelRef.h; sourceTree = "<group>"; };
-               260E01E513B1225D0064D447 /* SkPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPoint.h; sourceTree = "<group>"; };
-               260E01E613B1225D0064D447 /* SkPtrRecorder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPtrRecorder.h; sourceTree = "<group>"; };
-               260E01E713B1225D0064D447 /* SkRandom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkRandom.h; sourceTree = "<group>"; };
-               260E01E813B1225D0064D447 /* SkRasterizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkRasterizer.h; sourceTree = "<group>"; };
-               260E01E913B1225D0064D447 /* SkReader32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkReader32.h; sourceTree = "<group>"; };
-               260E01EA13B1225D0064D447 /* SkRect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkRect.h; sourceTree = "<group>"; };
-               260E01EB13B1225D0064D447 /* SkRefCnt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkRefCnt.h; sourceTree = "<group>"; };
-               260E01EC13B1225D0064D447 /* SkRefDict.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkRefDict.h; sourceTree = "<group>"; };
-               260E01ED13B1225D0064D447 /* SkRegion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkRegion.h; sourceTree = "<group>"; };
-               260E01EE13B1225D0064D447 /* SkScalar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkScalar.h; sourceTree = "<group>"; };
-               260E01EF13B1225D0064D447 /* SkScalarCompare.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkScalarCompare.h; sourceTree = "<group>"; };
-               260E01F013B1225D0064D447 /* SkScalerContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkScalerContext.h; sourceTree = "<group>"; };
-               260E01F113B1225D0064D447 /* SkScan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkScan.h; sourceTree = "<group>"; };
-               260E01F213B1225D0064D447 /* SkShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkShader.h; sourceTree = "<group>"; };
-               260E01F313B1225D0064D447 /* SkStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkStream.h; sourceTree = "<group>"; };
-               260E01F413B1225D0064D447 /* SkString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkString.h; sourceTree = "<group>"; };
-               260E01F513B1225D0064D447 /* SkStroke.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkStroke.h; sourceTree = "<group>"; };
-               260E01F613B1225D0064D447 /* SkTDArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTDArray.h; sourceTree = "<group>"; };
-               260E01F713B1225D0064D447 /* SkTDStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTDStack.h; sourceTree = "<group>"; };
-               260E01F813B1225D0064D447 /* SkTDict.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTDict.h; sourceTree = "<group>"; };
-               260E01F913B1225D0064D447 /* SkTRegistry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTRegistry.h; sourceTree = "<group>"; };
-               260E01FA13B1225D0064D447 /* SkTScopedPtr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTScopedPtr.h; sourceTree = "<group>"; };
-               260E01FB13B1225D0064D447 /* SkTSearch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTSearch.h; sourceTree = "<group>"; };
-               260E01FC13B1225D0064D447 /* SkTemplates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTemplates.h; sourceTree = "<group>"; };
-               260E01FD13B1225D0064D447 /* SkThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkThread.h; sourceTree = "<group>"; };
-               260E01FE13B1225D0064D447 /* SkThread_platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkThread_platform.h; sourceTree = "<group>"; };
-               260E01FF13B1225D0064D447 /* SkTime.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTime.h; sourceTree = "<group>"; };
-               260E020013B1225D0064D447 /* SkTypeface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTypeface.h; sourceTree = "<group>"; };
-               260E020113B1225D0064D447 /* SkTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkTypes.h; sourceTree = "<group>"; };
-               260E020213B1225D0064D447 /* SkUnPreMultiply.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkUnPreMultiply.h; sourceTree = "<group>"; };
-               260E020313B1225D0064D447 /* SkUnitMapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkUnitMapper.h; sourceTree = "<group>"; };
-               260E020413B1225D0064D447 /* SkUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkUtils.h; sourceTree = "<group>"; };
-               260E020513B1225D0064D447 /* SkWriter32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkWriter32.h; sourceTree = "<group>"; };
-               260E020613B1225D0064D447 /* SkXfermode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkXfermode.h; sourceTree = "<group>"; };
+               260E01B213B1225D0064D447 /* Sk64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Sk64.h; path = core/Sk64.h; sourceTree = "<group>"; };
+               260E01B313B1225D0064D447 /* SkAdvancedTypefaceMetrics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkAdvancedTypefaceMetrics.h; path = core/SkAdvancedTypefaceMetrics.h; sourceTree = "<group>"; };
+               260E01B413B1225D0064D447 /* SkAutoKern.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkAutoKern.h; path = core/SkAutoKern.h; sourceTree = "<group>"; };
+               260E01B513B1225D0064D447 /* SkBitmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkBitmap.h; path = core/SkBitmap.h; sourceTree = "<group>"; };
+               260E01B613B1225D0064D447 /* SkBlitRow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkBlitRow.h; path = core/SkBlitRow.h; sourceTree = "<group>"; };
+               260E01B713B1225D0064D447 /* SkBlitter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkBlitter.h; path = core/SkBlitter.h; sourceTree = "<group>"; };
+               260E01B813B1225D0064D447 /* SkBounder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkBounder.h; path = core/SkBounder.h; sourceTree = "<group>"; };
+               260E01B913B1225D0064D447 /* SkBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkBuffer.h; path = core/SkBuffer.h; sourceTree = "<group>"; };
+               260E01BA13B1225D0064D447 /* SkCanvas.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkCanvas.h; path = core/SkCanvas.h; sourceTree = "<group>"; };
+               260E01BB13B1225D0064D447 /* SkChunkAlloc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkChunkAlloc.h; path = core/SkChunkAlloc.h; sourceTree = "<group>"; };
+               260E01BC13B1225D0064D447 /* SkClampRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkClampRange.h; path = core/SkClampRange.h; sourceTree = "<group>"; };
+               260E01BD13B1225D0064D447 /* SkClipStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkClipStack.h; path = core/SkClipStack.h; sourceTree = "<group>"; };
+               260E01BE13B1225D0064D447 /* SkColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkColor.h; path = core/SkColor.h; sourceTree = "<group>"; };
+               260E01BF13B1225D0064D447 /* SkColorFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkColorFilter.h; path = core/SkColorFilter.h; sourceTree = "<group>"; };
+               260E01C013B1225D0064D447 /* SkColorPriv.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkColorPriv.h; path = core/SkColorPriv.h; sourceTree = "<group>"; };
+               260E01C113B1225D0064D447 /* SkColorShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkColorShader.h; path = core/SkColorShader.h; sourceTree = "<group>"; };
+               260E01C213B1225D0064D447 /* SkComposeShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkComposeShader.h; path = core/SkComposeShader.h; sourceTree = "<group>"; };
+               260E01C313B1225D0064D447 /* SkDeque.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDeque.h; path = core/SkDeque.h; sourceTree = "<group>"; };
+               260E01C413B1225D0064D447 /* SkDescriptor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDescriptor.h; path = core/SkDescriptor.h; sourceTree = "<group>"; };
+               260E01C513B1225D0064D447 /* SkDevice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDevice.h; path = core/SkDevice.h; sourceTree = "<group>"; };
+               260E01C613B1225D0064D447 /* SkDither.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDither.h; path = core/SkDither.h; sourceTree = "<group>"; };
+               260E01C713B1225D0064D447 /* SkDraw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDraw.h; path = core/SkDraw.h; sourceTree = "<group>"; };
+               260E01C813B1225D0064D447 /* SkDrawFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDrawFilter.h; path = core/SkDrawFilter.h; sourceTree = "<group>"; };
+               260E01C913B1225D0064D447 /* SkDrawLooper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDrawLooper.h; path = core/SkDrawLooper.h; sourceTree = "<group>"; };
+               260E01CA13B1225D0064D447 /* SkEndian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkEndian.h; path = core/SkEndian.h; sourceTree = "<group>"; };
+               260E01CB13B1225D0064D447 /* SkFDot6.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkFDot6.h; path = core/SkFDot6.h; sourceTree = "<group>"; };
+               260E01CC13B1225D0064D447 /* SkFixed.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkFixed.h; path = core/SkFixed.h; sourceTree = "<group>"; };
+               260E01CD13B1225D0064D447 /* SkFlate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkFlate.h; path = core/SkFlate.h; sourceTree = "<group>"; };
+               260E01CE13B1225D0064D447 /* SkFlattenable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkFlattenable.h; path = core/SkFlattenable.h; sourceTree = "<group>"; };
+               260E01CF13B1225D0064D447 /* SkFloatBits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkFloatBits.h; path = core/SkFloatBits.h; sourceTree = "<group>"; };
+               260E01D013B1225D0064D447 /* SkFloatingPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkFloatingPoint.h; path = core/SkFloatingPoint.h; sourceTree = "<group>"; };
+               260E01D113B1225D0064D447 /* SkFontHost.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkFontHost.h; path = core/SkFontHost.h; sourceTree = "<group>"; };
+               260E01D213B1225D0064D447 /* SkGeometry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkGeometry.h; path = core/SkGeometry.h; sourceTree = "<group>"; };
+               260E01D313B1225D0064D447 /* SkGlobals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkGlobals.h; path = core/SkGlobals.h; sourceTree = "<group>"; };
+               260E01D413B1225D0064D447 /* SkGraphics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkGraphics.h; path = core/SkGraphics.h; sourceTree = "<group>"; };
+               260E01D513B1225D0064D447 /* SkMMapStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkMMapStream.h; path = core/SkMMapStream.h; sourceTree = "<group>"; };
+               260E01D613B1225D0064D447 /* SkMallocPixelRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkMallocPixelRef.h; path = core/SkMallocPixelRef.h; sourceTree = "<group>"; };
+               260E01D713B1225D0064D447 /* SkMask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkMask.h; path = core/SkMask.h; sourceTree = "<group>"; };
+               260E01D813B1225D0064D447 /* SkMaskFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkMaskFilter.h; path = core/SkMaskFilter.h; sourceTree = "<group>"; };
+               260E01D913B1225D0064D447 /* SkMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkMath.h; path = core/SkMath.h; sourceTree = "<group>"; };
+               260E01DA13B1225D0064D447 /* SkMatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkMatrix.h; path = core/SkMatrix.h; sourceTree = "<group>"; };
+               260E01DB13B1225D0064D447 /* SkMetaData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkMetaData.h; path = core/SkMetaData.h; sourceTree = "<group>"; };
+               260E01DC13B1225D0064D447 /* SkOSFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkOSFile.h; path = core/SkOSFile.h; sourceTree = "<group>"; };
+               260E01DD13B1225D0064D447 /* SkPackBits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPackBits.h; path = core/SkPackBits.h; sourceTree = "<group>"; };
+               260E01DE13B1225D0064D447 /* SkPaint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPaint.h; path = core/SkPaint.h; sourceTree = "<group>"; };
+               260E01DF13B1225D0064D447 /* SkPath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPath.h; path = core/SkPath.h; sourceTree = "<group>"; };
+               260E01E013B1225D0064D447 /* SkPathEffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPathEffect.h; path = core/SkPathEffect.h; sourceTree = "<group>"; };
+               260E01E113B1225D0064D447 /* SkPathMeasure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPathMeasure.h; path = core/SkPathMeasure.h; sourceTree = "<group>"; };
+               260E01E213B1225D0064D447 /* SkPerspIter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPerspIter.h; path = core/SkPerspIter.h; sourceTree = "<group>"; };
+               260E01E313B1225D0064D447 /* SkPicture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPicture.h; path = core/SkPicture.h; sourceTree = "<group>"; };
+               260E01E413B1225D0064D447 /* SkPixelRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPixelRef.h; path = core/SkPixelRef.h; sourceTree = "<group>"; };
+               260E01E513B1225D0064D447 /* SkPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPoint.h; path = core/SkPoint.h; sourceTree = "<group>"; };
+               260E01E613B1225D0064D447 /* SkPtrRecorder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPtrRecorder.h; path = core/SkPtrRecorder.h; sourceTree = "<group>"; };
+               260E01E713B1225D0064D447 /* SkRandom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRandom.h; path = core/SkRandom.h; sourceTree = "<group>"; };
+               260E01E813B1225D0064D447 /* SkRasterizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRasterizer.h; path = core/SkRasterizer.h; sourceTree = "<group>"; };
+               260E01E913B1225D0064D447 /* SkReader32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkReader32.h; path = core/SkReader32.h; sourceTree = "<group>"; };
+               260E01EA13B1225D0064D447 /* SkRect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRect.h; path = core/SkRect.h; sourceTree = "<group>"; };
+               260E01EB13B1225D0064D447 /* SkRefCnt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRefCnt.h; path = core/SkRefCnt.h; sourceTree = "<group>"; };
+               260E01EC13B1225D0064D447 /* SkRefDict.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRefDict.h; path = core/SkRefDict.h; sourceTree = "<group>"; };
+               260E01ED13B1225D0064D447 /* SkRegion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRegion.h; path = core/SkRegion.h; sourceTree = "<group>"; };
+               260E01EE13B1225D0064D447 /* SkScalar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkScalar.h; path = core/SkScalar.h; sourceTree = "<group>"; };
+               260E01EF13B1225D0064D447 /* SkScalarCompare.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkScalarCompare.h; path = core/SkScalarCompare.h; sourceTree = "<group>"; };
+               260E01F013B1225D0064D447 /* SkScalerContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkScalerContext.h; path = core/SkScalerContext.h; sourceTree = "<group>"; };
+               260E01F113B1225D0064D447 /* SkScan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkScan.h; path = core/SkScan.h; sourceTree = "<group>"; };
+               260E01F213B1225D0064D447 /* SkShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkShader.h; path = core/SkShader.h; sourceTree = "<group>"; };
+               260E01F313B1225D0064D447 /* SkStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkStream.h; path = core/SkStream.h; sourceTree = "<group>"; };
+               260E01F413B1225D0064D447 /* SkString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkString.h; path = core/SkString.h; sourceTree = "<group>"; };
+               260E01F513B1225D0064D447 /* SkStroke.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkStroke.h; path = core/SkStroke.h; sourceTree = "<group>"; };
+               260E01F613B1225D0064D447 /* SkTDArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTDArray.h; path = core/SkTDArray.h; sourceTree = "<group>"; };
+               260E01F713B1225D0064D447 /* SkTDStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTDStack.h; path = core/SkTDStack.h; sourceTree = "<group>"; };
+               260E01F813B1225D0064D447 /* SkTDict.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTDict.h; path = core/SkTDict.h; sourceTree = "<group>"; };
+               260E01F913B1225D0064D447 /* SkTRegistry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTRegistry.h; path = core/SkTRegistry.h; sourceTree = "<group>"; };
+               260E01FA13B1225D0064D447 /* SkTScopedPtr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTScopedPtr.h; path = core/SkTScopedPtr.h; sourceTree = "<group>"; };
+               260E01FB13B1225D0064D447 /* SkTSearch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTSearch.h; path = core/SkTSearch.h; sourceTree = "<group>"; };
+               260E01FC13B1225D0064D447 /* SkTemplates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTemplates.h; path = core/SkTemplates.h; sourceTree = "<group>"; };
+               260E01FD13B1225D0064D447 /* SkThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkThread.h; path = core/SkThread.h; sourceTree = "<group>"; };
+               260E01FE13B1225D0064D447 /* SkThread_platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkThread_platform.h; path = core/SkThread_platform.h; sourceTree = "<group>"; };
+               260E01FF13B1225D0064D447 /* SkTime.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTime.h; path = core/SkTime.h; sourceTree = "<group>"; };
+               260E020013B1225D0064D447 /* SkTypeface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTypeface.h; path = core/SkTypeface.h; sourceTree = "<group>"; };
+               260E020113B1225D0064D447 /* SkTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTypes.h; path = core/SkTypes.h; sourceTree = "<group>"; };
+               260E020213B1225D0064D447 /* SkUnPreMultiply.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkUnPreMultiply.h; path = core/SkUnPreMultiply.h; sourceTree = "<group>"; };
+               260E020313B1225D0064D447 /* SkUnitMapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkUnitMapper.h; path = core/SkUnitMapper.h; sourceTree = "<group>"; };
+               260E020413B1225D0064D447 /* SkUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkUtils.h; path = core/SkUtils.h; sourceTree = "<group>"; };
+               260E020513B1225D0064D447 /* SkWriter32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkWriter32.h; path = core/SkWriter32.h; sourceTree = "<group>"; };
+               260E020613B1225D0064D447 /* SkXfermode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkXfermode.h; path = core/SkXfermode.h; sourceTree = "<group>"; };
                260E020813B1225D0064D447 /* SkCGUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkCGUtils.h; sourceTree = "<group>"; };
                260E020B13B1225D0064D447 /* ARGB32_Clamp_Bilinear_BitmapShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ARGB32_Clamp_Bilinear_BitmapShader.h; sourceTree = "<group>"; };
                260E020C13B1225D0064D447 /* Sk64.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Sk64.cpp; sourceTree = "<group>"; };
                260EE9D113AFA7850064D447 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
                260EEA2C13AFB1C70064D447 /* SkUIView_shell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkUIView_shell.h; sourceTree = "<group>"; };
                260EEA2D13AFB1C70064D447 /* SkUIView_shell.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SkUIView_shell.mm; sourceTree = "<group>"; };
-               260EEC0013AFBEFF0064D447 /* SkTime_iOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SkTime_iOS.mm; sourceTree = "<group>"; };
                260EEC9313AFC5CA0064D447 /* SkUIView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkUIView.h; path = ../../gpu/include/SkUIView.h; sourceTree = SOURCE_ROOT; };
                260EEC9413AFC5D60064D447 /* SkUIView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = SkUIView.mm; path = ../../gpu/src/ios/SkUIView.mm; sourceTree = SOURCE_ROOT; };
                260EF18413AFD62E0064D447 /* CoreText.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; };
                260EFB7013B0DBFF0064D447 /* SkUIRootViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SkUIRootViewController.mm; sourceTree = "<group>"; };
                260EFBA313B0DF600064D447 /* SkUIDetailViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkUIDetailViewController.h; sourceTree = "<group>"; };
                260EFBA413B0DF600064D447 /* SkUIDetailViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SkUIDetailViewController.mm; sourceTree = "<group>"; };
+               2662AB6F13BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "SkiOSSampleApp-Debug.xcconfig"; sourceTree = "<group>"; };
+               2662AB7513BD0C0D00CDE7E9 /* SkiOSSampleApp-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "SkiOSSampleApp-Release.xcconfig"; sourceTree = "<group>"; };
+               2662AB7713BD0C1E00CDE7E9 /* SkiOSSampleApp-Base.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "SkiOSSampleApp-Base.xcconfig"; sourceTree = "<group>"; };
                26677D6413B4C53E009319B8 /* SkData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkData.h; path = core/SkData.h; sourceTree = "<group>"; };
                26677D6513B4C548009319B8 /* SkData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkData.cpp; path = core/SkData.cpp; sourceTree = "<group>"; };
+               26E0E53C13B5167C00866555 /* SampleNetPipeReader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SampleNetPipeReader.cpp; sourceTree = "<group>"; };
+               26E0E55213B5186100866555 /* SkNetIO.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkNetIO.cpp; path = ../../samplecode/SkNetIO.cpp; sourceTree = SOURCE_ROOT; };
+               26E0E55313B5186100866555 /* SkNetIO.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkNetIO.h; path = ../../samplecode/SkNetIO.h; sourceTree = SOURCE_ROOT; };
+               26E0E5C913B5299E00866555 /* SkGPipe.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkGPipe.h; path = ../../include/pipe/SkGPipe.h; sourceTree = SOURCE_ROOT; };
+               26F548DF13B91980007CC564 /* opts_check_arm.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = opts_check_arm.cpp; sourceTree = "<group>"; };
+               26F548E013B91980007CC564 /* SkBitmapProcState_opts_arm.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkBitmapProcState_opts_arm.cpp; sourceTree = "<group>"; };
+               26F548E113B91980007CC564 /* SkBitmapProcState_opts_none.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkBitmapProcState_opts_none.cpp; sourceTree = "<group>"; };
+               26F548E213B91980007CC564 /* SkBitmapProcState_opts_SSE2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkBitmapProcState_opts_SSE2.h; sourceTree = "<group>"; };
+               26F548E313B91980007CC564 /* SkBlitRow_opts_arm.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkBlitRow_opts_arm.cpp; sourceTree = "<group>"; };
+               26F548E413B91980007CC564 /* SkBlitRow_opts_none.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkBlitRow_opts_none.cpp; sourceTree = "<group>"; };
+               26F548E513B91980007CC564 /* SkBlitRow_opts_SSE2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkBlitRow_opts_SSE2.h; sourceTree = "<group>"; };
+               26F548E613B91980007CC564 /* SkUtils_opts_none.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkUtils_opts_none.cpp; sourceTree = "<group>"; };
+               26F548E713B91980007CC564 /* SkUtils_opts_SSE2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkUtils_opts_SSE2.h; sourceTree = "<group>"; };
+               26F5490B13B91B73007CC564 /* SkUserConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkUserConfig.h; path = ../../include/config/SkUserConfig.h; sourceTree = SOURCE_ROOT; };
+               26F5491013B91BDB007CC564 /* SkEdgeClipper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkEdgeClipper.h; path = core/SkEdgeClipper.h; sourceTree = "<group>"; };
+               26F5491113B91BDB007CC564 /* SkLineClipper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkLineClipper.h; path = core/SkLineClipper.h; sourceTree = "<group>"; };
+               26F5491213B91BDB007CC564 /* SkPostConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPostConfig.h; path = core/SkPostConfig.h; sourceTree = "<group>"; };
+               26F5491313B91BDB007CC564 /* SkPreConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkPreConfig.h; path = core/SkPreConfig.h; sourceTree = "<group>"; };
+               26F5491413B91BDB007CC564 /* SkRelay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRelay.h; path = core/SkRelay.h; sourceTree = "<group>"; };
+               26F5491513B91BDB007CC564 /* SkShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkShape.h; path = core/SkShape.h; sourceTree = "<group>"; };
+               26F5491613B91BDB007CC564 /* SkSize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkSize.h; path = core/SkSize.h; sourceTree = "<group>"; };
+               26F5491713B91BDB007CC564 /* SkTLazy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTLazy.h; path = core/SkTLazy.h; sourceTree = "<group>"; };
+               26F5491A13B91C22007CC564 /* SkFlipPixelRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkFlipPixelRef.h; sourceTree = "<group>"; };
+               26F5491B13B91C22007CC564 /* SkImageRef_GlobalPool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkImageRef_GlobalPool.h; sourceTree = "<group>"; };
+               26F5491C13B91C22007CC564 /* SkImageRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkImageRef.h; sourceTree = "<group>"; };
+               26F5491D13B91C22007CC564 /* SkJpegUtility.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkJpegUtility.h; sourceTree = "<group>"; };
+               26F5491E13B91C22007CC564 /* SkMovie.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkMovie.h; sourceTree = "<group>"; };
+               26F5491F13B91C22007CC564 /* SkPageFlipper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkPageFlipper.h; sourceTree = "<group>"; };
+               26F5492213B91C51007CC564 /* FlingState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlingState.h; sourceTree = "<group>"; };
+               26F5492313B91C51007CC564 /* GrGLDefines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GrGLDefines.h; sourceTree = "<group>"; };
+               26F5492413B91C51007CC564 /* GrTemplates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GrTemplates.h; sourceTree = "<group>"; };
+               26F5492713B91CA1007CC564 /* SkTypeface_mac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkTypeface_mac.h; path = include/ports/SkTypeface_mac.h; sourceTree = "<group>"; };
                2860E325111B887F00E27156 /* AppDelegate_iPhone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate_iPhone.h; sourceTree = "<group>"; };
                2860E326111B887F00E27156 /* AppDelegate_iPhone.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppDelegate_iPhone.mm; sourceTree = "<group>"; };
                2860E327111B887F00E27156 /* MainWindow_iPhone.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainWindow_iPhone.xib; sourceTree = "<group>"; };
                                260E007113B11F5B0064D447 /* SampleVertices.cpp */,
                                260E007213B11F5B0064D447 /* SampleXfermodes.cpp */,
                                260E007313B11F5B0064D447 /* SampleXfermodesBlur.cpp */,
+                               26E0E53C13B5167C00866555 /* SampleNetPipeReader.cpp */,
+                               26075F5813C513D30034339C /* SampleDrawingBoard.cpp */,
                        );
                        name = samplecode;
                        path = ../../samplecode;
                260E007413B11F5B0064D447 /* pipe */ = {
                        isa = PBXGroup;
                        children = (
+                               26E0E5C913B5299E00866555 /* SkGPipe.h */,
                                260E007513B11F5B0064D447 /* SkGPipeRead.cpp */,
                                260E007613B11F5B0064D447 /* SkGPipeWrite.cpp */,
                        );
                260E01AF13B1225D0064D447 /* core */ = {
                        isa = PBXGroup;
                        children = (
+                               26F5492713B91CA1007CC564 /* SkTypeface_mac.h */,
                                260E01B013B1225D0064D447 /* include */,
                                260E020913B1225D0064D447 /* src */,
                        );
                260E01B013B1225D0064D447 /* include */ = {
                        isa = PBXGroup;
                        children = (
-                               26677D6413B4C53E009319B8 /* SkData.h */,
-                               260E01B113B1225D0064D447 /* core */,
-                               260E020713B1225D0064D447 /* mac */,
-                       );
-                       path = include;
-                       sourceTree = "<group>";
-               };
-               260E01B113B1225D0064D447 /* core */ = {
-                       isa = PBXGroup;
-                       children = (
                                260E01B213B1225D0064D447 /* Sk64.h */,
                                260E01B313B1225D0064D447 /* SkAdvancedTypefaceMetrics.h */,
                                260E01B413B1225D0064D447 /* SkAutoKern.h */,
                                260E020413B1225D0064D447 /* SkUtils.h */,
                                260E020513B1225D0064D447 /* SkWriter32.h */,
                                260E020613B1225D0064D447 /* SkXfermode.h */,
+                               26F5491013B91BDB007CC564 /* SkEdgeClipper.h */,
+                               26F5491113B91BDB007CC564 /* SkLineClipper.h */,
+                               26F5491213B91BDB007CC564 /* SkPostConfig.h */,
+                               26F5491313B91BDB007CC564 /* SkPreConfig.h */,
+                               26F5491413B91BDB007CC564 /* SkRelay.h */,
+                               26F5491513B91BDB007CC564 /* SkShape.h */,
+                               26F5491613B91BDB007CC564 /* SkSize.h */,
+                               26F5491713B91BDB007CC564 /* SkTLazy.h */,
+                               26677D6413B4C53E009319B8 /* SkData.h */,
+                               260E020713B1225D0064D447 /* mac */,
                        );
-                       path = core;
+                       path = include;
                        sourceTree = "<group>";
                };
                260E020713B1225D0064D447 /* mac */ = {
                260E038B13B122D40064D447 /* include */ = {
                        isa = PBXGroup;
                        children = (
+                               26F5492213B91C51007CC564 /* FlingState.h */,
+                               26F5492313B91C51007CC564 /* GrGLDefines.h */,
+                               26F5492413B91C51007CC564 /* GrTemplates.h */,
                                260E038C13B122D40064D447 /* GrAllocPool.h */,
                                260E038D13B122D40064D447 /* GrAllocator.h */,
                                260E038E13B122D40064D447 /* GrAtlas.h */,
                260E043F13B1232F0064D447 /* include */ = {
                        isa = PBXGroup;
                        children = (
+                               26F5491A13B91C22007CC564 /* SkFlipPixelRef.h */,
+                               26F5491B13B91C22007CC564 /* SkImageRef_GlobalPool.h */,
+                               26F5491C13B91C22007CC564 /* SkImageRef.h */,
+                               26F5491D13B91C22007CC564 /* SkJpegUtility.h */,
+                               26F5491E13B91C22007CC564 /* SkMovie.h */,
+                               26F5491F13B91C22007CC564 /* SkPageFlipper.h */,
                                260E044113B1232F0064D447 /* SkImageDecoder.h */,
                                260E044213B1232F0064D447 /* SkImageEncoder.h */,
                        );
                260E04B413B123730064D447 /* opts */ = {
                        isa = PBXGroup;
                        children = (
+                               26F548DF13B91980007CC564 /* opts_check_arm.cpp */,
+                               26F548E013B91980007CC564 /* SkBitmapProcState_opts_arm.cpp */,
+                               26F548E113B91980007CC564 /* SkBitmapProcState_opts_none.cpp */,
+                               26F548E213B91980007CC564 /* SkBitmapProcState_opts_SSE2.h */,
+                               26F548E313B91980007CC564 /* SkBlitRow_opts_arm.cpp */,
+                               26F548E413B91980007CC564 /* SkBlitRow_opts_none.cpp */,
+                               26F548E513B91980007CC564 /* SkBlitRow_opts_SSE2.h */,
+                               26F548E613B91980007CC564 /* SkUtils_opts_none.cpp */,
+                               26F548E713B91980007CC564 /* SkUtils_opts_SSE2.h */,
                                260E04B513B123730064D447 /* SkBitmapProcState_opts_SSE2.cpp */,
                                260E04B613B123730064D447 /* SkBlitRow_opts_SSE2.cpp */,
                                260E04B713B123730064D447 /* SkUtils_opts_SSE2.cpp */,
                260EE81F13AFA7790064D447 /* Skia */ = {
                        isa = PBXGroup;
                        children = (
+                               26F5490B13B91B73007CC564 /* SkUserConfig.h */,
                                260E06B613B127E00064D447 /* animator */,
                                260E01AF13B1225D0064D447 /* core */,
                                260E031E13B122A30064D447 /* effects */,
                260EE8B913AFA7790064D447 /* iOS */ = {
                        isa = PBXGroup;
                        children = (
-                               26E0E3C413B4E60500866555 /* Unused Old Code */,
-                               260E08CF13B12DBE0064D447 /* SkOSWindow_iOS.h */,
-                               260EE8BC13AFA7790064D447 /* SkOSWindow_iOS.mm */,
-                               260EE8BB13AFA7790064D447 /* SkOSFile_iOS.mm */,
-                               260EEC0013AFBEFF0064D447 /* SkTime_iOS.mm */,
-                               260E0AC313B1401D0064D447 /* SkIOSNotifier.h */,
-                               260E0AC413B1401D0064D447 /* SkIOSNotifier.mm */,
-                       );
-                       name = iOS;
-                       sourceTree = "<group>";
-               };
-               260EEC7713AFC2290064D447 /* Classes */ = {
-                       isa = PBXGroup;
-                       children = (
-                               260EFB6F13B0DBFF0064D447 /* SkUIRootViewController.h */,
-                               260EFB7013B0DBFF0064D447 /* SkUIRootViewController.mm */,
-                               260EFBA313B0DF600064D447 /* SkUIDetailViewController.h */,
-                               260EFBA413B0DF600064D447 /* SkUIDetailViewController.mm */,
-                               260EEA2C13AFB1C70064D447 /* SkUIView_shell.h */,
-                               260EEA2D13AFB1C70064D447 /* SkUIView_shell.mm */,
-                       );
-                       name = Classes;
-                       sourceTree = "<group>";
-               };
-               26E0E3C413B4E60500866555 /* Unused Old Code */ = {
-                       isa = PBXGroup;
-                       children = (
                                260EE8BA13AFA7790064D447 /* SkFontHost_iOS.mm */,
                                260E08D013B12DBE0064D447 /* SkStream_NSData.h */,
                                260EE8BF13AFA7790064D447 /* SkStream_NSData.mm */,
                                260EEC9313AFC5CA0064D447 /* SkUIView.h */,
                                260E1B9D13B38E310064D447 /* SkUIView_withSkUIContainerView.h */,
                                260E1B9E13B38E310064D447 /* SkUIView_withSkUIContainerView.mm */,
+                               260EE8BB13AFA7790064D447 /* SkOSFile_iOS.mm */,
                        );
-                       name = "Unused Old Code";
+                       name = iOS;
                        sourceTree = "<group>";
                };
                2860E324111B887F00E27156 /* iPhone */ = {
                28EEBF621118D79A00187D67 /* Shared */ = {
                        isa = PBXGroup;
                        children = (
-                               260EEC7713AFC2290064D447 /* Classes */,
-                               260EE8B913AFA7790064D447 /* iOS */,
+                               26E0E55213B5186100866555 /* SkNetIO.cpp */,
+                               26E0E55313B5186100866555 /* SkNetIO.h */,
+                               260EFB6F13B0DBFF0064D447 /* SkUIRootViewController.h */,
+                               260EFB7013B0DBFF0064D447 /* SkUIRootViewController.mm */,
+                               260EFBA313B0DF600064D447 /* SkUIDetailViewController.h */,
+                               260EFBA413B0DF600064D447 /* SkUIDetailViewController.mm */,
+                               260EEA2C13AFB1C70064D447 /* SkUIView_shell.h */,
+                               260EEA2D13AFB1C70064D447 /* SkUIView_shell.mm */,
+                               260E08CF13B12DBE0064D447 /* SkOSWindow_iOS.h */,
+                               260EE8BC13AFA7790064D447 /* SkOSWindow_iOS.mm */,
+                               260E0AC313B1401D0064D447 /* SkIOSNotifier.h */,
+                               260E0AC413B1401D0064D447 /* SkIOSNotifier.mm */,
+                               26075E5E13C506560034339C /* SkAlertPrompt.h */,
+                               26075E5F13C506560034339C /* SkAlertPrompt.m */,
                        );
                        name = Shared;
                        sourceTree = "<group>";
                                29B97315FDCFA39411CA2CEA /* Other Sources */,
                                29B97323FDCFA39411CA2CEA /* Frameworks */,
                                19C28FACFE9D520D11CA2CBB /* Products */,
+                               2662AB6F13BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig */,
+                               2662AB7513BD0C0D00CDE7E9 /* SkiOSSampleApp-Release.xcconfig */,
+                               2662AB7713BD0C1E00CDE7E9 /* SkiOSSampleApp-Base.xcconfig */,
                        );
                        name = CustomTemplate;
                        sourceTree = "<group>";
                29B97315FDCFA39411CA2CEA /* Other Sources */ = {
                        isa = PBXGroup;
                        children = (
+                               260EE8B913AFA7790064D447 /* iOS */,
                                260E013413B11F7A0064D447 /* SampleApp */,
                                260EE81F13AFA7790064D447 /* Skia */,
-                               32CA4F630368D1EE00C91783 /* iOSSampleApp_Prefix.pch */,
                                29B97316FDCFA39411CA2CEA /* main.m */,
+                               32CA4F630368D1EE00C91783 /* iOSSampleApp_Prefix.pch */,
                                8D1107310486CEB800E47090 /* iOSSampleApp-Info.plist */,
                        );
                        name = "Other Sources";
                        files = (
                                2860E329111B887F00E27156 /* MainWindow_iPhone.xib in Resources */,
                                2860E32F111B888700E27156 /* MainWindow_iPad.xib in Resources */,
+                               2662AB7013BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig in Resources */,
+                               2662AB7613BD0C0D00CDE7E9 /* SkiOSSampleApp-Release.xcconfig in Resources */,
+                               2662AB7813BD0C1E00CDE7E9 /* SkiOSSampleApp-Base.xcconfig in Resources */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                                260E02A813B1225D0064D447 /* SkBitmapProcState_matrixProcs.cpp in Sources */,
                                260E02A913B1225D0064D447 /* SkBitmapSampler.cpp in Sources */,
                                260E02AA13B1225D0064D447 /* SkBitmap_scroll.cpp in Sources */,
-                               260E02AB13B1225D0064D447 /* SkBlitRow_D16.cpp in Sources */,
-                               260E02AC13B1225D0064D447 /* SkBlitRow_D32.cpp in Sources */,
                                260E02AD13B1225D0064D447 /* SkBlitRow_D4444.cpp in Sources */,
                                260E02AE13B1225D0064D447 /* SkBlitter.cpp in Sources */,
-                               260E02AF13B1225D0064D447 /* SkBlitter_4444.cpp in Sources */,
-                               260E02B013B1225D0064D447 /* SkBlitter_A1.cpp in Sources */,
-                               260E02B113B1225D0064D447 /* SkBlitter_A8.cpp in Sources */,
-                               260E02B213B1225D0064D447 /* SkBlitter_ARGB32.cpp in Sources */,
-                               260E02B313B1225D0064D447 /* SkBlitter_RGB16.cpp in Sources */,
-                               260E02B413B1225D0064D447 /* SkBlitter_Sprite.cpp in Sources */,
                                260E02B513B1225D0064D447 /* SkBuffer.cpp in Sources */,
                                260E02B613B1225D0064D447 /* SkCanvas.cpp in Sources */,
                                260E02B713B1225D0064D447 /* SkChunkAlloc.cpp in Sources */,
                                260E02E513B1225D0064D447 /* SkPictureRecord.cpp in Sources */,
                                260E02E613B1225D0064D447 /* SkPixelRef.cpp in Sources */,
                                260E02E713B1225D0064D447 /* SkPoint.cpp in Sources */,
-                               260E02E813B1225D0064D447 /* SkProcSpriteBlitter.cpp in Sources */,
                                260E02E913B1225D0064D447 /* SkPtrRecorder.cpp in Sources */,
                                260E02EA13B1225D0064D447 /* SkQuadClipper.cpp in Sources */,
                                260E02EB13B1225D0064D447 /* SkRasterizer.cpp in Sources */,
                                260E02F613B1225D0064D447 /* SkScan_Path.cpp in Sources */,
                                260E02F713B1225D0064D447 /* SkShader.cpp in Sources */,
                                260E02F813B1225D0064D447 /* SkShape.cpp in Sources */,
-                               260E02F913B1225D0064D447 /* SkSpriteBlitter_ARGB32.cpp in Sources */,
-                               260E02FA13B1225D0064D447 /* SkSpriteBlitter_RGB16.cpp in Sources */,
                                260E02FB13B1225D0064D447 /* SkStream.cpp in Sources */,
                                260E02FC13B1225D0064D447 /* SkString.cpp in Sources */,
                                260E02FD13B1225D0064D447 /* SkStroke.cpp in Sources */,
                                260E030313B1225D0064D447 /* SkUtils.cpp in Sources */,
                                260E030413B1225D0064D447 /* SkWriter32.cpp in Sources */,
                                260E030513B1225D0064D447 /* SkXfermode.cpp in Sources */,
-                               260E030613B1225D0064D447 /* opts_check_SSE2.cpp in Sources */,
                                260E030713B1225D0064D447 /* SkDebug_stdio.cpp in Sources */,
                                260E030B13B1225D0064D447 /* SkGlobals_global.cpp in Sources */,
                                260E030C13B1225D0064D447 /* SkMemory_malloc.cpp in Sources */,
                                260E046813B1232F0064D447 /* SkFlipPixelRef.cpp in Sources */,
                                260E046913B1232F0064D447 /* SkImageDecoder.cpp in Sources */,
                                260E047113B1232F0064D447 /* SkImageEncoder.cpp in Sources */,
-                               260E04B813B123730064D447 /* SkBitmapProcState_opts_SSE2.cpp in Sources */,
-                               260E04B913B123730064D447 /* SkBlitRow_opts_SSE2.cpp in Sources */,
-                               260E04BA13B123730064D447 /* SkUtils_opts_SSE2.cpp in Sources */,
                                260E050113B123840064D447 /* SkSVGCircle.cpp in Sources */,
                                260E050213B123840064D447 /* SkSVGClipPath.cpp in Sources */,
                                260E050313B123840064D447 /* SkSVGDefs.cpp in Sources */,
                                260E1EAC13B3B15A0064D447 /* SkPDFTypes.cpp in Sources */,
                                260E1EAD13B3B15A0064D447 /* SkPDFUtils.cpp in Sources */,
                                26677D6613B4C548009319B8 /* SkData.cpp in Sources */,
-                               26E0E33013B4DB3800866555 /* SkTime_iOS.mm in Sources */,
                                26E0E46413B4F28A00866555 /* SkOSFile_iOS.mm in Sources */,
+                               26E0E55413B5186100866555 /* SkNetIO.cpp in Sources */,
+                               26F548C213B918EC007CC564 /* SkBlitter_4444.cpp in Sources */,
+                               26F548C313B918ED007CC564 /* SkBlitter_A1.cpp in Sources */,
+                               26F548C413B918ED007CC564 /* SkBlitter_A8.cpp in Sources */,
+                               26F548C513B918EE007CC564 /* SkBlitter_ARGB32.cpp in Sources */,
+                               26F548C613B918EF007CC564 /* SkBlitter_RGB16.cpp in Sources */,
+                               26F548C713B918EF007CC564 /* SkBlitter_Sprite.cpp in Sources */,
+                               26F548C813B918F1007CC564 /* SkProcSpriteBlitter.cpp in Sources */,
+                               26F548C913B918F2007CC564 /* SkSpriteBlitter_ARGB32.cpp in Sources */,
+                               26F548CA13B918F2007CC564 /* SkSpriteBlitter_RGB16.cpp in Sources */,
+                               26F548DA13B9192E007CC564 /* SkBlitRow_D32.cpp in Sources */,
+                               26F548DB13B9192E007CC564 /* SkBlitRow_D16.cpp in Sources */,
+                               26F548E913B91980007CC564 /* SkBitmapProcState_opts_arm.cpp in Sources */,
+                               26F548EC13B91980007CC564 /* SkBlitRow_opts_none.cpp in Sources */,
+                               26F548ED13B91980007CC564 /* SkUtils_opts_none.cpp in Sources */,
+                               26075BB013C4B45C0034339C /* SampleNetPipeReader.cpp in Sources */,
+                               26075E6013C506560034339C /* SkAlertPrompt.m in Sources */,
+                               26075F5913C513D30034339C /* SampleDrawingBoard.cpp in Sources */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                };
                C01FCF4F08A954540054247B /* Debug */ = {
                        isa = XCBuildConfiguration;
+                       baseConfigurationReference = 2662AB6F13BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig */;
                        buildSettings = {
                                ARCHS = "$(ARCHS_STANDARD_32_BIT)";
                                "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
                                GCC_C_LANGUAGE_STANDARD = c99;
+                               GCC_OPTIMIZATION_LEVEL = 0;
                                GCC_PREPROCESSOR_DEFINITIONS = (
                                        SK_BUILD_FOR_IOS,
                                        SK_DEBUG,
                };
                C01FCF5008A954540054247B /* Release */ = {
                        isa = XCBuildConfiguration;
+                       baseConfigurationReference = 2662AB7513BD0C0D00CDE7E9 /* SkiOSSampleApp-Release.xcconfig */;
                        buildSettings = {
                                ARCHS = "$(ARCHS_STANDARD_32_BIT)";
                                "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
                                GCC_C_LANGUAGE_STANDARD = c99;
+                               GCC_PREPROCESSOR_DEFINITIONS = (
+                                       SK_RELEASE,
+                                       SK_BUILD_FOR_IOS,
+                               );
                                GCC_WARN_ABOUT_RETURN_TYPE = YES;
                                GCC_WARN_UNUSED_VARIABLE = YES;
+                               IPHONEOS_DEPLOYMENT_TARGET = 4.2;
                                OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
                                PREBINDING = NO;
-                               SDKROOT = iphoneos;
+                               SDKROOT = iphoneos4.3;
                                TARGETED_DEVICE_FAMILY = "1,2";
                        };
                        name = Release;
index 0dbc688..5cd2995 100644 (file)
@@ -1,10 +1,11 @@
 #import <UIKit/UIKit.h>
 #import "SkUISplitViewController.h"
+
 @interface AppDelegate_iPad : NSObject <UIApplicationDelegate> {
+@private;
     UIWindow* window;
     SkUISplitViewController* splitViewController;
 }
-
 @property (nonatomic, retain) IBOutlet UIWindow* window;
 @property (nonatomic, retain) IBOutlet SkUISplitViewController* splitViewController;
 
index d74f48d..7c59360 100644 (file)
@@ -4,13 +4,9 @@
 
 @synthesize window, splitViewController;
 
-#pragma mark -
-#pragma mark Application lifecycle
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
 
-- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
-    
     // Override point for customization after application launch.
-    
     [window addSubview:[splitViewController view]];
     [window makeKeyAndVisible];
     [splitViewController loadData];
index 4be60f2..898dd18 100644 (file)
@@ -2,7 +2,7 @@
 <archive type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="7.10">
        <data>
                <int key="IBDocument.SystemTarget">1056</int>
-               <string key="IBDocument.SystemVersion">10J3250</string>
+               <string key="IBDocument.SystemVersion">10J4138</string>
                <string key="IBDocument.InterfaceBuilderVersion">851</string>
                <string key="IBDocument.AppKitVersion">1038.35</string>
                <string key="IBDocument.HIToolboxVersion">461.00</string>
@@ -12,7 +12,7 @@
                </object>
                <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
                        <bool key="EncodedWithXMLCoder">YES</bool>
-                       <integer value="54"/>
+                       <integer value="52"/>
                </object>
                <object class="NSArray" key="IBDocument.PluginDependencies">
                        <bool key="EncodedWithXMLCoder">YES</bool>
                                        <int key="IBUIStatusBarStyle">2</int>
                                </object>
                                <object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
-                                       <int key="interfaceOrientation">3</int>
+                                       <int key="interfaceOrientation">1</int>
                                </object>
                                <string key="targetRuntimeIdentifier">IBIPadFramework</string>
-                               <bool key="IBUIHorizontal">YES</bool>
+                               <bool key="IBUIHorizontal">NO</bool>
                                <object class="IBUINavigationController" key="IBUIMasterViewController" id="524408385">
                                        <reference key="IBUIParentViewController" ref="143532475"/>
                                        <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics">
@@ -91,9 +91,9 @@
                                                        <object class="IBUITableView" key="IBUIView" id="805122470">
                                                                <reference key="NSNextResponder"/>
                                                                <int key="NSvFlags">274</int>
-                                                               <string key="NSFrameSize">{320, 704}</string>
+                                                               <string key="NSFrameSize">{320, 960}</string>
                                                                <reference key="NSSuperview"/>
-                                                               <object class="NSColor" key="IBUIBackgroundColor">
+                                                               <object class="NSColor" key="IBUIBackgroundColor" id="933040628">
                                                                        <int key="NSColorSpace">3</int>
                                                                        <bytes key="NSWhite">MQA</bytes>
                                                                </object>
                                                        <object class="IBUINavigationBar" id="532491637">
                                                                <reference key="NSNextResponder" ref="662500735"/>
                                                                <int key="NSvFlags">290</int>
-                                                               <string key="NSFrameSize">{703, 44}</string>
+                                                               <string key="NSFrameSize">{768, 44}</string>
                                                                <reference key="NSSuperview" ref="662500735"/>
                                                                <bool key="IBUIOpaque">NO</bool>
                                                                <string key="targetRuntimeIdentifier">IBIPadFramework</string>
                                                                        </object>
                                                                </object>
                                                        </object>
-                                               </object>
-                                               <string key="NSFrameSize">{703, 748}</string>
-                                               <reference key="NSSuperview"/>
-                                               <object class="NSColor" key="IBUIBackgroundColor">
-                                                       <int key="NSColorSpace">3</int>
-                                                       <bytes key="NSWhite">MQA</bytes>
-                                                       <object class="NSColorSpace" key="NSCustomColorSpace">
-                                                               <int key="NSID">2</int>
+                                                       <object class="IBUIToolbar" id="872721022">
+                                                               <reference key="NSNextResponder" ref="662500735"/>
+                                                               <int key="NSvFlags">266</int>
+                                                               <object class="NSMutableArray" key="NSSubviews">
+                                                                       <bool key="EncodedWithXMLCoder">YES</bool>
+                                                                       <object class="IBUISwitch" id="241745124">
+                                                                               <reference key="NSNextResponder" ref="872721022"/>
+                                                                               <int key="NSvFlags">292</int>
+                                                                               <string key="NSFrame">{{584, 9}, {94, 27}}</string>
+                                                                               <reference key="NSSuperview" ref="872721022"/>
+                                                                               <bool key="IBUIOpaque">NO</bool>
+                                                                               <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+                                                                               <int key="IBUIContentHorizontalAlignment">0</int>
+                                                                               <int key="IBUIContentVerticalAlignment">0</int>
+                                                                       </object>
+                                                               </object>
+                                                               <string key="NSFrame">{{0, 960}, {768, 44}}</string>
+                                                               <reference key="NSSuperview" ref="662500735"/>
+                                                               <bool key="IBUIOpaque">NO</bool>
+                                                               <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
+                                                               <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+                                                               <int key="IBUIBarStyle">1</int>
+                                                               <object class="NSMutableArray" key="IBUIItems">
+                                                                       <bool key="EncodedWithXMLCoder">YES</bool>
+                                                                       <object class="IBUIBarButtonItem" id="732530149">
+                                                                               <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+                                                                               <reference key="IBUIToolbar" ref="872721022"/>
+                                                                               <int key="IBUISystemItemIdentifier">5</int>
+                                                                       </object>
+                                                                       <object class="IBUIBarButtonItem" id="829573230">
+                                                                               <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+                                                                               <float key="IBUIWidth">55</float>
+                                                                               <reference key="IBUIToolbar" ref="872721022"/>
+                                                                               <int key="IBUISystemItemIdentifier">6</int>
+                                                                       </object>
+                                                                       <object class="IBUIBarButtonItem" id="780237299">
+                                                                               <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+                                                                               <int key="IBUIStyle">1</int>
+                                                                               <reference key="IBUICustomView" ref="241745124"/>
+                                                                               <reference key="IBUIToolbar" ref="872721022"/>
+                                                                       </object>
+                                                                       <object class="IBUIBarButtonItem" id="247862273">
+                                                                               <string key="IBUITitle">Server iP</string>
+                                                                               <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+                                                                               <int key="IBUIStyle">1</int>
+                                                                               <reference key="IBUIToolbar" ref="872721022"/>
+                                                                       </object>
+                                                               </object>
+                                                       </object>
+                                                       <object class="IBUILabel" id="65333785">
+                                                               <reference key="NSNextResponder" ref="662500735"/>
+                                                               <int key="NSvFlags">265</int>
+                                                               <string key="NSFrame">{{526, 967}, {49, 29}}</string>
+                                                               <reference key="NSSuperview" ref="662500735"/>
+                                                               <bool key="IBUIOpaque">NO</bool>
+                                                               <bool key="IBUIClipsSubviews">YES</bool>
+                                                               <int key="IBUIContentMode">7</int>
+                                                               <bool key="IBUIUserInteractionEnabled">NO</bool>
+                                                               <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+                                                               <string key="IBUIText">Pipe</string>
+                                                               <object class="NSFont" key="IBUIFont">
+                                                                       <string key="NSName">Helvetica</string>
+                                                                       <double key="NSSize">24</double>
+                                                                       <int key="NSfFlags">16</int>
+                                                               </object>
+                                                               <reference key="IBUITextColor" ref="933040628"/>
+                                                               <reference key="IBUIHighlightedColor" ref="933040628"/>
+                                                               <int key="IBUIBaselineAdjustment">1</int>
+                                                               <float key="IBUIMinimumFontSize">10</float>
+                                                               <int key="IBUITextAlignment">1</int>
                                                        </object>
                                                </object>
+                                               <string key="NSFrameSize">{768, 1004}</string>
+                                               <reference key="NSSuperview"/>
+                                               <reference key="IBUIBackgroundColor" ref="933040628"/>
                                                <bool key="IBUIMultipleTouchEnabled">YES</bool>
                                                <string key="targetRuntimeIdentifier">IBIPadFramework</string>
                                        </object>
                                        </object>
                                        <int key="connectionID">96</int>
                                </object>
+                               <object class="IBConnectionRecord">
+                                       <object class="IBCocoaTouchEventConnection" key="connection">
+                                               <string key="label">usePipe:</string>
+                                               <reference key="source" ref="241745124"/>
+                                               <reference key="destination" ref="324576857"/>
+                                               <int key="IBEventType">13</int>
+                                       </object>
+                                       <int key="connectionID">110</int>
+                               </object>
+                               <object class="IBConnectionRecord">
+                                       <object class="IBCocoaTouchEventConnection" key="connection">
+                                               <string key="label">enterServerIP:</string>
+                                               <reference key="source" ref="247862273"/>
+                                               <reference key="destination" ref="324576857"/>
+                                       </object>
+                                       <int key="connectionID">129</int>
+                               </object>
                        </object>
                        <object class="IBMutableOrderedSet" key="objectRecords">
                                <object class="NSArray" key="orderedObjects">
                                                <object class="NSMutableArray" key="children">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                                        <reference ref="532491637"/>
+                                                       <reference ref="872721022"/>
+                                                       <reference ref="65333785"/>
                                                </object>
                                                <reference key="parent" ref="324576857"/>
                                        </object>
                                        <object class="IBObjectRecord">
+                                               <int key="objectID">89</int>
+                                               <reference key="object" ref="805122470"/>
+                                               <reference key="parent" ref="714382558"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
                                                <int key="objectID">64</int>
                                                <reference key="object" ref="532491637"/>
                                                <object class="NSMutableArray" key="children">
                                                <reference key="parent" ref="532491637"/>
                                        </object>
                                        <object class="IBObjectRecord">
-                                               <int key="objectID">89</int>
-                                               <reference key="object" ref="805122470"/>
-                                               <reference key="parent" ref="714382558"/>
-                                       </object>
-                                       <object class="IBObjectRecord">
                                                <int key="objectID">94</int>
                                                <reference key="object" ref="271380391"/>
                                                <reference key="parent" ref="719745349"/>
                                        </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">106</int>
+                                               <reference key="object" ref="872721022"/>
+                                               <object class="NSMutableArray" key="children">
+                                                       <bool key="EncodedWithXMLCoder">YES</bool>
+                                                       <reference ref="732530149"/>
+                                                       <reference ref="829573230"/>
+                                                       <reference ref="780237299"/>
+                                                       <reference ref="247862273"/>
+                                               </object>
+                                               <reference key="parent" ref="662500735"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">113</int>
+                                               <reference key="object" ref="732530149"/>
+                                               <reference key="parent" ref="872721022"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">123</int>
+                                               <reference key="object" ref="65333785"/>
+                                               <reference key="parent" ref="662500735"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">126</int>
+                                               <reference key="object" ref="829573230"/>
+                                               <reference key="parent" ref="872721022"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">109</int>
+                                               <reference key="object" ref="780237299"/>
+                                               <object class="NSMutableArray" key="children">
+                                                       <bool key="EncodedWithXMLCoder">YES</bool>
+                                                       <reference ref="241745124"/>
+                                               </object>
+                                               <reference key="parent" ref="872721022"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">108</int>
+                                               <reference key="object" ref="241745124"/>
+                                               <reference key="parent" ref="780237299"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">127</int>
+                                               <reference key="object" ref="247862273"/>
+                                               <reference key="parent" ref="872721022"/>
+                                       </object>
                                </object>
                        </object>
                        <object class="NSMutableDictionary" key="flattenedProperties">
                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                        <string>-1.CustomClassName</string>
                                        <string>-2.CustomClassName</string>
+                                       <string>106.IBPluginDependency</string>
+                                       <string>106.IBViewBoundsToFrameTransform</string>
+                                       <string>108.IBPluginDependency</string>
+                                       <string>113.IBPluginDependency</string>
+                                       <string>123.IBPluginDependency</string>
+                                       <string>123.IBViewBoundsToFrameTransform</string>
+                                       <string>126.IBPluginDependency</string>
+                                       <string>127.IBPluginDependency</string>
                                        <string>2.IBEditorWindowLastContentRect</string>
                                        <string>2.IBPluginDependency</string>
                                        <string>52.CustomClassName</string>
                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                        <string>UIApplication</string>
                                        <string>UIResponder</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <object class="NSAffineTransform">
+                                               <bytes key="NSTransformStruct">P4AAAL+AAAAAAAAAxDqAAA</bytes>
+                                       </object>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <object class="NSAffineTransform">
+                                               <bytes key="NSTransformStruct">P4AAAL+AAABD8AAAxHiAAA</bytes>
+                                       </object>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>{{125, 4}, {768, 1024}}</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>SkUISplitViewController</string>
-                                       <string>{{105, 216}, {1024, 768}}</string>
+                                       <string>{{-34, 57}, {768, 1024}}</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>SkUIDetailViewController</string>
                                        </object>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <object class="NSAffineTransform">
-                                               <bytes key="NSTransformStruct">P4AAAL+AAABBYAAAwigAAA</bytes>
+                                               <bytes key="NSTransformStruct">P4AAAL+AAAAAAAAAwigAAA</bytes>
                                        </object>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                </object>
                        </object>
                        <nil key="sourceID"/>
-                       <int key="maxID">96</int>
+                       <int key="maxID">129</int>
                </object>
                <object class="IBClassDescriber" key="IBDocument.Classes">
                        <object class="NSMutableArray" key="referencedPartialClassDescriptions">
                                                <bool key="EncodedWithXMLCoder">YES</bool>
                                                <object class="NSArray" key="dict.sortedKeys">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <string>handleDoubleTapGesture:</string>
-                                                       <string>handlePanGesture:</string>
-                                                       <string>handlePinchGesture:</string>
-                                                       <string>handleRotationGesture:</string>
-                                                       <string>handleSwipeGesture:</string>
+                                                       <string>enterServerIP:</string>
                                                        <string>printContent:</string>
+                                                       <string>usePipe:</string>
                                                </object>
                                                <object class="NSMutableArray" key="dict.values">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <string>UIGestureRecognizer</string>
-                                                       <string>UIPanGestureRecognizer</string>
-                                                       <string>UIPinchGestureRecognizer</string>
-                                                       <string>UIRotationGestureRecognizer</string>
-                                                       <string>UISwipeGestureRecognizer</string>
+                                                       <string>id</string>
+                                                       <string>id</string>
                                                        <string>id</string>
                                                </object>
                                        </object>
                                                <bool key="EncodedWithXMLCoder">YES</bool>
                                                <object class="NSArray" key="dict.sortedKeys">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <string>handleDoubleTapGesture:</string>
-                                                       <string>handlePanGesture:</string>
-                                                       <string>handlePinchGesture:</string>
-                                                       <string>handleRotationGesture:</string>
-                                                       <string>handleSwipeGesture:</string>
+                                                       <string>enterServerIP:</string>
                                                        <string>printContent:</string>
+                                                       <string>usePipe:</string>
                                                </object>
                                                <object class="NSMutableArray" key="dict.values">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                                        <object class="IBActionInfo">
-                                                               <string key="name">handleDoubleTapGesture:</string>
-                                                               <string key="candidateClassName">UIGestureRecognizer</string>
-                                                       </object>
-                                                       <object class="IBActionInfo">
-                                                               <string key="name">handlePanGesture:</string>
-                                                               <string key="candidateClassName">UIPanGestureRecognizer</string>
-                                                       </object>
-                                                       <object class="IBActionInfo">
-                                                               <string key="name">handlePinchGesture:</string>
-                                                               <string key="candidateClassName">UIPinchGestureRecognizer</string>
-                                                       </object>
-                                                       <object class="IBActionInfo">
-                                                               <string key="name">handleRotationGesture:</string>
-                                                               <string key="candidateClassName">UIRotationGestureRecognizer</string>
+                                                               <string key="name">enterServerIP:</string>
+                                                               <string key="candidateClassName">id</string>
                                                        </object>
                                                        <object class="IBActionInfo">
-                                                               <string key="name">handleSwipeGesture:</string>
-                                                               <string key="candidateClassName">UISwipeGestureRecognizer</string>
+                                                               <string key="name">printContent:</string>
+                                                               <string key="candidateClassName">id</string>
                                                        </object>
                                                        <object class="IBActionInfo">
-                                                               <string key="name">printContent:</string>
+                                                               <string key="name">usePipe:</string>
                                                                <string key="candidateClassName">id</string>
                                                        </object>
                                                </object>
                                        </object>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBProjectSource</string>
-                                               <string key="minorKey">SkUISplitViewController.h</string>
+                                               <string key="minorKey">iPad/SkUISplitViewController.h</string>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
                                        <string key="className">NSObject</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">QuartzCore.framework/Headers/CAAnimation.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
-                                       <string key="className">NSObject</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">QuartzCore.framework/Headers/CALayer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
-                                       <string key="className">NSObject</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
                                                <string key="minorKey">UIKit.framework/Headers/UIAccessibility.h</string>
                                        </object>
                                </object>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIGestureRecognizer</string>
-                                       <string key="superclassName">NSObject</string>
+                                       <string key="className">UIControl</string>
+                                       <string key="superclassName">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIGestureRecognizer.h</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UIControl.h</string>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIGestureRecognizer</string>
+                                       <string key="className">UILabel</string>
+                                       <string key="superclassName">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIGestureRecognizerSubclass.h</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UILabel.h</string>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
                                        <reference key="sourceIdentifier" ref="840300946"/>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIPanGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIPanGestureRecognizer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
-                                       <string key="className">UIPinchGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIPinchGestureRecognizer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
                                        <string key="className">UIResponder</string>
                                        <string key="superclassName">NSObject</string>
                                        <reference key="sourceIdentifier" ref="786211723"/>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIRotationGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIRotationGestureRecognizer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
                                        <string key="className">UIScrollView</string>
                                        <string key="superclassName">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UISwipeGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
+                                       <string key="className">UISwitch</string>
+                                       <string key="superclassName">UIControl</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UISwipeGestureRecognizer.h</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UISwitch.h</string>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
+                                       <string key="className">UIToolbar</string>
+                                       <string key="superclassName">UIView</string>
+                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
+                                               <string key="majorKey">IBFrameworkSource</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UIToolbar.h</string>
+                                       </object>
+                               </object>
+                               <object class="IBPartialClassDescription">
                                        <string key="className">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
                        <integer value="3100" key="NS.object.0"/>
                </object>
                <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
-               <string key="IBDocument.LastKnownRelativeProjectPath">../iOSShell.xcodeproj</string>
+               <string key="IBDocument.LastKnownRelativeProjectPath">../iOSSampleApp.xcodeproj</string>
                <int key="IBDocument.defaultPropertyAccessControl">3</int>
                <string key="IBCocoaTouchPluginVersion">141</string>
        </data>
index bdc18f7..dd1014c 100644 (file)
@@ -1,8 +1,9 @@
 #import <UIKit/UIKit.h>
 #import "SkUIRootViewController.h"
 #import "SkUIDetailViewController.h"
-  
+
 @interface SkUISplitViewController : UISplitViewController <UITableViewDelegate, UISplitViewControllerDelegate> {
+@private
     SkUIRootViewController* fRoot;
     SkUIDetailViewController* fDetail;
 }
@@ -10,4 +11,5 @@
 @property (nonatomic, retain) IBOutlet SkUIDetailViewController* fDetail;
 
 - (void)loadData;
+
 @end
index 4faa656..7c5d0e9 100644 (file)
@@ -1,6 +1,5 @@
 #import "SkUISplitViewController.h"
 
-
 @implementation SkUISplitViewController
 @synthesize fRoot, fDetail;
 
@@ -9,7 +8,7 @@
 }
 
 - (void)loadData {
-    [fRoot initList];
+    [fRoot initSamples];
     [fDetail populateRoot:fRoot];
 }
 
@@ -24,9 +23,7 @@
     [super dealloc];
 }
 
-#pragma mark -
-#pragma mark Table view delegate
-
+//Table View Delegate Methods
 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
     [fDetail goToItem:indexPath.row];
     if (fRoot.popoverController != nil) {
     }
 }
 
-#pragma mark -
-#pragma mark  Split view controller delegate
-- (void)splitViewController:(UISplitViewController*)svc 
-     willHideViewController:(UIViewController *)aViewController 
-          withBarButtonItem:(UIBarButtonItem*)barButtonItem 
+//Split View Controller Delegate
+- (void)splitViewController:(UISplitViewController*)svc
+     willHideViewController:(UIViewController *)aViewController
+          withBarButtonItem:(UIBarButtonItem*)barButtonItem
        forPopoverController:(UIPopoverController*)pc {
-    
+
     barButtonItem.title = @"Samples";
     fRoot.popoverController = pc;
     fRoot.popoverButtonItem = barButtonItem;
     [fDetail showRootPopoverButtonItem:fRoot.popoverButtonItem];
 }
 
-
-- (void)splitViewController:(UISplitViewController*)svc 
-     willShowViewController:(UIViewController *)aViewController 
+- (void)splitViewController:(UISplitViewController*)svc
+     willShowViewController:(UIViewController *)aViewController
   invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem {
     [fDetail invalidateRootPopoverButtonItem:fRoot.popoverButtonItem];
     fRoot.popoverController = nil;
     fRoot.popoverButtonItem = nil;
 }
 
-@end
\ No newline at end of file
+@end
index 17b0647..5d1a853 100644 (file)
@@ -1,15 +1,17 @@
 #import <UIKit/UIKit.h>
 #import "SkUINavigationController.h"
+
 @interface AppDelegate_iPhone : NSObject <UITableViewDelegate, UIApplicationDelegate> {
+@private
     UIWindow *window;
     SkUINavigationController* fRoot;
     SkUIDetailViewController* fDetail;
 }
-
 @property (nonatomic, retain) IBOutlet UIWindow *window;
 @property (nonatomic, retain) IBOutlet SkUINavigationController* fRoot;
 @property (nonatomic, retain) IBOutlet SkUIDetailViewController* fDetail;
 
 - (IBAction)displaySampleList:(id)sender;
+
 @end
 
index d3ee5b4..abd5057 100644 (file)
@@ -1,55 +1,47 @@
 #import "AppDelegate_iPhone.h"
 
 @implementation AppDelegate_iPhone
-
 @synthesize window, fRoot, fDetail;
 
-#pragma mark -
-#pragma mark Application lifecycle
-
-- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
-    [window addSubview:fRoot.view];
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
     [window addSubview:fDetail.view];
+    [window addSubview:fRoot.view];
     [fRoot loadData];
     fDetail.view.hidden = YES;
     [window makeKeyAndVisible];
-    
+
     return YES;
 }
 
-#pragma mark -
-#pragma mark Table view delegate
+- (void)dealloc {
+    [window release];
+    [fRoot release];
+    [fDetail release];
+    [super dealloc];
+}
 
+//Table View Delegate Methods
 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
     [fDetail goToItem:indexPath.row];
     [UIView transitionWithView:window
                       duration:0.5
                        options:UIViewAnimationOptionTransitionFlipFromRight
-                    animations:^{ 
+                    animations:^{
                         fRoot.view.hidden = YES;
                         fDetail.view.hidden = NO;
                     }
                     completion:NULL];
 }
 
-- (IBAction)displaySampleList:(id)sender
-{
+- (IBAction)displaySampleList:(id)sender {
     [UIView transitionWithView:window
                       duration:0.5
                        options:UIViewAnimationOptionTransitionFlipFromLeft
-                    animations:^{ 
+                    animations:^{
                         fRoot.view.hidden = NO;
                         fDetail.view.hidden = YES;
                     }
                     completion:NULL];
 }
 
-- (void)dealloc {
-    [window release];
-    [fRoot release];
-    [fDetail release];
-    [super dealloc];
-}
-
-
 @end
index 9762efb..aacf6a8 100644 (file)
@@ -12,7 +12,7 @@
                </object>
                <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
                        <bool key="EncodedWithXMLCoder">YES</bool>
-                       <integer value="50"/>
+                       <integer value="67"/>
                </object>
                <object class="NSArray" key="IBDocument.PluginDependencies">
                        <bool key="EncodedWithXMLCoder">YES</bool>
@@ -67,6 +67,7 @@
                                                        <string key="NSFrameSize">{320, 44}</string>
                                                        <reference key="NSSuperview" ref="456730278"/>
                                                        <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                       <int key="IBUIBarStyle">1</int>
                                                        <object class="NSArray" key="IBUIItems">
                                                                <bool key="EncodedWithXMLCoder">YES</bool>
                                                                <object class="IBUINavigationItem" id="891607485">
                                                                </object>
                                                        </object>
                                                </object>
+                                               <object class="IBUIToolbar" id="548887586">
+                                                       <reference key="NSNextResponder" ref="456730278"/>
+                                                       <int key="NSvFlags">266</int>
+                                                       <object class="NSMutableArray" key="NSSubviews">
+                                                               <bool key="EncodedWithXMLCoder">YES</bool>
+                                                               <object class="IBUISwitch" id="565373618">
+                                                                       <reference key="NSNextResponder" ref="548887586"/>
+                                                                       <int key="NSvFlags">292</int>
+                                                                       <string key="NSFrame">{{137, 9}, {94, 27}}</string>
+                                                                       <reference key="NSSuperview" ref="548887586"/>
+                                                                       <bool key="IBUIOpaque">NO</bool>
+                                                                       <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                                       <int key="IBUIContentHorizontalAlignment">0</int>
+                                                                       <int key="IBUIContentVerticalAlignment">0</int>
+                                                               </object>
+                                                       </object>
+                                                       <string key="NSFrame">{{0, 436}, {320, 44}}</string>
+                                                       <reference key="NSSuperview" ref="456730278"/>
+                                                       <bool key="IBUIOpaque">NO</bool>
+                                                       <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
+                                                       <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                       <int key="IBUIBarStyle">1</int>
+                                                       <object class="NSMutableArray" key="IBUIItems">
+                                                               <bool key="EncodedWithXMLCoder">YES</bool>
+                                                               <object class="IBUIBarButtonItem" id="819035899">
+                                                                       <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                                       <reference key="IBUIToolbar" ref="548887586"/>
+                                                                       <int key="IBUISystemItemIdentifier">5</int>
+                                                               </object>
+                                                               <object class="IBUIBarButtonItem" id="572928196">
+                                                                       <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                                       <float key="IBUIWidth">54</float>
+                                                                       <reference key="IBUIToolbar" ref="548887586"/>
+                                                                       <int key="IBUISystemItemIdentifier">6</int>
+                                                               </object>
+                                                               <object class="IBUIBarButtonItem" id="11913858">
+                                                                       <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                                       <reference key="IBUICustomView" ref="565373618"/>
+                                                                       <reference key="IBUIToolbar" ref="548887586"/>
+                                                               </object>
+                                                               <object class="IBUIBarButtonItem" id="357864452">
+                                                                       <string key="IBUITitle">Server IP</string>
+                                                                       <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                                       <int key="IBUIStyle">1</int>
+                                                                       <reference key="IBUIToolbar" ref="548887586"/>
+                                                               </object>
+                                                       </object>
+                                               </object>
+                                               <object class="IBUILabel" id="1033881221">
+                                                       <reference key="NSNextResponder" ref="456730278"/>
+                                                       <int key="NSvFlags">265</int>
+                                                       <string key="NSFrame">{{80, 443}, {59, 29}}</string>
+                                                       <reference key="NSSuperview" ref="456730278"/>
+                                                       <bool key="IBUIOpaque">NO</bool>
+                                                       <bool key="IBUIClipsSubviews">YES</bool>
+                                                       <int key="IBUIContentMode">7</int>
+                                                       <bool key="IBUIUserInteractionEnabled">NO</bool>
+                                                       <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+                                                       <string key="IBUIText">Pipe</string>
+                                                       <object class="NSFont" key="IBUIFont">
+                                                               <string key="NSName">Helvetica</string>
+                                                               <double key="NSSize">24</double>
+                                                               <int key="NSfFlags">16</int>
+                                                       </object>
+                                                       <object class="NSColor" key="IBUITextColor" id="535258798">
+                                                               <int key="NSColorSpace">3</int>
+                                                               <bytes key="NSWhite">MQA</bytes>
+                                                       </object>
+                                                       <reference key="IBUIHighlightedColor" ref="535258798"/>
+                                                       <int key="IBUIBaselineAdjustment">1</int>
+                                                       <float key="IBUIMinimumFontSize">10</float>
+                                               </object>
                                        </object>
                                        <string key="NSFrameSize">{320, 480}</string>
                                        <reference key="NSSuperview"/>
-                                       <object class="NSColor" key="IBUIBackgroundColor">
-                                               <int key="NSColorSpace">3</int>
-                                               <bytes key="NSWhite">MQA</bytes>
-                                               <object class="NSColorSpace" key="NSCustomColorSpace">
-                                                       <int key="NSID">2</int>
-                                               </object>
-                                       </object>
+                                       <reference key="IBUIBackgroundColor" ref="535258798"/>
+                                       <bool key="IBUIMultipleTouchEnabled">YES</bool>
                                        <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
                                </object>
                                <reference key="IBUIToolbarItems" ref="0"/>
                                                        <nil key="NSNextResponder"/>
                                                        <int key="NSvFlags">274</int>
                                                        <string key="NSFrameSize">{320, 416}</string>
-                                                       <object class="NSColor" key="IBUIBackgroundColor">
-                                                               <int key="NSColorSpace">3</int>
-                                                               <bytes key="NSWhite">MQA</bytes>
-                                                       </object>
+                                                       <reference key="IBUIBackgroundColor" ref="535258798"/>
                                                        <bool key="IBUIClipsSubviews">YES</bool>
                                                        <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
                                                        <bool key="IBUIAlwaysBounceVertical">YES</bool>
                                        </object>
                                        <int key="connectionID">66</int>
                                </object>
+                               <object class="IBConnectionRecord">
+                                       <object class="IBCocoaTouchEventConnection" key="connection">
+                                               <string key="label">usePipe:</string>
+                                               <reference key="source" ref="565373618"/>
+                                               <reference key="destination" ref="386778494"/>
+                                               <int key="IBEventType">13</int>
+                                       </object>
+                                       <int key="connectionID">74</int>
+                               </object>
+                               <object class="IBConnectionRecord">
+                                       <object class="IBCocoaTouchEventConnection" key="connection">
+                                               <string key="label">enterServerIP:</string>
+                                               <reference key="source" ref="357864452"/>
+                                               <reference key="destination" ref="386778494"/>
+                                       </object>
+                                       <int key="connectionID">76</int>
+                               </object>
                        </object>
                        <object class="IBMutableOrderedSet" key="objectRecords">
                                <object class="NSArray" key="orderedObjects">
                                                <object class="NSMutableArray" key="children">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                                        <reference ref="48218410"/>
+                                                       <reference ref="548887586"/>
+                                                       <reference ref="1033881221"/>
                                                </object>
                                                <reference key="parent" ref="386778494"/>
                                        </object>
                                                <reference key="object" ref="108468174"/>
                                                <reference key="parent" ref="891607485"/>
                                        </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">67</int>
+                                               <reference key="object" ref="548887586"/>
+                                               <object class="NSMutableArray" key="children">
+                                                       <bool key="EncodedWithXMLCoder">YES</bool>
+                                                       <reference ref="11913858"/>
+                                                       <reference ref="819035899"/>
+                                                       <reference ref="572928196"/>
+                                                       <reference ref="357864452"/>
+                                               </object>
+                                               <reference key="parent" ref="456730278"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">70</int>
+                                               <reference key="object" ref="11913858"/>
+                                               <object class="NSMutableArray" key="children">
+                                                       <bool key="EncodedWithXMLCoder">YES</bool>
+                                                       <reference ref="565373618"/>
+                                               </object>
+                                               <reference key="parent" ref="548887586"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">69</int>
+                                               <reference key="object" ref="565373618"/>
+                                               <reference key="parent" ref="11913858"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">71</int>
+                                               <reference key="object" ref="819035899"/>
+                                               <reference key="parent" ref="548887586"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">72</int>
+                                               <reference key="object" ref="572928196"/>
+                                               <reference key="parent" ref="548887586"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">73</int>
+                                               <reference key="object" ref="1033881221"/>
+                                               <reference key="parent" ref="456730278"/>
+                                       </object>
+                                       <object class="IBObjectRecord">
+                                               <int key="objectID">75</int>
+                                               <reference key="object" ref="357864452"/>
+                                               <reference key="parent" ref="548887586"/>
+                                       </object>
                                </object>
                        </object>
                        <object class="NSMutableDictionary" key="flattenedProperties">
                                        <string>51.IBPluginDependency</string>
                                        <string>54.IBPluginDependency</string>
                                        <string>62.IBPluginDependency</string>
+                                       <string>67.IBPluginDependency</string>
+                                       <string>67.IBViewBoundsToFrameTransform</string>
+                                       <string>69.IBPluginDependency</string>
+                                       <string>71.IBPluginDependency</string>
+                                       <string>72.IBPluginDependency</string>
+                                       <string>73.IBPluginDependency</string>
+                                       <string>73.IBViewBoundsToFrameTransform</string>
+                                       <string>75.IBPluginDependency</string>
                                </object>
                                <object class="NSMutableArray" key="dict.values">
                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                        <string>{{363, 1064}, {320, 480}}</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>SkUIDetailViewController</string>
-                                       <string>{{413, 1055}, {320, 480}}</string>
+                                       <string>{{454, 570}, {320, 480}}</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <object class="NSMutableDictionary">
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                        <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <object class="NSAffineTransform">
+                                               <bytes key="NSTransformStruct">P4AAAL+AAAAAAAAAw+8AAA</bytes>
+                                       </object>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+                                       <object class="NSAffineTransform">
+                                               <bytes key="NSTransformStruct">P4AAAL+AAABC3gAAw+sAAA</bytes>
+                                       </object>
+                                       <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
                                </object>
                        </object>
                        <object class="NSMutableDictionary" key="unlocalizedProperties">
                                </object>
                        </object>
                        <nil key="sourceID"/>
-                       <int key="maxID">66</int>
+                       <int key="maxID">76</int>
                </object>
                <object class="IBClassDescriber" key="IBDocument.Classes">
                        <object class="NSMutableArray" key="referencedPartialClassDescriptions">
                                                <bool key="EncodedWithXMLCoder">YES</bool>
                                                <object class="NSArray" key="dict.sortedKeys">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <string>handleDoubleTapGesture:</string>
-                                                       <string>handlePanGesture:</string>
-                                                       <string>handlePinchGesture:</string>
-                                                       <string>handleRotationGesture:</string>
-                                                       <string>handleSwipeGesture:</string>
+                                                       <string>enterServerIP:</string>
                                                        <string>printContent:</string>
+                                                       <string>usePipe:</string>
                                                </object>
                                                <object class="NSMutableArray" key="dict.values">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <string>UIGestureRecognizer</string>
-                                                       <string>UIPanGestureRecognizer</string>
-                                                       <string>UIPinchGestureRecognizer</string>
-                                                       <string>UIRotationGestureRecognizer</string>
-                                                       <string>UISwipeGestureRecognizer</string>
+                                                       <string>id</string>
+                                                       <string>id</string>
                                                        <string>id</string>
                                                </object>
                                        </object>
                                                <bool key="EncodedWithXMLCoder">YES</bool>
                                                <object class="NSArray" key="dict.sortedKeys">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <string>handleDoubleTapGesture:</string>
-                                                       <string>handlePanGesture:</string>
-                                                       <string>handlePinchGesture:</string>
-                                                       <string>handleRotationGesture:</string>
-                                                       <string>handleSwipeGesture:</string>
+                                                       <string>enterServerIP:</string>
                                                        <string>printContent:</string>
+                                                       <string>usePipe:</string>
                                                </object>
                                                <object class="NSMutableArray" key="dict.values">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                                        <object class="IBActionInfo">
-                                                               <string key="name">handleDoubleTapGesture:</string>
-                                                               <string key="candidateClassName">UIGestureRecognizer</string>
-                                                       </object>
-                                                       <object class="IBActionInfo">
-                                                               <string key="name">handlePanGesture:</string>
-                                                               <string key="candidateClassName">UIPanGestureRecognizer</string>
-                                                       </object>
-                                                       <object class="IBActionInfo">
-                                                               <string key="name">handlePinchGesture:</string>
-                                                               <string key="candidateClassName">UIPinchGestureRecognizer</string>
-                                                       </object>
-                                                       <object class="IBActionInfo">
-                                                               <string key="name">handleRotationGesture:</string>
-                                                               <string key="candidateClassName">UIRotationGestureRecognizer</string>
+                                                               <string key="name">enterServerIP:</string>
+                                                               <string key="candidateClassName">id</string>
                                                        </object>
                                                        <object class="IBActionInfo">
-                                                               <string key="name">handleSwipeGesture:</string>
-                                                               <string key="candidateClassName">UISwipeGestureRecognizer</string>
+                                                               <string key="name">printContent:</string>
+                                                               <string key="candidateClassName">id</string>
                                                        </object>
                                                        <object class="IBActionInfo">
-                                                               <string key="name">printContent:</string>
+                                                               <string key="name">usePipe:</string>
                                                                <string key="candidateClassName">id</string>
                                                        </object>
                                                </object>
                                        <string key="className">NSObject</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">QuartzCore.framework/Headers/CAAnimation.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
-                                       <string key="className">NSObject</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">QuartzCore.framework/Headers/CALayer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
-                                       <string key="className">NSObject</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
                                                <string key="minorKey">UIKit.framework/Headers/UIAccessibility.h</string>
                                        </object>
                                </object>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIGestureRecognizer</string>
-                                       <string key="superclassName">NSObject</string>
+                                       <string key="className">UIControl</string>
+                                       <string key="superclassName">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIGestureRecognizer.h</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UIControl.h</string>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIGestureRecognizer</string>
+                                       <string key="className">UILabel</string>
+                                       <string key="superclassName">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIGestureRecognizerSubclass.h</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UILabel.h</string>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
                                        <reference key="sourceIdentifier" ref="443745583"/>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIPanGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIPanGestureRecognizer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
-                                       <string key="className">UIPinchGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIPinchGestureRecognizer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
                                        <string key="className">UIResponder</string>
                                        <string key="superclassName">NSObject</string>
                                        <reference key="sourceIdentifier" ref="565734826"/>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UIRotationGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UIRotationGestureRecognizer.h</string>
-                                       </object>
-                               </object>
-                               <object class="IBPartialClassDescription">
                                        <string key="className">UIScrollView</string>
                                        <string key="superclassName">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
-                                       <string key="className">UISwipeGestureRecognizer</string>
-                                       <string key="superclassName">UIGestureRecognizer</string>
+                                       <string key="className">UISwitch</string>
+                                       <string key="superclassName">UIControl</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
-                                               <string key="minorKey">UIKit.framework/Headers/UISwipeGestureRecognizer.h</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UISwitch.h</string>
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
                                        </object>
                                </object>
                                <object class="IBPartialClassDescription">
+                                       <string key="className">UIToolbar</string>
+                                       <string key="superclassName">UIView</string>
+                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
+                                               <string key="majorKey">IBFrameworkSource</string>
+                                               <string key="minorKey">UIKit.framework/Headers/UIToolbar.h</string>
+                                       </object>
+                               </object>
+                               <object class="IBPartialClassDescription">
                                        <string key="className">UIView</string>
                                        <object class="IBClassDescriptionSource" key="sourceIdentifier">
                                                <string key="majorKey">IBFrameworkSource</string>
                        <integer value="3100" key="NS.object.0"/>
                </object>
                <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
-               <string key="IBDocument.LastKnownRelativeProjectPath">../iOSShell.xcodeproj</string>
+               <string key="IBDocument.LastKnownRelativeProjectPath">../iOSSampleApp.xcodeproj</string>
                <int key="IBDocument.defaultPropertyAccessControl">3</int>
                <string key="IBCocoaTouchPluginVersion">141</string>
        </data>
index aa6697b..c119ee4 100644 (file)
@@ -2,8 +2,8 @@
 #import "SkUIRootViewController.h"
 #import "SkUIDetailViewController.h"
 
-
 @interface SkUINavigationController : UINavigationController {
+@private
     SkUIRootViewController* fRoot;
     SkUIDetailViewController* fDetail;
 }
@@ -11,4 +11,5 @@
 @property (nonatomic, retain) IBOutlet SkUIDetailViewController* fDetail;
 
 - (void)loadData;
+
 @end
index d39cc48..179eed7 100644 (file)
@@ -4,7 +4,7 @@
 @synthesize fRoot, fDetail;
 
 - (void)loadData {
-    [fRoot initList];
+    [fRoot initSamples];
     [fDetail populateRoot:fRoot];
 }
 
index 1bf3a76..7b634c0 100644 (file)
@@ -17,7 +17,6 @@
 
 #include "SkTime.h"
 
-#if defined(SK_BUILD_FOR_UNIX) || defined(SK_BUILD_FOR_MAC)
 #include <sys/time.h>
 #include <time.h>
 
index 33c572a..b74ea14 100755 (executable)
@@ -1,7 +1,7 @@
 /*
     Copyright 2010, Tetrark Inc.
 */
-
+#include <Foundation/Foundation.h>
 #include "SkOSFile.h"
 #include "SkString.h"
 
@@ -17,7 +17,7 @@ SkFILE* sk_fopen(const char cpath[], SkFILE_Flags flags) {
     }
 
     SkString cname, csuffix;
-   
+
     const char* start = strrchr(cpath, '/');
     if (NULL == start) {
         start = cpath;
@@ -33,7 +33,7 @@ SkFILE* sk_fopen(const char cpath[], SkFILE_Flags flags) {
 
     cname.set(start, stop - start - 1);
     csuffix.set(stop);
-            
+
     NSBundle* bundle = [NSBundle mainBundle];
     NSString* name = [NSString stringWithUTF8String:cname.c_str()];
     NSString* suffix = [NSString stringWithUTF8String:csuffix.c_str()];
index 3611ba6..629cb3d 100755 (executable)
@@ -1,16 +1,16 @@
 #import <UIKit/UIKit.h>
 #import <OpenGLES/EAGL.h>
 #import <OpenGLES/ES1/gl.h>
-#include "SkTypes.h"
-#include "SkWindow.h"
 #include "SkCanvas.h"
+#include "SkGraphics.h"
+#import "SkIOSNotifier.h"
 #include "SkOSMenu.h"
 #include "SkTime.h"
-#include "SkGraphics.h"
+#include "SkTypes.h"
+#import "SkUIView_shell.h"
+#include "SkWindow.h"
 
 #define kINVAL_UIVIEW_EventType "inval-uiview"
-#include "SkIOSNotifier.h"
-#import "SkUIView_shell.h"
 
 SkOSWindow::SkOSWindow(void* hWnd) : fHWND(hWnd) {
     fInvalEventIsPending = false;
@@ -37,16 +37,19 @@ bool SkOSWindow::onEvent(const SkEvent& evt) {
     if ([(SkUIView_shell*)fHWND onHandleEvent:evt]) {
         return true;
     }
-    return INHERITED::onEvent(evt);
+    return this->INHERITED::onEvent(evt);
+}
+
+bool SkOSWindow::onDispatchClick(int x, int y, Click::State state, void* owner) {
+    return this->INHERITED::onDispatchClick(x, y, state, owner);
 }
 
 void SkOSWindow::onSetTitle(const char title[]) {
     [(SkUIView_shell*)fHWND setSkTitle:title];
 }
 
-void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
-{
-    
+void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu) {
+
 }
 
 ///////////////////////////////////////////////////////////////////////////////////////
@@ -54,16 +57,16 @@ void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
  #if 1
  static void NonEmptyCallback(CFRunLoopTimerRef timer, void*) {
  //    printf("------- event queue depth = %d\n", SkEvent::CountEventsOnQueue());
+
  if (!SkEvent::ProcessEvent()) {
  CFRunLoopTimerInvalidate(timer);
  }
  }
+
  void SkEvent::SignalNonEmptyQueue() {
  double tinyDelay = 1.0 / 60;
  CFRunLoopTimerRef timer;
+
  timer = CFRunLoopTimerCreate(NULL,
  CACurrentMediaTime() + tinyDelay,
  tinyDelay,
@@ -85,7 +88,7 @@ void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
  static CFRunLoopSourceRef gNonEmptySource;
  static CFRunLoopRef gNoneEmptyRunLoop;
  static bool gAlreadySignaled;
+
  static void signal_nonempty() {
  if (!gAlreadySignaled) {
  NONE_EMPTY_CODE(printf("--- before resignal\n");)
@@ -95,7 +98,7 @@ void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
  NONE_EMPTY_CODE(printf("--- after resignal\n");)
  }
  }
+
  static void NonEmptySourceCallback(void*) {
  gAlreadySignaled = false;
  NONE_EMPTY_CODE(printf("---- service NonEmptySourceCallback %d\n", SkEvent::CountEventsOnQueue());)
@@ -104,11 +107,11 @@ void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
  }
  NONE_EMPTY_CODE(printf("----- after service\n");)
  }
+
  void SkEvent::SignalNonEmptyQueue() {
  if (NULL == gNonEmptySource) {
  gNoneEmptyRunLoop = CFRunLoopGetMain();
+
  CFIndex order = 0;  // should this be lower, to not start UIEvents?
  CFRunLoopSourceContext context;
  sk_bzero(&context, sizeof(context));
@@ -117,7 +120,7 @@ void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
  // our perform callback
  context.perform = NonEmptySourceCallback;
  gNonEmptySource = CFRunLoopSourceCreate(NULL, order, &context);
+
  CFRunLoopAddSource(gNoneEmptyRunLoop,
  gNonEmptySource,
  kCFRunLoopCommonModes);
@@ -128,20 +131,20 @@ void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
  @interface NonEmptyHandler : NSObject {}
  - (void)signalNonEmptyQ;
  @end
+
  @implementation NonEmptyHandler
+
  - (void)callProccessEvent {
  //    printf("----- callProcessEvent\n");
  if (SkEvent::ProcessEvent()) {
  [self signalNonEmptyQ];
  }
  }
+
  - (void)signalNonEmptyQ {
  [self performSelectorOnMainThread:@selector(callProccessEvent) withObject:nil waitUntilDone:NO];
  }
+
  void SkEvent::SignalNonEmptyQueue() {
  static id gNonEmptyQueueObject;
  if (nil == gNonEmptyQueueObject) {
@@ -149,32 +152,32 @@ void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu)
  }
  [gNonEmptyQueueObject signalNonEmptyQ];
  }
+
  @end
+
  #endif
+
  ///////////////////////////////////////////////////////////////////////////////
+
  static CFRunLoopTimerRef gTimer;
+
  static void TimerCallback(CFRunLoopTimerRef timer, void* info) {
  gTimer = NULL;
  SkEvent::ServiceQueueTimer();
  }
+
  void SkEvent::SignalQueueTimer(SkMSec delay)
  {
  //We always release the timer right after we've added it to our RunLoop,
  //thus we don't worry about freeing it later: if it fires our callback,
  //it gets automatically freed, as it does if we call invalidate()
+
  if (gTimer) {
  // our callback wasn't called, so invalidate it
  CFRunLoopTimerInvalidate(gTimer);
  gTimer = NULL;
  }
+
  if (delay) {
  gTimer = CFRunLoopTimerCreate(NULL,
  CACurrentMediaTime() + delay/1000.0,
@@ -205,4 +208,3 @@ void SkOSWindow::detachGL() {
 void SkOSWindow::presentGL() {
     glFlush();
 }
-