diff --git a/AppKit/CPImageView.j b/AppKit/CPImageView.j index 7f2875214..535a7f86c 100644 --- a/AppKit/CPImageView.j +++ b/AppKit/CPImageView.j @@ -64,6 +64,14 @@ var CPImageViewEmptyPlaceholderImage = nil; CPImageViewEmptyPlaceholderImage = [[CPImage alloc] initWithContentsOfFile:[bundle pathForResource:@"empty.png"]]; } ++ (Class)_binderClassForBinding:(CPString)theBinding +{ + if (theBinding === CPValueBinding || theBinding === CPValueURLBinding || theBinding === CPValuePathBinding) + return [CPImageViewValueBinder class]; + + return [super _binderClassForBinding:theBinding]; +} + - (id)initWithFrame:(CGRect)aFrame { self = [super initWithFrame:aFrame]; @@ -439,6 +447,33 @@ var CPImageViewEmptyPlaceholderImage = nil; @end +@implementation CPImageViewValueBinder : CPBinder +{ +} + +- (void)_updatePlaceholdersWithOptions:(CPDictionary)options +{ + [self _setPlaceholder:nil forMarker:CPMultipleValuesMarker isDefault:YES]; + [self _setPlaceholder:nil forMarker:CPNoSelectionMarker isDefault:YES]; + [self _setPlaceholder:nil forMarker:CPNotApplicableMarker isDefault:YES]; + [self _setPlaceholder:nil forMarker:CPNullMarker isDefault:YES]; +} + +- (void)setPlaceholderValue:(id)aValue withMarker:(CPString)aMarker forBinding:(CPString)aBinding +{ + [_source setImage:nil]; +} + +- (void)setValue:(id)aValue forBinding:(CPString)aBinding +{ + if (aBinding === CPValueURLBinding || aBinding === CPValuePathBinding) + aValue = [[CPImage alloc] initWithContentsOfFile:aValue]; + + [_source setImage:aValue]; +} + +@end + var CPImageViewImageKey = @"CPImageViewImageKey", CPImageViewImageScalingKey = @"CPImageViewImageScalingKey", CPImageViewImageAlignmentKey = @"CPImageViewImageAlignmentKey", diff --git a/AppKit/CPKeyValueBinding.j b/AppKit/CPKeyValueBinding.j index a7aeff913..608f7ae4a 100644 --- a/AppKit/CPKeyValueBinding.j +++ b/AppKit/CPKeyValueBinding.j @@ -555,6 +555,9 @@ CPSelectedIndexBinding = @"selectedIndex"; CPTextColorBinding = @"textColor"; CPToolTipBinding = @"toolTip"; CPValueBinding = @"value"; +CPValueURLBinding = @"valueURL"; +CPValuePathBinding = @"valuePath"; +CPDataBinding = @"data"; //Binding options constants CPAllowsEditingMultipleValuesSelectionBindingOption = @"CPAllowsEditingMultipleValuesSelection"; diff --git a/Tests/Manual/CPImageViewbindingsTest/AppController.j b/Tests/Manual/CPImageViewbindingsTest/AppController.j new file mode 100644 index 000000000..bdc431c95 --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/AppController.j @@ -0,0 +1,46 @@ +/* + * AppController.j + * CPImageViewbindingsTest + * + * Created by You on March 13, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import + + +@implementation AppController : CPObject +{ + CPWindow theWindow; //this "outlet" is connected automatically by the Cib + CPArray content @accessors; +} + +- (void)awakeFromCib +{ + content = [CPArray new]; + + var path = [[CPBundle mainBundle] pathForResource:@"images.plist"], + request = [CPURLRequest requestWithURL:path], + connection = [CPURLConnection connectionWithRequest:request delegate:self]; + + [theWindow setFullPlatformWindow:YES]; +} + +- (void)connection:(CPURLConnection)connection didReceiveData:(CPString)dataString +{ + if (!dataString) + return; + + var data = [[CPData alloc] initWithRawString:dataString], + theRows = [CPPropertyListSerialization propertyListFromData:data format:CPPropertyListXMLFormat_v1_0]; + +// Add a CPImage to the model to test CPValueBinding. + var path = [[CPBundle mainBundle] pathForResource:@"value.jpg"], + image = [[CPImage alloc] initWithContentsOfFile:path], + dict = [CPDictionary dictionaryWithObject:image forKey:@"image"]; + [theRows addObject:dict]; + + [self setContent:theRows]; +} + +@end diff --git a/Tests/Manual/CPImageViewbindingsTest/Info.plist b/Tests/Manual/CPImageViewbindingsTest/Info.plist new file mode 100644 index 000000000..78c464a7a --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/Info.plist @@ -0,0 +1,10 @@ + + + + + Main cib file base name + MainMenu.cib + CPBundleName + CPImageViewbindingsTest + + diff --git a/Tests/Manual/CPImageViewbindingsTest/Jakefile b/Tests/Manual/CPImageViewbindingsTest/Jakefile new file mode 100644 index 000000000..6bdfbd679 --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/Jakefile @@ -0,0 +1,94 @@ +/* + * Jakefile + * CPImageViewbindingsTest + * + * Created by You on March 13, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPImageViewbindingsTest", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPImageViewbindingsTest.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPImageViewbindingsTest"); + task.setIdentifier("com.yourcompany.CPImageViewbindingsTest"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPImageViewbindingsTest"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + task.setNib2CibFlags("-R Resources/"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPImageViewbindingsTest"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPImageViewbindingsTest", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPImageViewbindingsTest", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPImageViewbindingsTest")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPImageViewbindingsTest"), FILE.join("Build", "Deployment", "CPImageViewbindingsTest")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPImageViewbindingsTest")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPImageViewbindingsTest"), FILE.join("Build", "Desktop", "CPImageViewbindingsTest", "CPImageViewbindingsTest.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPImageViewbindingsTest", "CPImageViewbindingsTest.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPImageViewbindingsTest")); + print("----------------------------"); +} diff --git a/Tests/Manual/CPImageViewbindingsTest/Resources/MainMenu.cib b/Tests/Manual/CPImageViewbindingsTest/Resources/MainMenu.cib new file mode 100644 index 000000000..0578be53b --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/Resources/MainMenu.cib @@ -0,0 +1,4 @@ +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;51E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;52E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;53E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;49E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;54E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;26E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;55E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;47E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;56E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;57E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;58E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;60E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;45E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;61E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;57E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;62E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;63E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;64E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;65E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;58E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;35E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;67E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;57E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;68E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;69E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;34E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;70E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;57E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;71E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;72E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;51E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;49E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;73E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;74E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;75E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;76E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;52E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;77E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;78E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;79E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;80E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;81E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;28E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;83E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;83E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;84E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;86E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;87E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;88E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;89E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;90E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;2;92E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;2;93E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;40E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;37E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;2;94E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;2;94E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;2;94E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;2;94E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;2;95E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;2;95E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;2;95E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;2;96E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;2;97E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;92E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;98E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;98E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;92E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;100E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;101E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;12;$agrid-colorD;K;6;CP$UIDd;3;102E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;103E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;104E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;105E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;2;82E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;103E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;2;95E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;2;95E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;2;95E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;2;95E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;2;95E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;106E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;102E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;1;0E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;107E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;109E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;39E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;110E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;111E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;112E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;114E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;115E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;116E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;107E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;95E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;117E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;111E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;112E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;118E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;119E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;116E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;107E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;107E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;120E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;121E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;122E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;123E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;82E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;30E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;124E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;103E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;82E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;125E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;93E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;126E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;126E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;93E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;127E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;32E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;128E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;129E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;122E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;130E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;123E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;131E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;132E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;30E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;133E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;103E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;82E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;134E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPImageViewK;8;$classesA;S;11;CPImageViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;135E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;136E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;89E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;116E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;82E;K;11;$aalignmentD;K;6;CP$UIDd;2;82E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;103E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;2;82E;K;24;CPImageViewIsEditableKeyD;K;6;CP$UIDd;2;95E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;137E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;89E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;6;$afontD;K;6;CP$UIDd;3;141E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;82E;K;11;$aalignmentD;K;6;CP$UIDd;3;103E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;95E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;142E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;143E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;107E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;107E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;107E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;82E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;103E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;136E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;89E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;116E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;82E;K;11;$aalignmentD;K;6;CP$UIDd;2;82E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;103E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;2;82E;K;24;CPImageViewIsEditableKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;145E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;89E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;82E;K;11;$aalignmentD;K;6;CP$UIDd;3;103E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;95E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;147E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;143E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;107E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;107E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;107E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;82E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;103E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;148E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;149E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;89E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;150E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;97E;K;11;$aalignmentD;K;6;CP$UIDd;3;103E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;95E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;151E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;143E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;95E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;95E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;95E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;100E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;97E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;103E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;152E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;153E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;89E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;6;$afontD;K;6;CP$UIDd;3;141E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;82E;K;11;$aalignmentD;K;6;CP$UIDd;3;103E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;95E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;143E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;107E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;107E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;107E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;82E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;103E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;155E;E;D;K;10;$classnameS;17;CPArrayControllerK;8;$classesA;S;17;CPArrayControllerS;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;156E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;2;95E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;107E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;2;95E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;2;95E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;2;95E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;2;95E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;2;95E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;107E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;107E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;26E;E;E;S;8;delegateS;9;theWindowS;20;value: selection.urlS;5;valueS;13;selection.urlD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;E;E;S;22;value: selection.imageS;15;selection.imageD;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;E;E;S;23;valueURL: selection.urlS;8;valueURLD;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;E;E;S;38;value: arrangedObjects.image.classNameS;31;arrangedObjects.image.classNameD;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;E;E;S;26;value: arrangedObjects.urlS;19;arrangedObjects.urlD;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;E;E;S;21;contentArray: contentS;12;contentArrayS;7;contentD;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;E;E;S;32;{10000000000000, 10000000000000}S;8;CPWindowS;24;{{335, 268}, {794, 370}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {794, 370}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;E;E;S;6;normalS;22;{{20, 29}, {381, 143}}S;20;{{0, 0}, {381, 143}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;96E;E;E;d;2;36S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;91E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;158E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;159E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;122E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;160E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;32E;E;D;K;6;$classD;K;6;CP$UIDd;2;91E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;161E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;162E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;122E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;160E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;39E;E;d;2;10T;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;164E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;E;d;1;2S;20;{{0, 0}, {430, 125}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;99E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;165E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;2;99E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;166E;E;d;1;4d;2;23S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;E;E;F;D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;108E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;82E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;167E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;168E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;169E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;E;d;3;167d;2;40d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;113E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;164E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;171E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;82E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;172E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;146E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;164E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;175E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;103E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;97E;K;11;$aalignmentD;K;6;CP$UIDd;2;82E;K;15;$acontent-insetD;K;6;CP$UIDd;3;177E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;151E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;143E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;103E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;82E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;151E;E;d;1;3d;3;257D;K;6;$classD;K;6;CP$UIDd;3;113E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;164E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;178E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;171E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;82E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;179E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;146E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;164E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;180E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;103E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;97E;K;11;$aalignmentD;K;6;CP$UIDd;2;82E;K;15;$acontent-insetD;K;6;CP$UIDd;3;181E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;151E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;143E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;103E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;82E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;151E;E;S;19;{{1, 1}, {379, 15}}S;19;{{0, 0}, {379, 15}}d;1;8S;8;scrollerS;29;_horizontalScrollerDidScroll:f;18;0.8813953488372093S;19;{{0, 0}, {430, 23}}S;14;tableHeaderRowS;22;{{224, 24}, {15, 102}}S;19;{{0, 0}, {15, 102}}d;11;-2147483648S;17;disabled+verticald;2;37S;27;_verticalScrollerDidScroll:f;18;0.1947367936372757S;23;{{421, 26}, {201, 149}}S;20;{{0, 0}, {201, 149}}S;23;{{637, 29}, {149, 131}}S;20;{{0, 0}, {149, 131}}S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;140E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;182E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;183E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;107E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;107E;E;S;27;Editable +CPValueURLBinding.d;4;3072S;24;{{421, 188}, {201, 149}}S;24;{{637, 191}, {149, 131}}D;K;6;$classD;K;6;CP$UIDd;3;140E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;182E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;183E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;107E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;107E;E;S;24;Editable +CPValueBinding.S;22;{{14, 257}, {389, 29}}S;19;{{0, 0}, {389, 29}}S;19;bezeled+placeholderS;0;S;22;{{17, 206}, {387, 51}}S;19;{{0, 0}, {387, 51}}S;85;Image URL selection +Change to 'Resources/value.jpg' or an absolute url and hit enter.S;13;AppControllerS;19;CPMutableDictionaryS;20;{{1, 1}, {379, 125}}S;20;{{0, 0}, {379, 125}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;32E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;99E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;184E;E;S;21;{{1, 126}, {379, 17}}S;19;{{0, 0}, {379, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;E;E;S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;185E;E;E;S;20;{{224, 0}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;188E;E;E;S;12;columnHeaderS;9;Image URLS;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;174E;K;4;nameD;K;6;CP$UIDd;3;189E;K;12;defaultValueD;K;6;CP$UIDd;3;146E;K;6;valuesD;K;6;CP$UIDd;3;190E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;176E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;191E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;192E;E;E;S;7;CPImageD;K;6;$classD;K;6;CP$UIDd;3;174E;K;4;nameD;K;6;CP$UIDd;3;189E;K;12;defaultValueD;K;6;CP$UIDd;3;146E;K;6;valuesD;K;6;CP$UIDd;3;193E;E;D;K;6;$classD;K;6;CP$UIDd;3;176E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;191E;E;S;17;Arial, sans-serifd;2;12D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;E;E;d;1;1f;3;0.5D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;187E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;114E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;164E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;114E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;194E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;195E;K;6;normalD;K;6;CP$UIDd;3;146E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;187E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;118E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;164E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;118E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;194E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;85E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;195E;K;6;normalD;K;6;CP$UIDd;3;146E;E;E;d;2;18D;K;6;$classD;K;6;CP$UIDd;3;140E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;182E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;183E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;95E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;107E;E;E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPImageViewbindingsTest/Resources/MainMenu.xib b/Tests/Manual/CPImageViewbindingsTest/Resources/MainMenu.xib new file mode 100644 index 000000000..01a07c8b2 --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/Resources/MainMenu.xib @@ -0,0 +1,905 @@ + + + + 1050 + 11D50 + 2427 + 1138.32 + 568.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2427 + + + YES + NSScroller + NSArrayController + NSTableHeaderView + NSScrollView + NSTextFieldCell + NSImageView + NSImageCell + NSTableView + NSCustomObject + NSView + NSWindowTemplate + NSTableColumn + NSTextField + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + 7 + 2 + {{335, 390}, {794, 370}} + 1946157056 + Window + NSWindow + + + + + 256 + + YES + + + 268 + + YES + + + 2304 + + YES + + + 256 + {430, 125} + + + + _NS:13 + YES + + + 256 + {430, 17} + + + + _NS:16 + + + + + -2147483392 + {{224, 0}, {16, 17}} + + _NS:19 + + + YES + + 167 + 40 + 1000 + + 75497536 + 2048 + Image URL + + LucidaGrande + 11 + 3100 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337696320 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 3 + YES + YES + + + + 257 + 40 + 1000 + + 75584576 + 2048 + CPImage + + + + + + 337728576 + 2048 + Text Cell + + + + + + 3 + YES + + + + 3 + 2 + + 3 + MQA + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -566231040 + + + 4 + 15 + 0 + YES + 0 + 1 + + + {{1, 17}, {379, 125}} + + + + _NS:11 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _NS:58 + + _doScroller: + 37 + 0.1947367936372757 + + + + 256 + {{1, 127}, {379, 15}} + + + + _NS:60 + YES + 1 + + _doScroller: + 0.88139534883720927 + + + + 2304 + + YES + + + {{1, 0}, {379, 17}} + + + + _NS:15 + + + 4 + + + {{20, 198}, {381, 143}} + + + + _NS:9 + 133810 + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{421, 195}, {201, 149}} + + + + _NS:9 + YES + + 270532608 + 0 + _NS:9 + 0 + 3 + 2 + NO + + YES + + + + 268 + {{637, 210}, {149, 131}} + + + + _NS:9 + {250, 750} + YES + + 67108864 + 272629760 + RWRpdGFibGUKQ1BWYWx1ZVVSTEJpbmRpbmcuA + + LucidaGrande + 13 + 16 + + _NS:9 + + + 6 + System + controlColor + + + + + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{421, 33}, {201, 149}} + + + + _NS:9 + YES + + 270532608 + 0 + _NS:9 + 0 + 3 + 2 + NO + + YES + + + + 268 + {{637, 48}, {149, 131}} + + + + _NS:9 + {250, 750} + YES + + 67108864 + 272629760 + RWRpdGFibGUKQ1BWYWx1ZUJpbmRpbmcuA + + _NS:9 + + + + + + + + 268 + {{20, 87}, {381, 22}} + + + + _NS:9 + YES + + -1804599231 + 272630784 + + + _NS:9 + + YES + + 6 + System + textBackgroundColor + + + + 6 + System + textColor + + + + + + + 268 + {{17, 113}, {387, 51}} + + + + _NS:1505 + YES + + 67239424 + 272629760 + SW1hZ2UgVVJMIHNlbGVjdGlvbgpDaGFuZ2UgdG8gJ1Jlc291cmNlcy92YWx1ZS5qcGcnIG9yIGFuIGFi +c29sdXRlIHVybCBhbmQgaGl0IGVudGVyLg + + _NS:1505 + + + + + + + {794, 370} + + + + + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES + + + AppController + + + YES + + YES + YES + YES + YES + YES + + + + + YES + + + delegate + + + + 451 + + + + theWindow + + + + 459 + + + + contentArray: content + + + + + + contentArray: content + contentArray + content + 2 + + + 490 + + + + value: arrangedObjects.url + + + + + + value: arrangedObjects.url + value + arrangedObjects.url + 2 + + + 474 + + + + value: arrangedObjects.image.className + + + + + + value: arrangedObjects.image.className + value + arrangedObjects.image.className + 2 + + + 505 + + + + valueURL: selection.url + + + + + + valueURL: selection.url + valueURL + selection.url + 2 + + + 479 + + + + value: selection.image + + + + + + value: selection.image + value + selection.image + 2 + + + 503 + + + + value: selection.url + + + + + + value: selection.url + value + selection.url + 2 + + + 511 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 371 + + + YES + + + + + + 372 + + + YES + + + + + + + + + + + + 450 + + + + + 460 + + + + + 461 + + + YES + + + + + + + + + 462 + + + YES + + + + + + + 463 + + + + + 464 + + + + + 465 + + + + + 466 + + + YES + + + + + + 467 + + + YES + + + + + + 468 + + + + + 469 + + + + + 470 + + + YES + + + + + + 471 + + + + + 495 + + + YES + + + + + + 496 + + + + + 497 + + + YES + + + + + + 498 + + + YES + + + + + + 499 + + + + + 500 + + + + + 506 + + + YES + + + + + + 507 + + + + + 508 + + + YES + + + + + + 509 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 371.IBPluginDependency + 371.IBWindowTemplateEditedContentRect + 371.NSWindowTemplate.visibleAtLaunch + 372.IBPluginDependency + 450.IBPluginDependency + 460.IBPluginDependency + 461.IBPluginDependency + 462.IBPluginDependency + 463.IBPluginDependency + 464.IBPluginDependency + 465.IBPluginDependency + 466.IBPluginDependency + 467.IBPluginDependency + 468.IBPluginDependency + 469.IBPluginDependency + 470.IBPluginDependency + 471.IBPluginDependency + 495.IBPluginDependency + 496.IBPluginDependency + 497.IBPluginDependency + 498.IBPluginDependency + 499.IBPluginDependency + 500.IBPluginDependency + 506.IBPluginDependency + 507.IBPluginDependency + 508.IBPluginDependency + 509.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{303, 221}, {480, 360}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + + + + YES + + + + + 511 + + + + YES + + AppController + NSObject + + IBProjectSource + ./Classes/AppController.h + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + 3 + + diff --git a/Tests/Manual/CPImageViewbindingsTest/Resources/images.plist b/Tests/Manual/CPImageViewbindingsTest/Resources/images.plist new file mode 100644 index 000000000..783ab3d40 --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/Resources/images.plist @@ -0,0 +1,10 @@ + + + + + + url + Resources/valueURL.jpg + + + diff --git a/Tests/Manual/CPImageViewbindingsTest/Resources/spinner.gif b/Tests/Manual/CPImageViewbindingsTest/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/CPImageViewbindingsTest/Resources/spinner.gif differ diff --git a/Tests/Manual/CPImageViewbindingsTest/Resources/value.jpg b/Tests/Manual/CPImageViewbindingsTest/Resources/value.jpg new file mode 100644 index 000000000..b4fc056fc Binary files /dev/null and b/Tests/Manual/CPImageViewbindingsTest/Resources/value.jpg differ diff --git a/Tests/Manual/CPImageViewbindingsTest/Resources/valueURL.jpg b/Tests/Manual/CPImageViewbindingsTest/Resources/valueURL.jpg new file mode 100644 index 000000000..d766dd08f Binary files /dev/null and b/Tests/Manual/CPImageViewbindingsTest/Resources/valueURL.jpg differ diff --git a/Tests/Manual/CPImageViewbindingsTest/index-debug.html b/Tests/Manual/CPImageViewbindingsTest/index-debug.html new file mode 100644 index 000000000..9781012c7 --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/index-debug.html @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + CPImageViewbindingsTest + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPImageViewbindingsTest/index.html b/Tests/Manual/CPImageViewbindingsTest/index.html new file mode 100644 index 000000000..6ff6852a4 --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/index.html @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + CPImageViewbindingsTest + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPImageViewbindingsTest/main.j b/Tests/Manual/CPImageViewbindingsTest/main.j new file mode 100644 index 000000000..d22fd17d4 --- /dev/null +++ b/Tests/Manual/CPImageViewbindingsTest/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPImageViewbindingsTest + * + * Created by You on March 13, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +}