From 1a0cb76f575cbc9d04c50373afc3c3bc01a22ecf Mon Sep 17 00:00:00 2001 From: hansemannn Date: Sat, 12 Oct 2019 09:33:50 +0200 Subject: [PATCH] feat: initial commit --- .gitignore | 8 + Classes/TiPencilkitCanvasView.h | 16 + Classes/TiPencilkitCanvasView.m | 112 ++++ Classes/TiPencilkitCanvasViewProxy.h | 21 + Classes/TiPencilkitCanvasViewProxy.m | 79 +++ Classes/TiPencilkitModule.h | 14 + Classes/TiPencilkitModule.m | 61 +++ Classes/TiPencilkitModuleAssets.h | 12 + Classes/TiPencilkitModuleAssets.m | 24 + LICENSE | 1 + README.md | 70 +++ TiPencilkit_Prefix.pch | 5 + example/app.js | 103 ++++ manifest | 18 + metadata.json | 1 + module.xcconfig | 10 + timodule.xml | 11 + titanium-pencilkit.podspec | 27 + titanium-pencilkit.xcodeproj/project.pbxproj | 504 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + titanium.xcconfig | 14 + 22 files changed, 1126 insertions(+) create mode 100644 .gitignore create mode 100644 Classes/TiPencilkitCanvasView.h create mode 100644 Classes/TiPencilkitCanvasView.m create mode 100644 Classes/TiPencilkitCanvasViewProxy.h create mode 100644 Classes/TiPencilkitCanvasViewProxy.m create mode 100644 Classes/TiPencilkitModule.h create mode 100644 Classes/TiPencilkitModule.m create mode 100644 Classes/TiPencilkitModuleAssets.h create mode 100644 Classes/TiPencilkitModuleAssets.m create mode 100644 LICENSE create mode 100644 README.md create mode 100644 TiPencilkit_Prefix.pch create mode 100644 example/app.js create mode 100644 manifest create mode 100644 metadata.json create mode 100644 module.xcconfig create mode 100644 timodule.xml create mode 100644 titanium-pencilkit.podspec create mode 100644 titanium-pencilkit.xcodeproj/project.pbxproj create mode 100644 titanium-pencilkit.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 titanium-pencilkit.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 titanium.xcconfig diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7439e1e --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +/build +Carthage/ +ti.calendar-iphone-*.zip +/Cartfile.resolved +.DS_Store +/dist +titanium-pencilkit.xcodeproj/project.xcworkspace/xcuserdata/*.xcuserdatad/UserInterfaceState.xcuserstate +titanium-pencilkit.xcodeproj/xcuserdata/*.xcuserdatad/xcschemes/xcschememanagement.plist diff --git a/Classes/TiPencilkitCanvasView.h b/Classes/TiPencilkitCanvasView.h new file mode 100644 index 0000000..2ec7307 --- /dev/null +++ b/Classes/TiPencilkitCanvasView.h @@ -0,0 +1,16 @@ +/** + * Axway Titanium + * Copyright (c) 2009-present by Axway Appcelerator. All Rights Reserved. + * Licensed under the terms of the Apache Public License + * Please see the LICENSE included with this distribution for details. + */ + +#import +#import + +API_AVAILABLE(ios(13.0)) +@interface TiPencilkitCanvasView : TiUIView + +@property(nonatomic, strong) PKCanvasView *canvasView; + +@end diff --git a/Classes/TiPencilkitCanvasView.m b/Classes/TiPencilkitCanvasView.m new file mode 100644 index 0000000..7f6f1c1 --- /dev/null +++ b/Classes/TiPencilkitCanvasView.m @@ -0,0 +1,112 @@ +/** + * Axway Titanium + * Copyright (c) 2009-present by Axway Appcelerator. All Rights Reserved. + * Licensed under the terms of the Apache Public License + * Please see the LICENSE included with this distribution for details. + */ + +#import "TiPencilkitCanvasView.h" + +@implementation TiPencilkitCanvasView + +@synthesize canvasView = _canvasView; + +#pragma mark Private API's + +- (PKCanvasView *)canvasView +{ + if (_canvasView == nil) { + _canvasView = [[PKCanvasView alloc] initWithFrame:self.bounds]; + _canvasView.delegate = self; + _canvasView.alwaysBounceVertical = YES; + + [self addSubview:_canvasView]; + + PKToolPicker *toolPicker = [PKToolPicker sharedToolPickerForWindow:TiApp.app.controller.view.window]; + [toolPicker setVisible:YES forFirstResponder:_canvasView]; + [toolPicker addObserver:_canvasView]; + [toolPicker addObserver:self]; + + [self updateLayoutForToolPicker:toolPicker]; + } + + return _canvasView; +} + +- (void)updateLayoutForToolPicker:(PKToolPicker *)toolPicker +{ + CGRect obscuredFrame = [toolPicker frameObscuredInView:self]; + if (CGRectIsNull(obscuredFrame)) { + _canvasView.contentInset = UIEdgeInsetsZero; + } else { + _canvasView.contentInset = UIEdgeInsetsMake(0, 0, CGRectGetMaxX(self.bounds) - CGRectGetMinY(obscuredFrame), 0); + } + + _canvasView.scrollIndicatorInsets = _canvasView.contentInset; +} + +#pragma mark Public API's + +- (void)setAlwaysBounceVertical:(NSNumber *)alwaysBounceVertical +{ + [[self canvasView] setAlwaysBounceVertical:alwaysBounceVertical.boolValue]; +} + +- (void)setAllowsFingerDrawing:(NSNumber *)allowsFingerDrawing +{ + [[self canvasView] setAllowsFingerDrawing:allowsFingerDrawing.boolValue]; +} + +- (void)frameSizeChanged:(CGRect)frame bounds:(CGRect)bounds +{ + [TiUtils setView:[self canvasView] positionRect:bounds]; + [super frameSizeChanged:frame bounds:bounds]; +} + +#pragma mark PKCanvasViewDelegate + +- (void)canvasViewDidFinishRendering:(PKCanvasView *)canvasView +{ + [self.proxy fireEvent:@"finishedRendering"]; +} + +- (void)canvasViewDidBeginUsingTool:(PKCanvasView *)canvasView +{ + [self.proxy fireEvent:@"begin"]; +} + +- (void)canvasViewDrawingDidChange:(PKCanvasView *)canvasView +{ + [self.proxy fireEvent:@"change"]; +} + +- (void)canvasViewDidEndUsingTool:(PKCanvasView *)canvasView +{ + [self.proxy fireEvent:@"end"]; +} + +#pragma mark PKToolPickerObserver + +- (void)toolPickerVisibilityDidChange:(PKToolPicker *)toolPicker +{ + [self.proxy fireEvent:@"toolPicker:visibilityDidChange" withObject:@{ @"isVisible": @(toolPicker.isVisible) }]; + [self updateLayoutForToolPicker:toolPicker]; +} + +- (void)toolPickerSelectedToolDidChange:(PKToolPicker *)toolPicker +{ + [self.proxy fireEvent:@"toolPicker:selectedToolDidChange"]; +} + +- (void)toolPickerIsRulerActiveDidChange:(PKToolPicker *)toolPicker +{ + [self.proxy fireEvent:@"toolPicker:isRulerActiveDidChange" withObject:@{ @"rulerActive": @(toolPicker.rulerActive) }]; +} + +- (void)toolPickerFramesObscuredDidChange:(PKToolPicker *)toolPicker +{ + [self.proxy fireEvent:@"toolPicker:framesObscuredDidChange"]; + [self updateLayoutForToolPicker:toolPicker]; +} + +@end diff --git a/Classes/TiPencilkitCanvasViewProxy.h b/Classes/TiPencilkitCanvasViewProxy.h new file mode 100644 index 0000000..4165c32 --- /dev/null +++ b/Classes/TiPencilkitCanvasViewProxy.h @@ -0,0 +1,21 @@ +/** + * Axway Titanium + * Copyright (c) 2009-present by Axway Appcelerator. All Rights Reserved. + * Licensed under the terms of the Apache Public License + * Please see the LICENSE included with this distribution for details. + */ + +#import + +API_AVAILABLE(ios(13.0)) +@interface TiPencilkitCanvasViewProxy : TiViewProxy + +- (void)setDrawing:(TiBlob *)drawingBlob; + +- (void)focus:(id)unused; + +- (void)exportDrawingData:(id)callback; + +- (void)exportDrawingAsImage:(id)args; + +@end diff --git a/Classes/TiPencilkitCanvasViewProxy.m b/Classes/TiPencilkitCanvasViewProxy.m new file mode 100644 index 0000000..c36bd89 --- /dev/null +++ b/Classes/TiPencilkitCanvasViewProxy.m @@ -0,0 +1,79 @@ +/** + * Axway Titanium + * Copyright (c) 2009-present by Axway Appcelerator. All Rights Reserved. + * Licensed under the terms of the Apache Public License + * Please see the LICENSE included with this distribution for details. + */ + +#import "TiPencilkitCanvasView.h" +#import "TiPencilkitCanvasViewProxy.h" +#import + +@implementation TiPencilkitCanvasViewProxy + +#pragma mark Private API's + +- (TiPencilkitCanvasView *)canvasView +{ + return (TiPencilkitCanvasView *) self.view; +} + +#pragma mark Public API's + +- (void)setDrawing:(TiBlob *)drawingBlob +{ + if (drawingBlob == nil) { + [[[self canvasView] canvasView] setDrawing:[PKDrawing new]]; + return; + } + + NSError *error = nil; + PKDrawing *drawing = [[PKDrawing alloc] initWithData:drawingBlob.data error:&error]; + + if (error != nil) { + NSLog(@"[ERROR] Cannot import drawing: %@", error.localizedDescription); + return; + } + + [[[self canvasView] canvasView] setDrawing:drawing]; +} + +- (void)focus:(id)unused +{ + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ + [[[self canvasView] canvasView] becomeFirstResponder]; + }); +} + +- (void)exportDrawingData:(id)callback +{ + ENSURE_SINGLE_ARG(callback, KrollCallback); + + PKDrawing *drawing = [[[self canvasView] canvasView] drawing]; + + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + NSData *dataRepresentation = [drawing dataRepresentation]; + + dispatch_async(dispatch_get_main_queue(), ^(){ + [callback call:@[@{ @"data": [[TiBlob alloc] initWithData:dataRepresentation mimetype:(NSString *) PKAppleDrawingTypeIdentifier] }] thisObject:self]; + }); + }); +} + +- (void)exportDrawingAsImage:(id)args +{ + ENSURE_SINGLE_ARG(args, NSDictionary); + + KrollCallback *callback = (KrollCallback *)args[@"callback"]; + PKDrawing *drawing = [[[self canvasView] canvasView] drawing]; + + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + UIImage *image = [drawing imageFromRect:drawing.bounds scale:UIScreen.mainScreen.scale]; + + dispatch_async(dispatch_get_main_queue(), ^(){ + [callback call:@[@{ @"image": [[TiBlob alloc] initWithImage:image] }] thisObject:self]; + }); + }); +} + +@end diff --git a/Classes/TiPencilkitModule.h b/Classes/TiPencilkitModule.h new file mode 100644 index 0000000..80f2d54 --- /dev/null +++ b/Classes/TiPencilkitModule.h @@ -0,0 +1,14 @@ +/** + * titanium-pencilkit + * + * Created by Your Name + * Copyright (c) 2019 Your Company. All rights reserved. + */ + +#import "TiModule.h" + +@interface TiPencilkitModule : TiModule { + +} + +@end \ No newline at end of file diff --git a/Classes/TiPencilkitModule.m b/Classes/TiPencilkitModule.m new file mode 100644 index 0000000..4b8c050 --- /dev/null +++ b/Classes/TiPencilkitModule.m @@ -0,0 +1,61 @@ +/** + * titanium-pencilkit + * + * Created by Your Name + * Copyright (c) 2019 Your Company. All rights reserved. + */ + +#import "TiPencilkitModule.h" +#import "TiBase.h" +#import "TiHost.h" +#import "TiUtils.h" + +@implementation TiPencilkitModule + +#pragma mark Internal + +// This is generated for your module, please do not change it +- (id)moduleGUID +{ + return @"297369cd-a62e-4740-8993-8201ec43b5fd"; +} + +// This is generated for your module, please do not change it +- (NSString *)moduleId +{ + return @"ti.pencilkit"; +} + +#pragma mark Lifecycle + +- (void)startup +{ + // This method is called when the module is first loaded + // You *must* call the superclass + [super startup]; + DebugLog(@"[DEBUG] %@ loaded", self); +} + +#pragma Public APIs + +- (NSString *)example:(id)args +{ + // Example method. + // Call with "MyModule.example(args)" + return @"hello world"; +} + +- (NSString *)exampleProp +{ + // Example property getter. + // Call with "MyModule.exampleProp" or "MyModule.getExampleProp()" + return @"Titanium rocks!"; +} + +- (void)setExampleProp:(id)value +{ + // Example property setter. + // Call with "MyModule.exampleProp = 'newValue'" or "MyModule.setExampleProp('newValue')" +} + +@end diff --git a/Classes/TiPencilkitModuleAssets.h b/Classes/TiPencilkitModuleAssets.h new file mode 100644 index 0000000..2df66c1 --- /dev/null +++ b/Classes/TiPencilkitModuleAssets.h @@ -0,0 +1,12 @@ +/** + * This is a generated file. Do not edit or your changes will be lost + */ + +@interface TiPencilkitModuleAssets : NSObject { + +} + +- (NSData *)moduleAsset; +- (NSData *)resolveModuleAsset:(NSString*)path; + +@end diff --git a/Classes/TiPencilkitModuleAssets.m b/Classes/TiPencilkitModuleAssets.m new file mode 100644 index 0000000..a35637d --- /dev/null +++ b/Classes/TiPencilkitModuleAssets.m @@ -0,0 +1,24 @@ +/** + * This is a generated file. Do not edit or your changes will be lost + */ +#import "TiPencilkitModuleAssets.h" + +extern NSData* filterDataInRange(NSData* thedata, NSRange range); + +@implementation TiPencilkitModuleAssets + +- (NSData *)moduleAsset +{ + + + return nil; +} + +- (NSData *)resolveModuleAsset:(NSString *)path +{ + + + return nil; +} + +@end diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ad125d5 --- /dev/null +++ b/LICENSE @@ -0,0 +1 @@ +UNLICENSED \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..067f189 --- /dev/null +++ b/README.md @@ -0,0 +1,70 @@ +# Titanium iOS 13+ PencilKit + +Use the native iOS 13+ PencilKit framework in Axway Titanium. + +## Requirements + +- [x] Titanium SDK 8.2.0+ +- [x] iOS 13+ +- [x] Xcode 11+ + +## Example + +```js +var PencilKit = require('ti.pencilkit'); + +var win = Ti.UI.createWindow({ + title: 'Current canvas' +}); +var nav = Ti.UI.createNavigationWindow({ + window: win +}); + +win.addEventListener('open', function() { + canvasView.focus(); +}); + +var saveButton = Ti.UI.createButton({ + title: 'Save' +}); +saveButton.addEventListener('click', saveCanvas); +win.rightNavButton = saveButton; + +var canvasView = PencilKit.createCanvasView(); + +win.add(canvasView); +nav.open(); + +function saveCanvas() { + canvasView.generateImage({ + callback: function(event) { + var win2 = Ti.UI.createWindow({ + title: 'Saved canvas', + backgroundColor: '#fff' + }); + var nav2 = Ti.UI.createNavigationWindow({ + window: win2 + }); + + win2.add(Ti.UI.createImageView({ + image: event.image + })); + nav2.open({ + modal: true + }); + } + }) + } +``` + +## Author + +Hans Knöchel + +## License + +UNLICENSED + +## Copyright + +(c) 2019-present by binaries included diff --git a/TiPencilkit_Prefix.pch b/TiPencilkit_Prefix.pch new file mode 100644 index 0000000..186d246 --- /dev/null +++ b/TiPencilkit_Prefix.pch @@ -0,0 +1,5 @@ + +#ifdef __OBJC__ + #import + #import +#endif diff --git a/example/app.js b/example/app.js new file mode 100644 index 0000000..6a86ab3 --- /dev/null +++ b/example/app.js @@ -0,0 +1,103 @@ +var PencilKit = require('ti.pencilkit'); + +var file = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, 'my_drawing.drawing'); + +var win = Ti.UI.createWindow({ + title: 'Current canvas' +}); + +var nav = Ti.UI.createNavigationWindow({ + window: win +}); + +win.addEventListener('open', function() { + canvasView.focus(); +}); + +var saveButton = Ti.UI.createButton({ + title: 'Save as Image' +}); + +saveButton.addEventListener('click', exportDrawingAsImage); +win.rightNavButton = saveButton; + +var dataButton = Ti.UI.createButton({ + title: 'Export data' +}); + +dataButton.addEventListener('click', exportDrawingData); +win.leftNavButton = dataButton; + +var canvasView = PencilKit.createCanvasView(); + +if (file.exists()) { + canvasView.drawing = file.read(); +} + +/** Canvas view events */ + +canvasView.addEventListener('begin', function() { + console.log('Began drawing!'); +}); + +canvasView.addEventListener('change', function() { + console.log('Changed drawing!'); +}); + +canvasView.addEventListener('end', function() { + console.log('Ended drawing!'); +}); + +/** Tool picker events */ + +canvasView.addEventListener('toolPicker:visibilityDidChange', function(event) { + console.log('toolPicker:visibilityDidChange: ' + event.isVisible); +}); + +canvasView.addEventListener('toolPicker:selectedToolDidChange', function() { + console.log('toolPicker:selectedToolDidChange'); +}); + +canvasView.addEventListener('toolPicker:isRulerActiveDidChange', function(event) { + console.log('toolPicker:isRulerActiveDidChange: ' + event.rulerActive); +}); + +canvasView.addEventListener('end', function() { + console.log('toolPicker:framesObscuredDidChange'); +}); + +win.add(canvasView); +nav.open(); + +function exportDrawingAsImage() { + canvasView.exportDrawingAsImage({ + callback: function(event) { + var win2 = Ti.UI.createWindow({ + title: 'Saved canvas', + backgroundColor: '#fff' + }); + var nav2 = Ti.UI.createNavigationWindow({ + window: win2 + }); + + win2.add(Ti.UI.createImageView({ + image: event.image + })); + + nav2.open({ + modal: true + }); + } + }); +} + +function exportDrawingData() { + // Also possible: Export the current drawing as a blob + // Note #1: If you keep the drawing opened and change it afterwards, + // the exported drawing reference will also be updated + // Note #2: Once you save the data, this demo will reuse it as the initial drawing + canvasView.exportDrawingData(function(event) { + file.write(event.data); + console.log(file.nativePath); + }); +} \ No newline at end of file diff --git a/manifest b/manifest new file mode 100644 index 0000000..e026563 --- /dev/null +++ b/manifest @@ -0,0 +1,18 @@ +# +# this is your module manifest and used by Titanium +# during compilation, packaging, distribution, etc. +# +version: 1.0.0 +apiversion: 2 +architectures: armv7 arm64 i386 x86_64 +description: titanium-pencilkit +author: Hans Knöchel +license: UNLICENSED +copyright: Copyright (c) 2019 by binaries included + +# these should not be edited +name: titanium-pencilkit +moduleid: ti.pencilkit +guid: 297369cd-a62e-4740-8993-8201ec43b5fd +platform: iphone +minsdk: 8.2.0.GA diff --git a/metadata.json b/metadata.json new file mode 100644 index 0000000..43a62e5 --- /dev/null +++ b/metadata.json @@ -0,0 +1 @@ +{"exports":[]} \ No newline at end of file diff --git a/module.xcconfig b/module.xcconfig new file mode 100644 index 0000000..7b87358 --- /dev/null +++ b/module.xcconfig @@ -0,0 +1,10 @@ +// +// PLACE ANY BUILD DEFINITIONS IN THIS FILE AND THEY WILL BE +// PICKED UP DURING THE APP BUILD FOR YOUR MODULE +// +// see the following webpage for instructions on the settings +// for this file: +// https://developer.apple.com/library/content/featuredarticles/XcodeConcepts/Concept-Build_Settings.html +// + +OTHER_LDFLAGS=$(inherited) -weak_framework PencilKit diff --git a/timodule.xml b/timodule.xml new file mode 100644 index 0000000..ae31597 --- /dev/null +++ b/timodule.xml @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/titanium-pencilkit.podspec b/titanium-pencilkit.podspec new file mode 100644 index 0000000..6bcc9c6 --- /dev/null +++ b/titanium-pencilkit.podspec @@ -0,0 +1,27 @@ + +Pod::Spec.new do |s| + + s.name = "titanium-pencilkit" + s.version = "1.0.0" + s.summary = "The titanium-pencilkit Titanium module." + + s.description = <<-DESC + The titanium-pencilkit Titanium module. + DESC + + s.homepage = "https://example.com" + s.license = { :type => "Apache 2", :file => "LICENSE" } + s.author = 'Author' + + s.platform = :ios + s.ios.deployment_target = '8.0' + + s.source = { :git => "https://github.com//.git" } + + s.ios.weak_frameworks = 'UIKit', 'Foundation' + + s.ios.dependency 'TitaniumKit' + + s.public_header_files = 'Classes/*.h' + s.source_files = 'Classes/*.{h,m}' + end \ No newline at end of file diff --git a/titanium-pencilkit.xcodeproj/project.pbxproj b/titanium-pencilkit.xcodeproj/project.pbxproj new file mode 100644 index 0000000..e8d6fab --- /dev/null +++ b/titanium-pencilkit.xcodeproj/project.pbxproj @@ -0,0 +1,504 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { + +/* Begin PBXAggregateTarget section */ + 24416B8111C4CA220047AFDD /* Build & Test */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 24416B8A11C4CA520047AFDD /* Build configuration list for PBXAggregateTarget "Build & Test" */; + buildPhases = ( + 24416B8011C4CA220047AFDD /* ShellScript */, + ); + dependencies = ( + 24416B8511C4CA280047AFDD /* PBXTargetDependency */, + ); + name = "Build & Test"; + productName = "Build & test"; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 24DD6CF91134B3F500162E58 /* TiPencilkitModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 24DD6CF71134B3F500162E58 /* TiPencilkitModule.h */; }; + 24DD6CFA1134B3F500162E58 /* TiPencilkitModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 24DD6CF81134B3F500162E58 /* TiPencilkitModule.m */; }; + 24DE9E1111C5FE74003F90F6 /* TiPencilkitModuleAssets.h in Headers */ = {isa = PBXBuildFile; fileRef = 24DE9E0F11C5FE74003F90F6 /* TiPencilkitModuleAssets.h */; }; + 24DE9E1211C5FE74003F90F6 /* TiPencilkitModuleAssets.m in Sources */ = {isa = PBXBuildFile; fileRef = 24DE9E1011C5FE74003F90F6 /* TiPencilkitModuleAssets.m */; }; + 3AA785DE2351013200D02658 /* PencilKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3AA785DD2351013200D02658 /* PencilKit.framework */; }; + 3ACC36072351B668003F9C65 /* TiPencilkitCanvasViewProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3ACC36032351B667003F9C65 /* TiPencilkitCanvasViewProxy.m */; }; + 3ACC36082351B668003F9C65 /* TiPencilkitCanvasView.m in Sources */ = {isa = PBXBuildFile; fileRef = 3ACC36042351B667003F9C65 /* TiPencilkitCanvasView.m */; }; + 3ACC36092351B668003F9C65 /* TiPencilkitCanvasView.h in Headers */ = {isa = PBXBuildFile; fileRef = 3ACC36052351B667003F9C65 /* TiPencilkitCanvasView.h */; }; + 3ACC360A2351B668003F9C65 /* TiPencilkitCanvasViewProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 3ACC36062351B667003F9C65 /* TiPencilkitCanvasViewProxy.h */; }; + AA747D9F0F9514B9006C5449 /* TiPencilkit_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* TiPencilkit_Prefix.pch */; }; + AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 24416B8411C4CA280047AFDD /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D2AAC07D0554694100DB518D; + remoteInfo = "titanium-pencilkit"; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 24DD6CF71134B3F500162E58 /* TiPencilkitModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TiPencilkitModule.h; path = Classes/TiPencilkitModule.h; sourceTree = ""; }; + 24DD6CF81134B3F500162E58 /* TiPencilkitModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = TiPencilkitModule.m; path = Classes/TiPencilkitModule.m; sourceTree = ""; }; + 24DD6D1B1134B66800162E58 /* titanium.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = titanium.xcconfig; sourceTree = ""; }; + 24DE9E0F11C5FE74003F90F6 /* TiPencilkitModuleAssets.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TiPencilkitModuleAssets.h; path = Classes/TiPencilkitModuleAssets.h; sourceTree = ""; }; + 24DE9E1011C5FE74003F90F6 /* TiPencilkitModuleAssets.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = TiPencilkitModuleAssets.m; path = Classes/TiPencilkitModuleAssets.m; sourceTree = ""; }; + 3AA785DD2351013200D02658 /* PencilKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = PencilKit.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/PencilKit.framework; sourceTree = DEVELOPER_DIR; }; + 3ACC36032351B667003F9C65 /* TiPencilkitCanvasViewProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = TiPencilkitCanvasViewProxy.m; path = Classes/TiPencilkitCanvasViewProxy.m; sourceTree = ""; }; + 3ACC36042351B667003F9C65 /* TiPencilkitCanvasView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = TiPencilkitCanvasView.m; path = Classes/TiPencilkitCanvasView.m; sourceTree = ""; }; + 3ACC36052351B667003F9C65 /* TiPencilkitCanvasView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TiPencilkitCanvasView.h; path = Classes/TiPencilkitCanvasView.h; sourceTree = ""; }; + 3ACC36062351B667003F9C65 /* TiPencilkitCanvasViewProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TiPencilkitCanvasViewProxy.h; path = Classes/TiPencilkitCanvasViewProxy.h; sourceTree = ""; }; + AA747D9E0F9514B9006C5449 /* TiPencilkit_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TiPencilkit_Prefix.pch; sourceTree = SOURCE_ROOT; }; + AACBBE490F95108600F1A2B1 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + D2AAC07E0554694100DB518D /* libti.pencilkit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libti.pencilkit.a; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + D2AAC07C0554694100DB518D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 3AA785DE2351013200D02658 /* PencilKit.framework in Frameworks */, + AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 034768DFFF38A50411DB9C8B /* Products */ = { + isa = PBXGroup; + children = ( + D2AAC07E0554694100DB518D /* libti.pencilkit.a */, + ); + name = Products; + sourceTree = ""; + }; + 0867D691FE84028FC02AAC07 /* titanium-pencilkit */ = { + isa = PBXGroup; + children = ( + 08FB77AEFE84172EC02AAC07 /* Classes */, + 32C88DFF0371C24200C91783 /* Other Sources */, + 0867D69AFE84028FC02AAC07 /* Frameworks */, + 034768DFFF38A50411DB9C8B /* Products */, + ); + name = "titanium-pencilkit"; + sourceTree = ""; + }; + 0867D69AFE84028FC02AAC07 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 3AA785DD2351013200D02658 /* PencilKit.framework */, + AACBBE490F95108600F1A2B1 /* Foundation.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + 08FB77AEFE84172EC02AAC07 /* Classes */ = { + isa = PBXGroup; + children = ( + 3ACC360C2351B679003F9C65 /* Module */, + 3ACC360B2351B66C003F9C65 /* Canvas View */, + ); + name = Classes; + sourceTree = ""; + }; + 32C88DFF0371C24200C91783 /* Other Sources */ = { + isa = PBXGroup; + children = ( + AA747D9E0F9514B9006C5449 /* TiPencilkit_Prefix.pch */, + 24DD6D1B1134B66800162E58 /* titanium.xcconfig */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 3ACC360B2351B66C003F9C65 /* Canvas View */ = { + isa = PBXGroup; + children = ( + 3ACC36052351B667003F9C65 /* TiPencilkitCanvasView.h */, + 3ACC36042351B667003F9C65 /* TiPencilkitCanvasView.m */, + 3ACC36062351B667003F9C65 /* TiPencilkitCanvasViewProxy.h */, + 3ACC36032351B667003F9C65 /* TiPencilkitCanvasViewProxy.m */, + ); + name = "Canvas View"; + sourceTree = ""; + }; + 3ACC360C2351B679003F9C65 /* Module */ = { + isa = PBXGroup; + children = ( + 24DE9E0F11C5FE74003F90F6 /* TiPencilkitModuleAssets.h */, + 24DE9E1011C5FE74003F90F6 /* TiPencilkitModuleAssets.m */, + 24DD6CF71134B3F500162E58 /* TiPencilkitModule.h */, + 24DD6CF81134B3F500162E58 /* TiPencilkitModule.m */, + ); + name = Module; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + D2AAC07A0554694100DB518D /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 3ACC360A2351B668003F9C65 /* TiPencilkitCanvasViewProxy.h in Headers */, + 3ACC36092351B668003F9C65 /* TiPencilkitCanvasView.h in Headers */, + AA747D9F0F9514B9006C5449 /* TiPencilkit_Prefix.pch in Headers */, + 24DD6CF91134B3F500162E58 /* TiPencilkitModule.h in Headers */, + 24DE9E1111C5FE74003F90F6 /* TiPencilkitModuleAssets.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + D2AAC07D0554694100DB518D /* titanium-pencilkit */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1DEB921E08733DC00010E9CD /* Build configuration list for PBXNativeTarget "titanium-pencilkit" */; + buildPhases = ( + D2AAC07A0554694100DB518D /* Headers */, + D2AAC07B0554694100DB518D /* Sources */, + D2AAC07C0554694100DB518D /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "titanium-pencilkit"; + productName = "titanium-pencilkit"; + productReference = D2AAC07E0554694100DB518D /* libti.pencilkit.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 0867D690FE84028FC02AAC07 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1100; + }; + buildConfigurationList = 1DEB922208733DC00010E9CD /* Build configuration list for PBXProject "titanium-pencilkit" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 1; + knownRegions = ( + en, + Base, + ); + mainGroup = 0867D691FE84028FC02AAC07 /* titanium-pencilkit */; + productRefGroup = 034768DFFF38A50411DB9C8B /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D2AAC07D0554694100DB518D /* titanium-pencilkit */, + 24416B8111C4CA220047AFDD /* Build & Test */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXShellScriptBuildPhase section */ + 24416B8011C4CA220047AFDD /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# shell script goes here\n\nappc run --project-dir \"${PROJECT_DIR}\"\nexit $?\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + D2AAC07B0554694100DB518D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 24DD6CFA1134B3F500162E58 /* TiPencilkitModule.m in Sources */, + 3ACC36082351B668003F9C65 /* TiPencilkitCanvasView.m in Sources */, + 3ACC36072351B668003F9C65 /* TiPencilkitCanvasViewProxy.m in Sources */, + 24DE9E1211C5FE74003F90F6 /* TiPencilkitModuleAssets.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 24416B8511C4CA280047AFDD /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = D2AAC07D0554694100DB518D /* titanium-pencilkit */; + targetProxy = 24416B8411C4CA280047AFDD /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 1DEB921F08733DC00010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 24DD6D1B1134B66800162E58 /* titanium.xcconfig */; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + DSTROOT = /tmp/TiPencilkit.dst; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = TiPencilkit_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = "TI_VERSION=$(TI_VERSION)"; + GCC_TREAT_WARNINGS_AS_ERRORS = NO; + GCC_VERSION = ""; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_MISSING_PARENTHESES = NO; + GCC_WARN_SHADOW = NO; + GCC_WARN_STRICT_SELECTOR_MATCH = NO; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_PARAMETER = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + INSTALL_PATH = /usr/local/lib; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LIBRARY_SEARCH_PATHS = ""; + OTHER_CFLAGS = ( + "-DDEBUG", + "-DTI_POST_1_2", + ); + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = ti.pencilkit; + PROVISIONING_PROFILE = ""; + "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; + RUN_CLANG_STATIC_ANALYZER = NO; + SDKROOT = iphoneos; + USER_HEADER_SEARCH_PATHS = ""; + WARNING_CFLAGS = "-Wno-arc-performSelector-leaks"; + }; + name = Debug; + }; + 1DEB922008733DC00010E9CD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 24DD6D1B1134B66800162E58 /* titanium.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + DEPLOYMENT_POSTPROCESSING = YES; + DSTROOT = /tmp/TiPencilkit.dst; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = TiPencilkit_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "TI_VERSION=$(TI_VERSION)", + NDEBUG, + ); + GCC_TREAT_WARNINGS_AS_ERRORS = NO; + GCC_VERSION = ""; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_MISSING_PARENTHESES = NO; + GCC_WARN_SHADOW = NO; + GCC_WARN_STRICT_SELECTOR_MATCH = NO; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_PARAMETER = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + INSTALL_PATH = /usr/local/lib; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LIBRARY_SEARCH_PATHS = ""; + OTHER_CFLAGS = "-DTI_POST_1_2"; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = ti.pencilkit; + RUN_CLANG_STATIC_ANALYZER = NO; + SDKROOT = iphoneos; + USER_HEADER_SEARCH_PATHS = ""; + WARNING_CFLAGS = "-Wno-arc-performSelector-leaks"; + }; + name = Release; + }; + 1DEB922308733DC00010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 24DD6D1B1134B66800162E58 /* titanium.xcconfig */; + buildSettings = { + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_CXX_LIBRARY = "compiler-default"; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + DSTROOT = /tmp/TiPencilkit.dst; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = TiPencilkit_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = "TI_VERSION=$(TI_VERSION)"; + GCC_TREAT_WARNINGS_AS_ERRORS = NO; + GCC_VERSION = ""; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_MISSING_PARENTHESES = NO; + GCC_WARN_SHADOW = NO; + GCC_WARN_STRICT_SELECTOR_MATCH = NO; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_PARAMETER = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + INSTALL_PATH = /usr/local/lib; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DDEBUG", + "-DTI_POST_1_2", + ); + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = ti.pencilkit; + PROVISIONING_PROFILE = ""; + "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; + RUN_CLANG_STATIC_ANALYZER = NO; + SDKROOT = iphoneos; + USER_HEADER_SEARCH_PATHS = ""; + }; + name = Debug; + }; + 1DEB922408733DC00010E9CD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 24DD6D1B1134B66800162E58 /* titanium.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_CXX_LIBRARY = "compiler-default"; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + DSTROOT = /tmp/TiPencilkit.dst; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_MODEL_TUNING = G5; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = TiPencilkit_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = "TI_VERSION=$(TI_VERSION)"; + GCC_TREAT_WARNINGS_AS_ERRORS = NO; + GCC_VERSION = ""; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_MISSING_PARENTHESES = NO; + GCC_WARN_SHADOW = NO; + GCC_WARN_STRICT_SELECTOR_MATCH = NO; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_PARAMETER = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + INSTALL_PATH = /usr/local/lib; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + OTHER_CFLAGS = "-DTI_POST_1_2"; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = ti.pencilkit; + RUN_CLANG_STATIC_ANALYZER = NO; + SDKROOT = iphoneos; + USER_HEADER_SEARCH_PATHS = ""; + }; + name = Release; + }; + 24416B8211C4CA220047AFDD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 24DD6D1B1134B66800162E58 /* titanium.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = YES; + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + PRODUCT_NAME = "Build & test"; + }; + name = Debug; + }; + 24416B8311C4CA220047AFDD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 24DD6D1B1134B66800162E58 /* titanium.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = YES; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + PRODUCT_NAME = "Build & test"; + ZERO_LINK = NO; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1DEB921E08733DC00010E9CD /* Build configuration list for PBXNativeTarget "titanium-pencilkit" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB921F08733DC00010E9CD /* Debug */, + 1DEB922008733DC00010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1DEB922208733DC00010E9CD /* Build configuration list for PBXProject "titanium-pencilkit" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB922308733DC00010E9CD /* Debug */, + 1DEB922408733DC00010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 24416B8A11C4CA520047AFDD /* Build configuration list for PBXAggregateTarget "Build & Test" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 24416B8211C4CA220047AFDD /* Debug */, + 24416B8311C4CA220047AFDD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 0867D690FE84028FC02AAC07 /* Project object */; +} diff --git a/titanium-pencilkit.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/titanium-pencilkit.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/titanium-pencilkit.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/titanium-pencilkit.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/titanium-pencilkit.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/titanium-pencilkit.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/titanium.xcconfig b/titanium.xcconfig new file mode 100644 index 0000000..f6fc36f --- /dev/null +++ b/titanium.xcconfig @@ -0,0 +1,14 @@ +// +// +// CHANGE THESE VALUES TO REFLECT THE VERSION (AND LOCATION IF DIFFERENT) +// OF YOUR TITANIUM SDK YOU'RE BUILDING FOR +// +// +TITANIUM_SDK_VERSION = 8.3.0 + +// +// THESE SHOULD BE OK GENERALLY AS-IS +// +TITANIUM_SDK = /Users/$(USER)/Library/Application Support/Titanium/mobilesdk/osx/$(TITANIUM_SDK_VERSION) +HEADER_SEARCH_PATHS = $(inherited) "$(TITANIUM_SDK)/iphone/include" +FRAMEWORK_SEARCH_PATHS = $(inherited) "$(TITANIUM_SDK)/iphone/Frameworks"