diff --git a/AppKit/CPKeyValueBinding.j b/AppKit/CPKeyValueBinding.j index 90d3e198d..71b2a6729 100644 --- a/AppKit/CPKeyValueBinding.j +++ b/AppKit/CPKeyValueBinding.j @@ -441,30 +441,30 @@ CPToolTipBinding = @"CPToolTipBinding"; CPValueBinding = @"value"; //Binding options constants -CPAllowsEditingMultipleValuesSelectionBindingOption = @"CPAllowsEditingMultipleValuesSelectionBindingOption"; -CPAllowsNullArgumentBindingOption = @"CPAllowsNullArgumentBindingOption"; -CPConditionallySetsEditableBindingOption = @"CPConditionallySetsEditableBindingOption"; -CPConditionallySetsEnabledBindingOption = @"CPConditionallySetsEnabledBindingOption"; -CPConditionallySetsHiddenBindingOption = @"CPConditionallySetsHiddenBindingOption"; -CPContinuouslyUpdatesValueBindingOption = @"CPContinuouslyUpdatesValueBindingOption"; -CPCreatesSortDescriptorBindingOption = @"CPCreatesSortDescriptorBindingOption"; -CPDeletesObjectsOnRemoveBindingsOption = @"CPDeletesObjectsOnRemoveBindingsOption"; -CPDisplayNameBindingOption = @"CPDisplayNameBindingOption"; -CPDisplayPatternBindingOption = @"CPDisplayPatternBindingOption"; -CPHandlesContentAsCompoundValueBindingOption = @"CPHandlesContentAsCompoundValueBindingOption"; -CPInsertsNullPlaceholderBindingOption = @"CPInsertsNullPlaceholderBindingOption"; -CPInvokesSeparatelyWithArrayObjectsBindingOption = @"CPInvokesSeparatelyWithArrayObjectsBindingOption"; -CPMultipleValuesPlaceholderBindingOption = @"CPMultipleValuesPlaceholderBindingOption"; -CPNoSelectionPlaceholderBindingOption = @"CPNoSelectionPlaceholderBindingOption"; -CPNotApplicablePlaceholderBindingOption = @"CPNotApplicablePlaceholderBindingOption"; -CPNullPlaceholderBindingOption = @"CPNullPlaceholderBindingOption"; -CPPredicateFormatBindingOption = @"CPPredicateFormatBindingOption"; -CPRaisesForNotApplicableKeysBindingOption = @"CPRaisesForNotApplicableKeysBindingOption"; -CPSelectorNameBindingOption = @"CPSelectorNameBindingOption"; -CPSelectsAllWhenSettingContentBindingOption = @"CPSelectsAllWhenSettingContentBindingOption"; -CPValidatesImmediatelyBindingOption = @"CPValidatesImmediatelyBindingOption"; -CPValueTransformerNameBindingOption = @"CPValueTransformerNameBindingOption"; -CPValueTransformerBindingOption = @"CPValueTransformerBindingOption"; +CPAllowsEditingMultipleValuesSelectionBindingOption = @"CPAllowsEditingMultipleValuesSelection"; +CPAllowsNullArgumentBindingOption = @"CPAllowsNullArgument"; +CPConditionallySetsEditableBindingOption = @"CPConditionallySetsEditable"; +CPConditionallySetsEnabledBindingOption = @"CPConditionallySetsEnabled"; +CPConditionallySetsHiddenBindingOption = @"CPConditionallySetsHidden"; +CPContinuouslyUpdatesValueBindingOption = @"CPContinuouslyUpdatesValue"; +CPCreatesSortDescriptorBindingOption = @"CPCreatesSortDescriptor"; +CPDeletesObjectsOnRemoveBindingsOption = @"CPDeletesObjectsOnRemove"; +CPDisplayNameBindingOption = @"CPDisplayName"; +CPDisplayPatternBindingOption = @"CPDisplayPattern"; +CPHandlesContentAsCompoundValueBindingOption = @"CPHandlesContentAsCompoundValue"; +CPInsertsNullPlaceholderBindingOption = @"CPInsertsNullPlaceholder"; +CPInvokesSeparatelyWithArrayObjectsBindingOption = @"CPInvokesSeparatelyWithArrayObjects"; +CPMultipleValuesPlaceholderBindingOption = @"CPMultipleValuesPlaceholder"; +CPNoSelectionPlaceholderBindingOption = @"CPNoSelectionPlaceholder"; +CPNotApplicablePlaceholderBindingOption = @"CPNotApplicablePlaceholder"; +CPNullPlaceholderBindingOption = @"CPNullPlaceholder"; +CPPredicateFormatBindingOption = @"CPPredicateFormat"; +CPRaisesForNotApplicableKeysBindingOption = @"CPRaisesForNotApplicableKeys"; +CPSelectorNameBindingOption = @"CPSelectorName"; +CPSelectsAllWhenSettingContentBindingOption = @"CPSelectsAllWhenSettingContent"; +CPValidatesImmediatelyBindingOption = @"CPValidatesImmediately"; +CPValueTransformerNameBindingOption = @"CPValueTransformerName"; +CPValueTransformerBindingOption = @"CPValueTransformer"; CPIsControllerMarker = function(/*id*/anObject) { diff --git a/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j b/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j index 93788f8a4..41c28b579 100644 --- a/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j +++ b/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j @@ -1,5 +1,5 @@ -@import +@import /*! Bindings tests exercising the functionality seen in the Cocoa example "SimpleBindingsAdoption". @@ -122,6 +122,11 @@ [button performClick:self]; [self verifyVolume:0 method:"bindings"]; + + // Test if CPNullPlaceholderBindingOption is correctly decoded + var bindingInfo = [textField infoForBinding:@"value"]; + var nullPlaceHolder = [[bindingInfo objectForKey:CPOptionsKey] objectForKey:CPNullPlaceholderBindingOption]; + [self assert:@"Nothing" equals:nullPlaceHolder]; } - (void)verifyVolume:(float)aVolume method:(CPString)aMethod diff --git a/Tests/AppKit/Resources/SimpleBindingsAdoption_03.cib b/Tests/AppKit/Resources/SimpleBindingsAdoption_03.cib index 568b90f4d..841c6afe4 100644 --- a/Tests/AppKit/Resources/SimpleBindingsAdoption_03.cib +++ b/Tests/AppKit/Resources/SimpleBindingsAdoption_03.cib @@ -1 +1 @@ -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;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;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;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;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;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;E;E;S;16;IBCocoaFrameworkD;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;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;28E;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;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;59E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;60E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;25E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;62E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;63E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;25E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;65E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;66E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;61E;K;11;$aalignmentD;K;6;CP$UIDd;2;67E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;61E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;68E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;2;69E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;70E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;67E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;61E;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;21E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;25E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;71E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;72E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;25E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;73E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;74E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;67E;K;11;$aalignmentD;K;6;CP$UIDd;2;68E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;75E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;76E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;77E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;77E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;77E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;2;79E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;67E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;68E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;80E;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;24E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;81E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;81E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;82E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;E;D;K;10;$classnameS;8;CPSliderK;8;$classesA;S;8;CPSliderS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;26E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;25E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;84E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;85E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;25E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;86E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;6;$afontD;K;6;CP$UIDd;2;88E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;61E;K;11;$aalignmentD;K;6;CP$UIDd;2;61E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;89E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;68E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;2;61E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;2;90E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;2;61E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;25E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;91E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;92E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;25E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;73E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;61E;K;11;$aalignmentD;K;6;CP$UIDd;2;68E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;93E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;76E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;70E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;70E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;70E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;61E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;68E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;94E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;95E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;96E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;97E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;98E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;25E;E;D;K;10;$classnameS;18;CPObjectControllerK;8;$classesA;S;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;2;99E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;1;0E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;2;70E;E;S;18;Push Button (Mute)S;10;Text FieldS;11;ApplicationS;12;Content ViewS;15;Text Field CellS;17;Horizontal SliderS;12;File's OwnerS;21;Static Text (Volume:)S;15;Window (Window)S;18;Button Cell (Mute)S;11;Slider CellS;17;Object ControllerS;25;Text Field Cell (Volume:)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;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;20E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;65E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;32E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;27E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;86E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;22E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;30E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;103E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;20E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;104E;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;55E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;22E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;32E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;106E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;107E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;27E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;32E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;106E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;107E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;32E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;109E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;110E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;1;0E;E;S;35;NSKeyValueBindingSimpleBindingsTestD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;d;1;0S;20;{{77, 85}, {82, 24}}S;18;{{0, 0}, {82, 24}}d;1;8S;6;buttonS;8;borderedd;1;2d;1;4S;4;MuteF;S;21;{{79, 16}, {128, 30}}S;19;{{0, 0}, {128, 30}}S;9;textfieldS;19;bezeled+placeholderS;0;d;4;3072T;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;78E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;111E;E;S;13;CPApplicationS;20;{{0, 0}, {223, 125}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;28E;E;E;S;6;normalS;21;{{81, 48}, {124, 21}}S;19;{{0, 0}, {124, 21}}S;6;sliderD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;87E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;112E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;113E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;70E;E;d;1;5d;2;11S;20;{{17, 23}, {61, 17}}S;18;{{0, 0}, {61, 17}}S;7;Volume:S;28;{1.79769e+308, 1.79769e+308}S;8;CPWindowS;24;{{196, 518}, {223, 125}}d;2;15S;6;WindowS;19;CPMutableDictionaryS;16;objectControllerS;9;textFieldS;9;theWindowS;8;delegateS;10;muteTrack:S;23;value: selection.volumeS;5;valueS;16;selection.volumeS;20;contentObject: trackS;13;contentObjectS;5;trackD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;114E;E;E;S;9;Helveticad;2;12d;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file +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;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;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;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;32E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;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;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;E;E;S;16;IBCocoaFrameworkD;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;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;22E;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;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;59E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;60E;E;D;K;10;$classnameS;8;CPSliderK;8;$classesA;S;8;CPSliderS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;22E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;62E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;63E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;22E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;65E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;66E;K;6;$afontD;K;6;CP$UIDd;2;68E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;61E;K;11;$aalignmentD;K;6;CP$UIDd;2;61E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;69E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;70E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;2;61E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;2;71E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;2;61E;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;21E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;72E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;72E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;73E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;74E;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;24E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;22E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;75E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;76E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;22E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;77E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;78E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;79E;K;11;$aalignmentD;K;6;CP$UIDd;2;70E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;80E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;81E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;82E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;82E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;82E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;2;84E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;79E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;70E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;26E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;85E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;86E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;87E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;88E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;89E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;22E;E;D;K;10;$classnameS;18;CPObjectControllerK;8;$classesA;S;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;2;90E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;1;0E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;2;91E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;22E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;92E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;93E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;22E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;95E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;61E;K;11;$aalignmentD;K;6;CP$UIDd;2;79E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;61E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;70E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;2;96E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;91E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;79E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;61E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;22E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;61E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;97E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;98E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;22E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;64E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;77E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;66E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;61E;K;11;$aalignmentD;K;6;CP$UIDd;2;70E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;99E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;81E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;91E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;91E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;91E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;61E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;70E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;S;17;Horizontal SliderS;12;Content ViewS;11;ApplicationS;18;Button Cell (Mute)S;10;Text FieldS;11;Slider CellS;15;Window (Window)S;17;Object ControllerS;15;Text Field CellS;25;Text Field Cell (Volume:)S;18;Push Button (Mute)S;12;File's OwnerS;21;Static Text (Volume:)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;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;94E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;29E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;20E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;65E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;25E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;27E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;46E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;27E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;103E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;31E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;104E;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;55E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;25E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;29E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;106E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;107E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;20E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;29E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;106E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;107E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;29E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;111E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;112E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;113E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;114E;E;S;35;NSKeyValueBindingSimpleBindingsTestD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;d;1;0S;21;{{81, 48}, {124, 21}}S;19;{{0, 0}, {124, 21}}d;1;8S;6;sliderS;6;normalD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;67E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;115E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;116E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;91E;E;d;1;5d;1;4d;2;11S;20;{{0, 0}, {223, 125}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;32E;E;E;S;13;CPApplicationS;21;{{79, 16}, {128, 30}}S;19;{{0, 0}, {128, 30}}S;9;textfieldS;19;bezeled+placeholderd;1;2S;0;d;4;3072T;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;117E;E;S;28;{1.79769e+308, 1.79769e+308}S;8;CPWindowS;24;{{196, 518}, {223, 125}}d;2;15S;6;WindowS;19;CPMutableDictionaryF;S;20;{{77, 85}, {82, 24}}S;18;{{0, 0}, {82, 24}}S;6;buttonS;8;borderedS;4;MuteS;20;{{17, 23}, {61, 17}}S;18;{{0, 0}, {61, 17}}S;7;Volume:S;16;objectControllerS;9;textFieldS;9;theWindowS;8;delegateS;10;muteTrack:S;23;value: selection.volumeS;5;valueS;16;selection.volumeD;K;10;$classnameS;19;CPMutableDictionaryK;8;$classesA;S;19;CPMutableDictionaryS;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;108E;K;10;CP.objectsD;K;22;CPValidatesImmediatelyD;K;6;CP$UIDd;2;82E;K;17;CPNullPlaceholderD;K;6;CP$UIDd;3;118E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;108E;K;10;CP.objectsD;E;E;S;20;contentObject: trackS;13;contentObjectS;5;trackD;K;6;$classD;K;6;CP$UIDd;3;108E;K;10;CP.objectsD;E;E;S;9;Helveticad;2;12D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;E;E;S;7;Nothingd;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/AppKit/Resources/SimpleBindingsAdoption_03.xib b/Tests/AppKit/Resources/SimpleBindingsAdoption_03.xib index ccbaf70f5..f32ce23c9 100644 --- a/Tests/AppKit/Resources/SimpleBindingsAdoption_03.xib +++ b/Tests/AppKit/Resources/SimpleBindingsAdoption_03.xib @@ -3,12 +3,12 @@ 1060 10H574 - 804 + 788 1038.35 461.00 com.apple.InterfaceBuilder.CocoaPlugin - 804 + 788 YES @@ -199,22 +199,6 @@ 16 - - - value: selection.volume - - - - - - value: selection.volume - value - selection.volume - 2 - - - 19 - value: selection.volume @@ -287,6 +271,35 @@ 40 + + + value: selection.volume + + + + + + value: selection.volume + value + selection.volume + + YES + + YES + NSNullPlaceholder + NSValidatesImmediately + + + YES + Nothing + + + + 2 + + + 43 + @@ -495,7 +508,7 @@ - 40 + 43 diff --git a/Tools/nib2cib/NSMutableDictionary.j b/Tools/nib2cib/NSDictionary.j similarity index 92% rename from Tools/nib2cib/NSMutableDictionary.j rename to Tools/nib2cib/NSDictionary.j index c99a3ee83..ffd55df50 100644 --- a/Tools/nib2cib/NSMutableDictionary.j +++ b/Tools/nib2cib/NSDictionary.j @@ -23,7 +23,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -@implementation NSMutableDictionary : CPObject +@implementation NSDictionary : CPObject { } @@ -33,3 +33,7 @@ } @end + +@implementation NSMutableDictionary : NSDictionary +{ +} diff --git a/Tools/nib2cib/NSFoundation.j b/Tools/nib2cib/NSFoundation.j index f933cf17e..d49818b1a 100644 --- a/Tools/nib2cib/NSFoundation.j +++ b/Tools/nib2cib/NSFoundation.j @@ -21,6 +21,6 @@ */ @import "NSArray.j" -@import "NSMutableDictionary.j" +@import "NSDictionary.j" @import "NSMutableString.j" @import "NSSet.j" diff --git a/Tools/nib2cib/NSNibConnector.j b/Tools/nib2cib/NSNibConnector.j index e92e6be0a..e845e36b3 100644 --- a/Tools/nib2cib/NSNibConnector.j +++ b/Tools/nib2cib/NSNibConnector.j @@ -117,8 +117,17 @@ NIB_CONNECTION_EQUIVALENCY_TABLE = {}; { _binding = [aCoder decodeObjectForKey:@"NSBinding"]; _keyPath = [aCoder decodeObjectForKey:@"NSKeyPath"]; - _options = [aCoder decodeObjectForKey:@"NSOptions"]; - + + _options = [CPDictionary dictionary]; + var nsoptions = [aCoder decodeObjectForKey:@"NSOptions"], + keyEnum = [nsoptions keyEnumerator], + aKey; + while (aKey = [keyEnum nextObject]) + { + var CPKey = "CP" + aKey.substring(2); + [_options setObject:[nsoptions objectForKey:aKey] forKey:CPKey]; + } + CPLog.debug(@"Binding Connector: " + [_binding description] + " to: " + _destination + " " + [_keyPath description] + " " + [_options description]); }