aboutsummaryrefslogtreecommitdiffhomepage
path: root/experimental/iOSSampleApp
diff options
context:
space:
mode:
authorGravatar bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-09-27 16:04:54 +0000
committerGravatar bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-09-27 16:04:54 +0000
commit230504d6b5ff848913638c399ad43c0b6bcf723f (patch)
treefb9520607f89c1100bcc4d19fdbce6686c24f36a /experimental/iOSSampleApp
parent34dc9a2dae8e9a5c4d3366a6957724e7289391e3 (diff)
Make SampleApp work on iPhone/iOS simulator.
Several parts to this: 1) The DeviceManager subclass for iOS was rewritten because the base class changed. 2) Two old samples that rely on hardcoded paths to images are deleted. They hit assertions in SkImageRef. No one has the required images to run these anyway. 3) argv must be non-NULL. 4) The UI delegate must not be loaded from the NIB for viewDidLoad ordering reasons. So I removed an IBOutlet link from the window to the splitview controller in the iPad's NIB file. The split view is attached by the AppDelegate programmatically. This doesn't make GPU work. That will come in a later change. Review URL: https://codereview.appspot.com/6561056/ git-svn-id: http://skia.googlecode.com/svn/trunk@5712 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'experimental/iOSSampleApp')
-rw-r--r--experimental/iOSSampleApp/SkSampleUIView.mm216
-rw-r--r--experimental/iOSSampleApp/iPad/MainWindow_iPad.xib422
2 files changed, 220 insertions, 418 deletions
diff --git a/experimental/iOSSampleApp/SkSampleUIView.mm b/experimental/iOSSampleApp/SkSampleUIView.mm
index 54177878c0..d96e550fbc 100644
--- a/experimental/iOSSampleApp/SkSampleUIView.mm
+++ b/experimental/iOSSampleApp/SkSampleUIView.mm
@@ -15,107 +15,192 @@
#include "gl/GrGLInterface.h"
#include "SkGpuDevice.h"
#include "SkCGUtils.h"
+#include "SampleApp.h"
+
class SkiOSDeviceManager : public SampleWindow::DeviceManager {
public:
SkiOSDeviceManager() {
- fGrContext = NULL;
- fGrRenderTarget = NULL;
- usingGL = false;
+#if SK_SUPPORT_GPU
+ fCurContext = NULL;
+ fCurIntf = NULL;
+ fCurRenderTarget = NULL;
+ fMSAASampleCount = 0;
+#endif
+ fBackend = SkOSWindow::kNone_BackEndType;
}
+
virtual ~SkiOSDeviceManager() {
- SkSafeUnref(fGrContext);
- SkSafeUnref(fGrRenderTarget);
+#if SK_SUPPORT_GPU
+ SkSafeUnref(fCurContext);
+ SkSafeUnref(fCurIntf);
+ SkSafeUnref(fCurRenderTarget);
+#endif
}
- virtual void init(SampleWindow* win) {
- win->attach(kNativeGL_BackEndType);
- if (NULL == fGrContext) {
-#ifdef USE_GL_1
- fGrContext = GrContext::Create(kOpenGL_Fixed_GrEngine, NULL);
-#else
- fGrContext = GrContext::Create(kOpenGL_Shaders_GrEngine, NULL);
-#endif
+ virtual void setUpBackend(SampleWindow* win, int msaaSampleCount) SK_OVERRIDE {
+ SkASSERT(SkOSWindow::kNone_BackEndType == fBackend);
+
+ fBackend = SkOSWindow::kNone_BackEndType;
+
+#if SK_SUPPORT_GPU
+ switch (win->getDeviceType()) {
+ // these two don't use GL
+ case SampleWindow::kRaster_DeviceType:
+ case SampleWindow::kPicture_DeviceType:
+ break;
+ // these guys use the native backend
+ case SampleWindow::kGPU_DeviceType:
+ case SampleWindow::kNullGPU_DeviceType:
+ fBackend = SkOSWindow::kNativeGL_BackEndType;
+ break;
+ default:
+ SkASSERT(false);
+ break;
}
- if (NULL == fGrContext) {
- SkDebugf("Failed to setup 3D");
- win->detachGL();
+ bool result = win->attach(fBackend, msaaSampleCount);
+ if (!result) {
+ SkDebugf("Failed to initialize GL");
+ return;
}
- }
-
- virtual bool supportsDeviceType(SampleWindow::DeviceType dType) {
- switch (dType) {
+ fMSAASampleCount = msaaSampleCount;
+
+ SkASSERT(NULL == fCurIntf);
+ switch (win->getDeviceType()) {
+ // these two don't use GL
case SampleWindow::kRaster_DeviceType:
- case SampleWindow::kPicture_DeviceType: // fallthru
- return true;
+ case SampleWindow::kPicture_DeviceType:
+ fCurIntf = NULL;
+ break;
case SampleWindow::kGPU_DeviceType:
- return NULL != fGrContext;
+ fCurIntf = GrGLCreateNativeInterface();
+ break;
+ case SampleWindow::kNullGPU_DeviceType:
+ fCurIntf = GrGLCreateNullInterface();
+ break;
default:
- return false;
+ SkASSERT(false);
+ break;
}
+
+ SkASSERT(NULL == fCurContext);
+ if (SkOSWindow::kNone_BackEndType != fBackend) {
+ fCurContext = GrContext::Create(kOpenGL_Shaders_GrEngine,
+ (GrPlatform3DContext) fCurIntf);
+ }
+
+ if ((NULL == fCurContext || NULL == fCurIntf) &&
+ SkOSWindow::kNone_BackEndType != fBackend) {
+ // We need some context and interface to see results if we're using a GL backend
+ SkSafeUnref(fCurContext);
+ SkSafeUnref(fCurIntf);
+ SkDebugf("Failed to setup 3D");
+ win->detach();
+ }
+#endif // SK_SUPPORT_GPU
+ // call windowSizeChanged to create the render target
+ this->windowSizeChanged(win);
+ }
+
+ virtual void tearDownBackend(SampleWindow *win) SK_OVERRIDE {
+#if SK_SUPPORT_GPU
+ SkSafeUnref(fCurContext);
+ fCurContext = NULL;
+
+ SkSafeUnref(fCurIntf);
+ fCurIntf = NULL;
+
+ SkSafeUnref(fCurRenderTarget);
+ fCurRenderTarget = NULL;
+#endif
+ win->detach();
+ fBackend = SampleWindow::kNone_BackEndType;
}
+
virtual bool prepareCanvas(SampleWindow::DeviceType dType,
SkCanvas* canvas,
- SampleWindow* win) {
- if (SampleWindow::kGPU_DeviceType == dType) {
- canvas->setDevice(new SkGpuDevice(fGrContext, fGrRenderTarget))->unref();
- usingGL = true;
- }
- else {
- //The clip needs to be applied with a device attached to the canvas
- canvas->setBitmapDevice(win->getBitmap());
- usingGL = false;
+ SampleWindow* win) SK_OVERRIDE {
+ switch (dType) {
+ // use the window's bmp for these two
+ case SampleWindow::kRaster_DeviceType:
+ case SampleWindow::kPicture_DeviceType:
+ canvas->setBitmapDevice(win->getBitmap());
+ break;
+#if SK_SUPPORT_GPU
+ // create a GPU device for these two
+ case SampleWindow::kGPU_DeviceType:
+ case SampleWindow::kNullGPU_DeviceType:
+ if (fCurContext) {
+ canvas->setDevice(new SkGpuDevice(fCurContext, fCurRenderTarget))->unref();
+ } else {
+ return false;
+ }
+ break;
+#endif
+ default:
+ SkASSERT(false);
+ return false;
}
return true;
}
+
virtual void publishCanvas(SampleWindow::DeviceType dType,
SkCanvas* canvas,
- SampleWindow* win) {
- if (SampleWindow::kGPU_DeviceType == dType) {
- fGrContext->flush();
- }
- else {
- //CGContextRef cg = UIGraphicsGetCurrentContext();
- //SkCGDrawBitmap(cg, win->getBitmap(), 0, 0);
- }
- win->presentGL();
+ SampleWindow* win) SK_OVERRIDE {
+ win->present();
}
- virtual void windowSizeChanged(SampleWindow* win) {
- if (fGrContext) {
- win->attach(kNativeGL_BackEndType);
+ virtual void windowSizeChanged(SampleWindow* win) SK_OVERRIDE {
+#if SK_SUPPORT_GPU
+ if (fCurContext) {
+ win->attach(fBackend, fMSAASampleCount);
- GrPlatformSurfaceDesc desc;
- desc.reset();
- desc.fSurfaceType = kRenderTarget_GrPlatformSurfaceType;
+ GrPlatformRenderTargetDesc desc;
desc.fWidth = SkScalarRound(win->width());
desc.fHeight = SkScalarRound(win->height());
desc.fConfig = kSkia8888_PM_GrPixelConfig;
- const GrGLInterface* gl = GrGLGetDefaultGLInterface();
- GrAssert(NULL != gl);
- GR_GL_GetIntegerv(gl, GR_GL_STENCIL_BITS, &desc.fStencilBits);
- GR_GL_GetIntegerv(gl, GR_GL_SAMPLES, &desc.fSampleCnt);
+ glGetIntegerv(GL_SAMPLES, &desc.fSampleCnt);
+ glGetIntegerv(GL_STENCIL_BITS, &desc.fStencilBits);
GrGLint buffer;
- GR_GL_GetIntegerv(gl, GR_GL_FRAMEBUFFER_BINDING, &buffer);
- desc.fPlatformRenderTarget = buffer;
+ glGetIntegerv(GL_FRAMEBUFFER_BINDING, &buffer);
+ desc.fRenderTargetHandle = buffer;
- SkSafeUnref(fGrRenderTarget);
- fGrRenderTarget = static_cast<GrRenderTarget*>(
- fGrContext->createPlatformSurface(desc));
+ SkSafeUnref(fCurRenderTarget);
+ fCurRenderTarget = fCurContext->createPlatformRenderTarget(desc);
}
+#endif
}
- bool isUsingGL() { return usingGL; }
+ virtual GrContext* getGrContext() SK_OVERRIDE {
+#if SK_SUPPORT_GPU
+ return fCurContext;
+#else
+ return NULL;
+#endif
+ }
- virtual GrContext* getGrContext() { return fGrContext; }
-
virtual GrRenderTarget* getGrRenderTarget() SK_OVERRIDE {
- return fGrRenderTarget;
+#if SK_SUPPORT_GPU
+ return fCurRenderTarget;
+#else
+ return NULL;
+#endif
}
+
+ bool isUsingGL() const { return SkOSWindow::kNone_BackEndType != fBackend; }
+
private:
- bool usingGL;
- GrContext* fGrContext;
- GrRenderTarget* fGrRenderTarget;
+
+#if SK_SUPPORT_GPU
+ GrContext* fCurContext;
+ const GrGLInterface* fCurIntf;
+ GrRenderTarget* fCurRenderTarget;
+ int fMSAASampleCount;
+#endif
+
+ SkOSWindow::SkBackEndTypes fBackend;
+
+ typedef SampleWindow::DeviceManager INHERITED;
};
////////////////////////////////////////////////////////////////////////////////
@@ -254,7 +339,8 @@ static FPSState gFPS;
[newActions release];
fDevManager = new SkiOSDeviceManager;
- fWind = new SampleWindow(self, NULL, NULL, fDevManager);
+ static char* kDummyArgv = "dummyExecutableName";
+ fWind = new SampleWindow(self, 1, &kDummyArgv, fDevManager);
fWind->resize(self.frame.size.width, self.frame.size.height, SKWIND_CONFIG);
}
return self;
diff --git a/experimental/iOSSampleApp/iPad/MainWindow_iPad.xib b/experimental/iOSSampleApp/iPad/MainWindow_iPad.xib
index 34746e3621..6b197d063e 100644
--- a/experimental/iOSSampleApp/iPad/MainWindow_iPad.xib
+++ b/experimental/iOSSampleApp/iPad/MainWindow_iPad.xib
@@ -1,31 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<archive type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="7.10">
<data>
- <int key="IBDocument.SystemTarget">1056</int>
- <string key="IBDocument.SystemVersion">10K540</string>
- <string key="IBDocument.InterfaceBuilderVersion">851</string>
- <string key="IBDocument.AppKitVersion">1038.36</string>
- <string key="IBDocument.HIToolboxVersion">461.00</string>
+ <int key="IBDocument.SystemTarget">1296</int>
+ <string key="IBDocument.SystemVersion">12B19</string>
+ <string key="IBDocument.InterfaceBuilderVersion">2549</string>
+ <string key="IBDocument.AppKitVersion">1187</string>
+ <string key="IBDocument.HIToolboxVersion">624.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string key="NS.object.0">141</string>
+ <string key="NS.object.0">1498</string>
</object>
- <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
+ <object class="NSArray" key="IBDocument.IntegratedClassDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
- <integer value="143"/>
+ <string>IBProxyObject</string>
+ <string>IBUICustomObject</string>
+ <string>IBUINavigationBar</string>
+ <string>IBUINavigationController</string>
+ <string>IBUINavigationItem</string>
+ <string>IBUISplitViewController</string>
+ <string>IBUITableView</string>
+ <string>IBUITableViewController</string>
+ <string>IBUIView</string>
+ <string>IBUIViewController</string>
+ <string>IBUIWindow</string>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
</object>
<object class="NSMutableDictionary" key="IBDocument.Metadata">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys" id="0">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
+ <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
+ <integer value="1" key="NS.object.0"/>
</object>
<object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -37,10 +42,15 @@
<string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
</object>
+ <object class="IBUICustomObject" id="250404236">
+ <string key="targetRuntimeIdentifier">IBIPadFramework</string>
+ </object>
<object class="IBUIWindow" id="62075450">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">292</int>
<string key="NSFrameSize">{768, 1024}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<object class="NSColor" key="IBUIBackgroundColor">
<int key="NSColorSpace">1</int>
<bytes key="NSRGB">MSAxIDEAA</bytes>
@@ -53,15 +63,15 @@
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
<bool key="IBUIResizesToFullScreen">YES</bool>
</object>
- <object class="IBUICustomObject" id="250404236">
- <string key="targetRuntimeIdentifier">IBIPadFramework</string>
- </object>
<object class="IBUISplitViewController" id="143532475">
- <reference key="IBUIToolbarItems" ref="0"/>
+ <object class="NSArray" key="IBUIToolbarItems" id="0">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
<object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics">
<int key="IBUIStatusBarStyle">2</int>
</object>
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
+ <int key="IBUIInterfaceOrientation">1</int>
<int key="interfaceOrientation">1</int>
</object>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
@@ -72,6 +82,7 @@
<int key="IBUIStatusBarStyle">2</int>
</object>
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
+ <int key="IBUIInterfaceOrientation">1</int>
<int key="interfaceOrientation">1</int>
</object>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
@@ -89,10 +100,9 @@
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBUITableViewController" id="714382558">
<object class="IBUITableView" key="IBUIView" id="805122470">
- <reference key="NSNextResponder"/>
+ <nil key="NSNextResponder"/>
<int key="NSvFlags">274</int>
<string key="NSFrameSize">{320, 960}</string>
- <reference key="NSSuperview"/>
<object class="NSColor" key="IBUIBackgroundColor" id="933040628">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MQA</bytes>
@@ -108,7 +118,6 @@
<float key="IBUISectionFooterHeight">22</float>
</object>
<object class="IBUINavigationItem" key="IBUINavigationItem" id="136024681">
- <reference key="IBUINavigationBar"/>
<string key="IBUITitle">Samples</string>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
</object>
@@ -117,6 +126,7 @@
<int key="IBUIStatusBarStyle">2</int>
</object>
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
+ <int key="IBUIInterfaceOrientation">1</int>
<int key="interfaceOrientation">1</int>
</object>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
@@ -131,6 +141,7 @@
<int key="IBUIStatusBarStyle">2</int>
</object>
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
+ <int key="IBUIInterfaceOrientation">1</int>
<int key="interfaceOrientation">1</int>
</object>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
@@ -148,22 +159,21 @@
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBUIViewController" id="659859393">
<object class="IBUIView" key="IBUIView" id="879616490">
- <reference key="NSNextResponder"/>
+ <nil key="NSNextResponder"/>
<int key="NSvFlags">274</int>
<string key="NSFrameSize">{768, 960}</string>
- <reference key="NSSuperview"/>
<reference key="IBUIBackgroundColor" ref="933040628"/>
<bool key="IBUIMultipleTouchEnabled">YES</bool>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
</object>
<reference key="IBUIToolbarItems" ref="0"/>
<object class="IBUINavigationItem" key="IBUINavigationItem" id="245890386">
- <reference key="IBUINavigationBar"/>
<string key="IBUITitle">Title</string>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
</object>
<reference key="IBUIParentViewController" ref="1006871283"/>
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
+ <int key="IBUIInterfaceOrientation">1</int>
<int key="interfaceOrientation">1</int>
</object>
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
@@ -178,14 +188,6 @@
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">window</string>
- <reference key="source" ref="250404236"/>
- <reference key="destination" ref="62075450"/>
- </object>
- <int key="connectionID">7</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
<string key="label">delegate</string>
<reference key="source" ref="841351856"/>
<reference key="destination" ref="250404236"/>
@@ -194,6 +196,14 @@
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
+ <string key="label">window</string>
+ <reference key="source" ref="250404236"/>
+ <reference key="destination" ref="62075450"/>
+ </object>
+ <int key="connectionID">7</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchOutletConnection" key="connection">
<string key="label">splitViewController</string>
<reference key="source" ref="250404236"/>
<reference key="destination" ref="143532475"/>
@@ -210,11 +220,11 @@
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">rootViewController</string>
- <reference key="source" ref="62075450"/>
- <reference key="destination" ref="143532475"/>
+ <string key="label">fDetail</string>
+ <reference key="source" ref="143532475"/>
+ <reference key="destination" ref="659859393"/>
</object>
- <int key="connectionID">88</int>
+ <int key="connectionID">172</int>
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
@@ -232,14 +242,6 @@
</object>
<int key="connectionID">93</int>
</object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">fDetail</string>
- <reference key="source" ref="143532475"/>
- <reference key="destination" ref="659859393"/>
- </object>
- <int key="connectionID">172</int>
- </object>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
<object class="NSArray" key="orderedObjects">
@@ -367,19 +369,18 @@
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>-1.CustomClassName</string>
+ <string>-1.IBPluginDependency</string>
<string>-2.CustomClassName</string>
- <string>138.IBEditorWindowLastContentRect</string>
+ <string>-2.IBPluginDependency</string>
<string>138.IBPluginDependency</string>
<string>140.IBPluginDependency</string>
<string>142.CustomClassName</string>
<string>142.IBPluginDependency</string>
<string>143.CustomClassName</string>
<string>143.IBPluginDependency</string>
- <string>143.IBViewBoundsToFrameTransform</string>
- <string>2.IBEditorWindowLastContentRect</string>
+ <string>162.IBPluginDependency</string>
<string>2.IBPluginDependency</string>
<string>52.CustomClassName</string>
- <string>52.IBEditorWindowLastContentRect</string>
<string>52.IBPluginDependency</string>
<string>53.IBPluginDependency</string>
<string>55.CustomClassName</string>
@@ -390,24 +391,21 @@
<string>6.IBPluginDependency</string>
<string>89.IBPluginDependency</string>
</object>
- <object class="NSMutableArray" key="dict.values">
+ <object class="NSArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>UIApplication</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>UIResponder</string>
- <string>{{335, 4}, {768, 1024}}</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>SkUIDetailViewController</string>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>SkSampleUIView</string>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <object class="NSAffineTransform">
- <bytes key="NSTransformStruct">P4AAAL+AAAAAAAAAxDqAAA</bytes>
- </object>
- <string>{{125, 4}, {768, 1024}}</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>SkUISplitViewController</string>
- <string>{{362, 0}, {783, 1006}}</string>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string>SkUIRootViewController</string>
@@ -422,17 +420,13 @@
<object class="NSMutableDictionary" key="unlocalizedProperties">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference key="dict.sortedKeys" ref="0"/>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
+ <reference key="dict.values" ref="0"/>
</object>
<nil key="activeLocalization"/>
<object class="NSMutableDictionary" key="localizations">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference key="dict.sortedKeys" ref="0"/>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
+ <reference key="dict.values" ref="0"/>
</object>
<nil key="sourceID"/>
<int key="maxID">197</int>
@@ -450,7 +444,7 @@
<string>splitViewController</string>
<string>window</string>
</object>
- <object class="NSMutableArray" key="dict.values">
+ <object class="NSArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>SkUISplitViewController</string>
<string>UIWindow</string>
@@ -463,7 +457,7 @@
<string>splitViewController</string>
<string>window</string>
</object>
- <object class="NSMutableArray" key="dict.values">
+ <object class="NSArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBToOneOutletInfo">
<string key="name">splitViewController</string>
@@ -477,7 +471,7 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">iPad/AppDelegate_iPad.h</string>
+ <string key="minorKey">./Classes/AppDelegate_iPad.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -485,7 +479,7 @@
<string key="superclassName">SkUIView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">SkSampleUIView.h</string>
+ <string key="minorKey">./Classes/SkSampleUIView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -493,7 +487,7 @@
<string key="superclassName">UIViewController</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">Shared/SkUIDetailViewController.h</string>
+ <string key="minorKey">./Classes/SkUIDetailViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -501,7 +495,7 @@
<string key="superclassName">UITableViewController</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">Shared/SkUIRootViewController.h</string>
+ <string key="minorKey">./Classes/SkUIRootViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -514,7 +508,7 @@
<string>fDetail</string>
<string>fRoot</string>
</object>
- <object class="NSMutableArray" key="dict.values">
+ <object class="NSArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>SkUIDetailViewController</string>
<string>SkUIRootViewController</string>
@@ -527,7 +521,7 @@
<string>fDetail</string>
<string>fRoot</string>
</object>
- <object class="NSMutableArray" key="dict.values">
+ <object class="NSArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBToOneOutletInfo">
<string key="name">fDetail</string>
@@ -541,292 +535,15 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">iPad/SkUISplitViewController.h</string>
+ <string key="minorKey">./Classes/SkUISplitViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SkUIView</string>
<string key="superclassName">UIView</string>
- <object class="NSMutableDictionary" key="outlets">
- <string key="NS.key.0">fOptionsDelegate</string>
- <string key="NS.object.0">id</string>
- </object>
- <object class="NSMutableDictionary" key="toOneOutletInfosByName">
- <string key="NS.key.0">fOptionsDelegate</string>
- <object class="IBToOneOutletInfo" key="NS.object.0">
- <string key="name">fOptionsDelegate</string>
- <string key="candidateClassName">id</string>
- </object>
- </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">Shared/SkUIView.h</string>
- </object>
- </object>
- </object>
- <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSError.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">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 class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UINibLoading.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier" id="786211723">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIResponder.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIApplication</string>
- <string key="superclassName">UIResponder</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIApplication.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIBarButtonItem</string>
- <string key="superclassName">UIBarItem</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIBarButtonItem.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIBarItem</string>
- <string key="superclassName">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIBarItem.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UINavigationBar</string>
- <string key="superclassName">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier" id="840300946">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UINavigationBar.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UINavigationController</string>
- <string key="superclassName">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier" id="143108953">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UINavigationController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UINavigationItem</string>
- <string key="superclassName">NSObject</string>
- <reference key="sourceIdentifier" ref="840300946"/>
- </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">UIScrollView</string>
- <string key="superclassName">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIScrollView.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UISearchBar</string>
- <string key="superclassName">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UISearchBar.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UISearchDisplayController</string>
- <string key="superclassName">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UISearchDisplayController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UISplitViewController</string>
- <string key="superclassName">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier" id="774996372">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UISplitViewController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UITableView</string>
- <string key="superclassName">UIScrollView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UITableView.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UITableViewController</string>
- <string key="superclassName">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UITableViewController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIPrintFormatter.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UITextField.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIView</string>
- <string key="superclassName">UIResponder</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIView.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <reference key="sourceIdentifier" ref="143108953"/>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIPopoverController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <reference key="sourceIdentifier" ref="774996372"/>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UITabBarController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <string key="superclassName">UIResponder</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIViewController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIWindow</string>
- <string key="superclassName">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIWindow.h</string>
+ <string key="minorKey">./Classes/SkUIView.h</string>
</object>
</object>
</object>
@@ -835,15 +552,14 @@
<string key="IBDocument.TargetRuntimeIdentifier">IBIPadFramework</string>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
- <integer value="1056" key="NS.object.0"/>
+ <real value="1296" key="NS.object.0"/>
</object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
<integer value="3100" key="NS.object.0"/>
</object>
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
- <string key="IBDocument.LastKnownRelativeProjectPath">../iOSSampleApp.xcodeproj</string>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
- <string key="IBCocoaTouchPluginVersion">141</string>
+ <string key="IBCocoaTouchPluginVersion">1498</string>
</data>
</archive>