view dstep/appkit/NSKeyValueBinding.d @ 16:19885b43130e

Huge update, the bridge actually works now
author Jacob Carlborg <doob@me.com>
date Sun, 03 Jan 2010 22:06:11 +0100
parents
children
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Sep 24, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.appkit.NSKeyValueBinding;

import dstep.appkit.AppKitDefines;
import dstep.foundation.NSArray;
import dstep.foundation.NSDictionary;
import dstep.foundation.NSString;
import dstep.foundation.NSObject;
import dstep.objc.bridge.Bridge;
import dstep.objc.objc;

import bindings = dstep.appkit.NSKeyValueBinding_bindings;

extern (C)
{
	extern
	{
		package id NSMultipleValuesMarker;
		package id NSNoSelectionMarker;
		package id NSNotApplicableMarker;
	}
}

private
{
	NSString NSObservedObjectKey_;
	NSString NSObservedKeyPathKey_;
	NSString NSOptionsKey_;
	NSString NSAlignmentBinding_;
	NSString NSAlternateImageBinding_;
	NSString NSAlternateTitleBinding_;
	NSString NSAnimateBinding_;
	NSString NSAnimationDelayBinding_;
	NSString NSArgumentBinding_;
	NSString NSAttributedStringBinding_;
	NSString NSContentArrayBinding_;
	NSString NSContentArrayForMultipleSelectionBinding_;
	NSString NSContentBinding_;
	NSString NSContentDictionaryBinding_;
	NSString NSContentHeightBinding_;
	NSString NSContentObjectBinding_;
	NSString NSContentObjectsBinding_;
	NSString NSContentSetBinding_;
	NSString NSContentValuesBinding_;
	NSString NSContentWidthBinding_;
	NSString NSCriticalValueBinding_;
	NSString NSDataBinding_;
	NSString NSDisplayPatternTitleBinding_;
	NSString NSDisplayPatternValueBinding_;
	NSString NSDocumentEditedBinding_;
	NSString NSDoubleClickArgumentBinding_;
	NSString NSDoubleClickTargetBinding_;
	NSString NSEditableBinding_;
	NSString NSEnabledBinding_;
	NSString NSExcludedKeysBinding_;
	NSString NSFilterPredicateBinding_;
	NSString NSFontBinding_;
	NSString NSFontBoldBinding_;
	NSString NSFontFamilyNameBinding_;
	NSString NSFontItalicBinding_;
	NSString NSFontNameBinding_;
	NSString NSFontSizeBinding_;
	NSString NSHeaderTitleBinding_;
	NSString NSHiddenBinding_;
	NSString NSImageBinding_;
	NSString NSIncludedKeysBinding_;
	NSString NSInitialKeyBinding_;
	NSString NSInitialValueBinding_;
	NSString NSIsIndeterminateBinding_;
	NSString NSLabelBinding_;
	NSString NSLocalizedKeyDictionaryBinding_;
	NSString NSManagedObjectContextBinding_;
	NSString NSMaximumRecentsBinding_;
	NSString NSMaxValueBinding_;
	NSString NSMaxWidthBinding_;
	NSString NSMinValueBinding_;
	NSString NSMinWidthBinding_;
	NSString NSMixedStateImageBinding_;
	NSString NSOffStateImageBinding_;
	NSString NSOnStateImageBinding_;
	NSString NSPredicateBinding_;
	NSString NSRecentSearchesBinding_;
	NSString NSRepresentedFilenameBinding_;
	NSString NSRowHeightBinding_;
	NSString NSSelectedIdentifierBinding_;
	NSString NSSelectedIndexBinding_;
	NSString NSSelectedLabelBinding_;
	NSString NSSelectedObjectBinding_;
	NSString NSSelectedObjectsBinding_;
	NSString NSSelectedTagBinding_;
	NSString NSSelectedValueBinding_;
	NSString NSSelectedValuesBinding_;
	NSString NSSelectionIndexesBinding_;
	NSString NSSelectionIndexPathsBinding_;
	NSString NSSortDescriptorsBinding_;
	NSString NSTargetBinding_;
	NSString NSTextColorBinding_;
	NSString NSTitleBinding_;
	NSString NSToolTipBinding_;
	NSString NSTransparentBinding_;
	NSString NSValueBinding_;
	NSString NSValuePathBinding_;
	NSString NSValueURLBinding_;
	NSString NSVisibleBinding_;
	NSString NSWarningValueBinding_;
	NSString NSWidthBinding_;
	NSString NSAllowsEditingMultipleValuesSelectionBindingOption_;
	NSString NSAllowsNullArgumentBindingOption_;
	NSString NSAlwaysPresentsApplicationModalAlertsBindingOption_;
	NSString NSConditionallySetsEditableBindingOption_;
	NSString NSConditionallySetsEnabledBindingOption_;
	NSString NSConditionallySetsHiddenBindingOption_;
	NSString NSContinuouslyUpdatesValueBindingOption_;
	NSString NSCreatesSortDescriptorBindingOption_;
	NSString NSDeletesObjectsOnRemoveBindingsOption_;
	NSString NSDisplayNameBindingOption_;
	NSString NSDisplayPatternBindingOption_;
	NSString NSContentPlacementTagBindingOption_;
	NSString NSHandlesContentAsCompoundValueBindingOption_;
	NSString NSInsertsNullPlaceholderBindingOption_;
	NSString NSInvokesSeparatelyWithArrayObjectsBindingOption_;
	NSString NSMultipleValuesPlaceholderBindingOption_;
	NSString NSNoSelectionPlaceholderBindingOption_;
	NSString NSNotApplicablePlaceholderBindingOption_;
	NSString NSNullPlaceholderBindingOption_;
	NSString NSRaisesForNotApplicableKeysBindingOption_;
	NSString NSPredicateFormatBindingOption_;
	NSString NSSelectorNameBindingOption_;
	NSString NSSelectsAllWhenSettingContentBindingOption_;
	NSString NSValidatesImmediatelyBindingOption_;
	NSString NSValueTransformerNameBindingOption_;
	NSString NSValueTransformerBindingOption_;
}

NSString NSObservedObjectKey ()
{
	if (NSObservedObjectKey_)
		return NSObservedObjectKey_;

	return NSObservedObjectKey_ = new NSString(bindings.NSObservedObjectKey);
}

NSString NSObservedKeyPathKey ()
{
	if (NSObservedKeyPathKey_)
		return NSObservedKeyPathKey_;

	return NSObservedKeyPathKey_ = new NSString(bindings.NSObservedKeyPathKey);
}

NSString NSOptionsKey ()
{
	if (NSOptionsKey_)
		return NSOptionsKey_;

	return NSOptionsKey_ = new NSString(bindings.NSOptionsKey);
}

NSString NSAlignmentBinding ()
{
	if (NSAlignmentBinding_)
		return NSAlignmentBinding_;

	return NSAlignmentBinding_ = new NSString(bindings.NSAlignmentBinding);
}

NSString NSAlternateImageBinding ()
{
	if (NSAlternateImageBinding_)
		return NSAlternateImageBinding_;

	return NSAlternateImageBinding_ = new NSString(bindings.NSAlternateImageBinding);
}

NSString NSAlternateTitleBinding ()
{
	if (NSAlternateTitleBinding_)
		return NSAlternateTitleBinding_;

	return NSAlternateTitleBinding_ = new NSString(bindings.NSAlternateTitleBinding);
}

NSString NSAnimateBinding ()
{
	if (NSAnimateBinding_)
		return NSAnimateBinding_;

	return NSAnimateBinding_ = new NSString(bindings.NSAnimateBinding);
}

NSString NSAnimationDelayBinding ()
{
	if (NSAnimationDelayBinding_)
		return NSAnimationDelayBinding_;

	return NSAnimationDelayBinding_ = new NSString(bindings.NSAnimationDelayBinding);
}

NSString NSArgumentBinding ()
{
	if (NSArgumentBinding_)
		return NSArgumentBinding_;

	return NSArgumentBinding_ = new NSString(bindings.NSArgumentBinding);
}

NSString NSAttributedStringBinding ()
{
	if (NSAttributedStringBinding_)
		return NSAttributedStringBinding_;

	return NSAttributedStringBinding_ = new NSString(bindings.NSAttributedStringBinding);
}

NSString NSContentArrayBinding ()
{
	if (NSContentArrayBinding_)
		return NSContentArrayBinding_;

	return NSContentArrayBinding_ = new NSString(bindings.NSContentArrayBinding);
}

NSString NSContentArrayForMultipleSelectionBinding ()
{
	if (NSContentArrayForMultipleSelectionBinding_)
		return NSContentArrayForMultipleSelectionBinding_;

	return NSContentArrayForMultipleSelectionBinding_ = new NSString(bindings.NSContentArrayForMultipleSelectionBinding);
}

NSString NSContentBinding ()
{
	if (NSContentBinding_)
		return NSContentBinding_;

	return NSContentBinding_ = new NSString(bindings.NSContentBinding);
}

NSString NSContentDictionaryBinding ()
{
	if (NSContentDictionaryBinding_)
		return NSContentDictionaryBinding_;

	return NSContentDictionaryBinding_ = new NSString(bindings.NSContentDictionaryBinding);
}

NSString NSContentHeightBinding ()
{
	if (NSContentHeightBinding_)
		return NSContentHeightBinding_;

	return NSContentHeightBinding_ = new NSString(bindings.NSContentHeightBinding);
}

NSString NSContentObjectBinding ()
{
	if (NSContentObjectBinding_)
		return NSContentObjectBinding_;

	return NSContentObjectBinding_ = new NSString(bindings.NSContentObjectBinding);
}

NSString NSContentObjectsBinding ()
{
	if (NSContentObjectsBinding_)
		return NSContentObjectsBinding_;

	return NSContentObjectsBinding_ = new NSString(bindings.NSContentObjectsBinding);
}

NSString NSContentSetBinding ()
{
	if (NSContentSetBinding_)
		return NSContentSetBinding_;

	return NSContentSetBinding_ = new NSString(bindings.NSContentSetBinding);
}

NSString NSContentValuesBinding ()
{
	if (NSContentValuesBinding_)
		return NSContentValuesBinding_;

	return NSContentValuesBinding_ = new NSString(bindings.NSContentValuesBinding);
}

NSString NSContentWidthBinding ()
{
	if (NSContentWidthBinding_)
		return NSContentWidthBinding_;

	return NSContentWidthBinding_ = new NSString(bindings.NSContentWidthBinding);
}

NSString NSCriticalValueBinding ()
{
	if (NSCriticalValueBinding_)
		return NSCriticalValueBinding_;

	return NSCriticalValueBinding_ = new NSString(bindings.NSCriticalValueBinding);
}

NSString NSDataBinding ()
{
	if (NSDataBinding_)
		return NSDataBinding_;

	return NSDataBinding_ = new NSString(bindings.NSDataBinding);
}

NSString NSDisplayPatternTitleBinding ()
{
	if (NSDisplayPatternTitleBinding_)
		return NSDisplayPatternTitleBinding_;

	return NSDisplayPatternTitleBinding_ = new NSString(bindings.NSDisplayPatternTitleBinding);
}

NSString NSDisplayPatternValueBinding ()
{
	if (NSDisplayPatternValueBinding_)
		return NSDisplayPatternValueBinding_;

	return NSDisplayPatternValueBinding_ = new NSString(bindings.NSDisplayPatternValueBinding);
}

NSString NSDocumentEditedBinding ()
{
	if (NSDocumentEditedBinding_)
		return NSDocumentEditedBinding_;

	return NSDocumentEditedBinding_ = new NSString(bindings.NSDocumentEditedBinding);
}

NSString NSDoubleClickArgumentBinding ()
{
	if (NSDoubleClickArgumentBinding_)
		return NSDoubleClickArgumentBinding_;

	return NSDoubleClickArgumentBinding_ = new NSString(bindings.NSDoubleClickArgumentBinding);
}

NSString NSDoubleClickTargetBinding ()
{
	if (NSDoubleClickTargetBinding_)
		return NSDoubleClickTargetBinding_;

	return NSDoubleClickTargetBinding_ = new NSString(bindings.NSDoubleClickTargetBinding);
}

NSString NSEditableBinding ()
{
	if (NSEditableBinding_)
		return NSEditableBinding_;

	return NSEditableBinding_ = new NSString(bindings.NSEditableBinding);
}

NSString NSEnabledBinding ()
{
	if (NSEnabledBinding_)
		return NSEnabledBinding_;

	return NSEnabledBinding_ = new NSString(bindings.NSEnabledBinding);
}

NSString NSExcludedKeysBinding ()
{
	if (NSExcludedKeysBinding_)
		return NSExcludedKeysBinding_;

	return NSExcludedKeysBinding_ = new NSString(bindings.NSExcludedKeysBinding);
}

NSString NSFilterPredicateBinding ()
{
	if (NSFilterPredicateBinding_)
		return NSFilterPredicateBinding_;

	return NSFilterPredicateBinding_ = new NSString(bindings.NSFilterPredicateBinding);
}

NSString NSFontBinding ()
{
	if (NSFontBinding_)
		return NSFontBinding_;

	return NSFontBinding_ = new NSString(bindings.NSFontBinding);
}

NSString NSFontBoldBinding ()
{
	if (NSFontBoldBinding_)
		return NSFontBoldBinding_;

	return NSFontBoldBinding_ = new NSString(bindings.NSFontBoldBinding);
}

NSString NSFontFamilyNameBinding ()
{
	if (NSFontFamilyNameBinding_)
		return NSFontFamilyNameBinding_;

	return NSFontFamilyNameBinding_ = new NSString(bindings.NSFontFamilyNameBinding);
}

NSString NSFontItalicBinding ()
{
	if (NSFontItalicBinding_)
		return NSFontItalicBinding_;

	return NSFontItalicBinding_ = new NSString(bindings.NSFontItalicBinding);
}

NSString NSFontNameBinding ()
{
	if (NSFontNameBinding_)
		return NSFontNameBinding_;

	return NSFontNameBinding_ = new NSString(bindings.NSFontNameBinding);
}

NSString NSFontSizeBinding ()
{
	if (NSFontSizeBinding_)
		return NSFontSizeBinding_;

	return NSFontSizeBinding_ = new NSString(bindings.NSFontSizeBinding);
}

NSString NSHeaderTitleBinding ()
{
	if (NSHeaderTitleBinding_)
		return NSHeaderTitleBinding_;

	return NSHeaderTitleBinding_ = new NSString(bindings.NSHeaderTitleBinding);
}

NSString NSHiddenBinding ()
{
	if (NSHiddenBinding_)
		return NSHiddenBinding_;

	return NSHiddenBinding_ = new NSString(bindings.NSHiddenBinding);
}

NSString NSImageBinding ()
{
	if (NSImageBinding_)
		return NSImageBinding_;

	return NSImageBinding_ = new NSString(bindings.NSImageBinding);
}

NSString NSIncludedKeysBinding ()
{
	if (NSIncludedKeysBinding_)
		return NSIncludedKeysBinding_;

	return NSIncludedKeysBinding_ = new NSString(bindings.NSIncludedKeysBinding);
}

NSString NSInitialKeyBinding ()
{
	if (NSInitialKeyBinding_)
		return NSInitialKeyBinding_;

	return NSInitialKeyBinding_ = new NSString(bindings.NSInitialKeyBinding);
}

NSString NSInitialValueBinding ()
{
	if (NSInitialValueBinding_)
		return NSInitialValueBinding_;

	return NSInitialValueBinding_ = new NSString(bindings.NSInitialValueBinding);
}

NSString NSIsIndeterminateBinding ()
{
	if (NSIsIndeterminateBinding_)
		return NSIsIndeterminateBinding_;

	return NSIsIndeterminateBinding_ = new NSString(bindings.NSIsIndeterminateBinding);
}

NSString NSLabelBinding ()
{
	if (NSLabelBinding_)
		return NSLabelBinding_;

	return NSLabelBinding_ = new NSString(bindings.NSLabelBinding);
}

NSString NSLocalizedKeyDictionaryBinding ()
{
	if (NSLocalizedKeyDictionaryBinding_)
		return NSLocalizedKeyDictionaryBinding_;

	return NSLocalizedKeyDictionaryBinding_ = new NSString(bindings.NSLocalizedKeyDictionaryBinding);
}

NSString NSManagedObjectContextBinding ()
{
	if (NSManagedObjectContextBinding_)
		return NSManagedObjectContextBinding_;

	return NSManagedObjectContextBinding_ = new NSString(bindings.NSManagedObjectContextBinding);
}

NSString NSMaximumRecentsBinding ()
{
	if (NSMaximumRecentsBinding_)
		return NSMaximumRecentsBinding_;

	return NSMaximumRecentsBinding_ = new NSString(bindings.NSMaximumRecentsBinding);
}

NSString NSMaxValueBinding ()
{
	if (NSMaxValueBinding_)
		return NSMaxValueBinding_;

	return NSMaxValueBinding_ = new NSString(bindings.NSMaxValueBinding);
}

NSString NSMaxWidthBinding ()
{
	if (NSMaxWidthBinding_)
		return NSMaxWidthBinding_;

	return NSMaxWidthBinding_ = new NSString(bindings.NSMaxWidthBinding);
}

NSString NSMinValueBinding ()
{
	if (NSMinValueBinding_)
		return NSMinValueBinding_;

	return NSMinValueBinding_ = new NSString(bindings.NSMinValueBinding);
}

NSString NSMinWidthBinding ()
{
	if (NSMinWidthBinding_)
		return NSMinWidthBinding_;

	return NSMinWidthBinding_ = new NSString(bindings.NSMinWidthBinding);
}

NSString NSMixedStateImageBinding ()
{
	if (NSMixedStateImageBinding_)
		return NSMixedStateImageBinding_;

	return NSMixedStateImageBinding_ = new NSString(bindings.NSMixedStateImageBinding);
}

NSString NSOffStateImageBinding ()
{
	if (NSOffStateImageBinding_)
		return NSOffStateImageBinding_;

	return NSOffStateImageBinding_ = new NSString(bindings.NSOffStateImageBinding);
}

NSString NSOnStateImageBinding ()
{
	if (NSOnStateImageBinding_)
		return NSOnStateImageBinding_;

	return NSOnStateImageBinding_ = new NSString(bindings.NSOnStateImageBinding);
}

NSString NSPredicateBinding ()
{
	if (NSPredicateBinding_)
		return NSPredicateBinding_;

	return NSPredicateBinding_ = new NSString(bindings.NSPredicateBinding);
}

NSString NSRecentSearchesBinding ()
{
	if (NSRecentSearchesBinding_)
		return NSRecentSearchesBinding_;

	return NSRecentSearchesBinding_ = new NSString(bindings.NSRecentSearchesBinding);
}

NSString NSRepresentedFilenameBinding ()
{
	if (NSRepresentedFilenameBinding_)
		return NSRepresentedFilenameBinding_;

	return NSRepresentedFilenameBinding_ = new NSString(bindings.NSRepresentedFilenameBinding);
}

NSString NSRowHeightBinding ()
{
	if (NSRowHeightBinding_)
		return NSRowHeightBinding_;

	return NSRowHeightBinding_ = new NSString(bindings.NSRowHeightBinding);
}

NSString NSSelectedIdentifierBinding ()
{
	if (NSSelectedIdentifierBinding_)
		return NSSelectedIdentifierBinding_;

	return NSSelectedIdentifierBinding_ = new NSString(bindings.NSSelectedIdentifierBinding);
}

NSString NSSelectedIndexBinding ()
{
	if (NSSelectedIndexBinding_)
		return NSSelectedIndexBinding_;

	return NSSelectedIndexBinding_ = new NSString(bindings.NSSelectedIndexBinding);
}

NSString NSSelectedLabelBinding ()
{
	if (NSSelectedLabelBinding_)
		return NSSelectedLabelBinding_;

	return NSSelectedLabelBinding_ = new NSString(bindings.NSSelectedLabelBinding);
}

NSString NSSelectedObjectBinding ()
{
	if (NSSelectedObjectBinding_)
		return NSSelectedObjectBinding_;

	return NSSelectedObjectBinding_ = new NSString(bindings.NSSelectedObjectBinding);
}

NSString NSSelectedObjectsBinding ()
{
	if (NSSelectedObjectsBinding_)
		return NSSelectedObjectsBinding_;

	return NSSelectedObjectsBinding_ = new NSString(bindings.NSSelectedObjectsBinding);
}

NSString NSSelectedTagBinding ()
{
	if (NSSelectedTagBinding_)
		return NSSelectedTagBinding_;

	return NSSelectedTagBinding_ = new NSString(bindings.NSSelectedTagBinding);
}

NSString NSSelectedValueBinding ()
{
	if (NSSelectedValueBinding_)
		return NSSelectedValueBinding_;

	return NSSelectedValueBinding_ = new NSString(bindings.NSSelectedValueBinding);
}

NSString NSSelectedValuesBinding ()
{
	if (NSSelectedValuesBinding_)
		return NSSelectedValuesBinding_;

	return NSSelectedValuesBinding_ = new NSString(bindings.NSSelectedValuesBinding);
}

NSString NSSelectionIndexesBinding ()
{
	if (NSSelectionIndexesBinding_)
		return NSSelectionIndexesBinding_;

	return NSSelectionIndexesBinding_ = new NSString(bindings.NSSelectionIndexesBinding);
}

NSString NSSelectionIndexPathsBinding ()
{
	if (NSSelectionIndexPathsBinding_)
		return NSSelectionIndexPathsBinding_;

	return NSSelectionIndexPathsBinding_ = new NSString(bindings.NSSelectionIndexPathsBinding);
}

NSString NSSortDescriptorsBinding ()
{
	if (NSSortDescriptorsBinding_)
		return NSSortDescriptorsBinding_;

	return NSSortDescriptorsBinding_ = new NSString(bindings.NSSortDescriptorsBinding);
}

NSString NSTargetBinding ()
{
	if (NSTargetBinding_)
		return NSTargetBinding_;

	return NSTargetBinding_ = new NSString(bindings.NSTargetBinding);
}

NSString NSTextColorBinding ()
{
	if (NSTextColorBinding_)
		return NSTextColorBinding_;

	return NSTextColorBinding_ = new NSString(bindings.NSTextColorBinding);
}

NSString NSTitleBinding ()
{
	if (NSTitleBinding_)
		return NSTitleBinding_;

	return NSTitleBinding_ = new NSString(bindings.NSTitleBinding);
}

NSString NSToolTipBinding ()
{
	if (NSToolTipBinding_)
		return NSToolTipBinding_;

	return NSToolTipBinding_ = new NSString(bindings.NSToolTipBinding);
}

NSString NSTransparentBinding ()
{
	if (NSTransparentBinding_)
		return NSTransparentBinding_;

	return NSTransparentBinding_ = new NSString(bindings.NSTransparentBinding);
}

NSString NSValueBinding ()
{
	if (NSValueBinding_)
		return NSValueBinding_;

	return NSValueBinding_ = new NSString(bindings.NSValueBinding);
}

NSString NSValuePathBinding ()
{
	if (NSValuePathBinding_)
		return NSValuePathBinding_;

	return NSValuePathBinding_ = new NSString(bindings.NSValuePathBinding);
}

NSString NSValueURLBinding ()
{
	if (NSValueURLBinding_)
		return NSValueURLBinding_;

	return NSValueURLBinding_ = new NSString(bindings.NSValueURLBinding);
}

NSString NSVisibleBinding ()
{
	if (NSVisibleBinding_)
		return NSVisibleBinding_;

	return NSVisibleBinding_ = new NSString(bindings.NSVisibleBinding);
}

NSString NSWarningValueBinding ()
{
	if (NSWarningValueBinding_)
		return NSWarningValueBinding_;

	return NSWarningValueBinding_ = new NSString(bindings.NSWarningValueBinding);
}

NSString NSWidthBinding ()
{
	if (NSWidthBinding_)
		return NSWidthBinding_;

	return NSWidthBinding_ = new NSString(bindings.NSWidthBinding);
}

NSString NSAllowsEditingMultipleValuesSelectionBindingOption ()
{
	if (NSAllowsEditingMultipleValuesSelectionBindingOption_)
		return NSAllowsEditingMultipleValuesSelectionBindingOption_;

	return NSAllowsEditingMultipleValuesSelectionBindingOption_ = new NSString(bindings.NSAllowsEditingMultipleValuesSelectionBindingOption);
}

NSString NSAllowsNullArgumentBindingOption ()
{
	if (NSAllowsNullArgumentBindingOption_)
		return NSAllowsNullArgumentBindingOption_;

	return NSAllowsNullArgumentBindingOption_ = new NSString(bindings.NSAllowsNullArgumentBindingOption);
}

NSString NSAlwaysPresentsApplicationModalAlertsBindingOption ()
{
	if (NSAlwaysPresentsApplicationModalAlertsBindingOption_)
		return NSAlwaysPresentsApplicationModalAlertsBindingOption_;

	return NSAlwaysPresentsApplicationModalAlertsBindingOption_ = new NSString(bindings.NSAlwaysPresentsApplicationModalAlertsBindingOption);
}

NSString NSConditionallySetsEditableBindingOption ()
{
	if (NSConditionallySetsEditableBindingOption_)
		return NSConditionallySetsEditableBindingOption_;

	return NSConditionallySetsEditableBindingOption_ = new NSString(bindings.NSConditionallySetsEditableBindingOption);
}

NSString NSConditionallySetsEnabledBindingOption ()
{
	if (NSConditionallySetsEnabledBindingOption_)
		return NSConditionallySetsEnabledBindingOption_;

	return NSConditionallySetsEnabledBindingOption_ = new NSString(bindings.NSConditionallySetsEnabledBindingOption);
}

NSString NSConditionallySetsHiddenBindingOption ()
{
	if (NSConditionallySetsHiddenBindingOption_)
		return NSConditionallySetsHiddenBindingOption_;

	return NSConditionallySetsHiddenBindingOption_ = new NSString(bindings.NSConditionallySetsHiddenBindingOption);
}

NSString NSContinuouslyUpdatesValueBindingOption ()
{
	if (NSContinuouslyUpdatesValueBindingOption_)
		return NSContinuouslyUpdatesValueBindingOption_;

	return NSContinuouslyUpdatesValueBindingOption_ = new NSString(bindings.NSContinuouslyUpdatesValueBindingOption);
}

NSString NSCreatesSortDescriptorBindingOption ()
{
	if (NSCreatesSortDescriptorBindingOption_)
		return NSCreatesSortDescriptorBindingOption_;

	return NSCreatesSortDescriptorBindingOption_ = new NSString(bindings.NSCreatesSortDescriptorBindingOption);
}

NSString NSDeletesObjectsOnRemoveBindingsOption ()
{
	if (NSDeletesObjectsOnRemoveBindingsOption_)
		return NSDeletesObjectsOnRemoveBindingsOption_;

	return NSDeletesObjectsOnRemoveBindingsOption_ = new NSString(bindings.NSDeletesObjectsOnRemoveBindingsOption);
}

NSString NSDisplayNameBindingOption ()
{
	if (NSDisplayNameBindingOption_)
		return NSDisplayNameBindingOption_;

	return NSDisplayNameBindingOption_ = new NSString(bindings.NSDisplayNameBindingOption);
}

NSString NSDisplayPatternBindingOption ()
{
	if (NSDisplayPatternBindingOption_)
		return NSDisplayPatternBindingOption_;

	return NSDisplayPatternBindingOption_ = new NSString(bindings.NSDisplayPatternBindingOption);
}

NSString NSContentPlacementTagBindingOption ()
{
	if (NSContentPlacementTagBindingOption_)
		return NSContentPlacementTagBindingOption_;

	return NSContentPlacementTagBindingOption_ = new NSString(bindings.NSContentPlacementTagBindingOption);
}

NSString NSHandlesContentAsCompoundValueBindingOption ()
{
	if (NSHandlesContentAsCompoundValueBindingOption_)
		return NSHandlesContentAsCompoundValueBindingOption_;

	return NSHandlesContentAsCompoundValueBindingOption_ = new NSString(bindings.NSHandlesContentAsCompoundValueBindingOption);
}

NSString NSInsertsNullPlaceholderBindingOption ()
{
	if (NSInsertsNullPlaceholderBindingOption_)
		return NSInsertsNullPlaceholderBindingOption_;

	return NSInsertsNullPlaceholderBindingOption_ = new NSString(bindings.NSInsertsNullPlaceholderBindingOption);
}

NSString NSInvokesSeparatelyWithArrayObjectsBindingOption ()
{
	if (NSInvokesSeparatelyWithArrayObjectsBindingOption_)
		return NSInvokesSeparatelyWithArrayObjectsBindingOption_;

	return NSInvokesSeparatelyWithArrayObjectsBindingOption_ = new NSString(bindings.NSInvokesSeparatelyWithArrayObjectsBindingOption);
}

NSString NSMultipleValuesPlaceholderBindingOption ()
{
	if (NSMultipleValuesPlaceholderBindingOption_)
		return NSMultipleValuesPlaceholderBindingOption_;

	return NSMultipleValuesPlaceholderBindingOption_ = new NSString(bindings.NSMultipleValuesPlaceholderBindingOption);
}

NSString NSNoSelectionPlaceholderBindingOption ()
{
	if (NSNoSelectionPlaceholderBindingOption_)
		return NSNoSelectionPlaceholderBindingOption_;

	return NSNoSelectionPlaceholderBindingOption_ = new NSString(bindings.NSNoSelectionPlaceholderBindingOption);
}

NSString NSNotApplicablePlaceholderBindingOption ()
{
	if (NSNotApplicablePlaceholderBindingOption_)
		return NSNotApplicablePlaceholderBindingOption_;

	return NSNotApplicablePlaceholderBindingOption_ = new NSString(bindings.NSNotApplicablePlaceholderBindingOption);
}

NSString NSNullPlaceholderBindingOption ()
{
	if (NSNullPlaceholderBindingOption_)
		return NSNullPlaceholderBindingOption_;

	return NSNullPlaceholderBindingOption_ = new NSString(bindings.NSNullPlaceholderBindingOption);
}

NSString NSRaisesForNotApplicableKeysBindingOption ()
{
	if (NSRaisesForNotApplicableKeysBindingOption_)
		return NSRaisesForNotApplicableKeysBindingOption_;

	return NSRaisesForNotApplicableKeysBindingOption_ = new NSString(bindings.NSRaisesForNotApplicableKeysBindingOption);
}

NSString NSPredicateFormatBindingOption ()
{
	if (NSPredicateFormatBindingOption_)
		return NSPredicateFormatBindingOption_;

	return NSPredicateFormatBindingOption_ = new NSString(bindings.NSPredicateFormatBindingOption);
}

NSString NSSelectorNameBindingOption ()
{
	if (NSSelectorNameBindingOption_)
		return NSSelectorNameBindingOption_;

	return NSSelectorNameBindingOption_ = new NSString(bindings.NSSelectorNameBindingOption);
}

NSString NSSelectsAllWhenSettingContentBindingOption ()
{
	if (NSSelectsAllWhenSettingContentBindingOption_)
		return NSSelectsAllWhenSettingContentBindingOption_;

	return NSSelectsAllWhenSettingContentBindingOption_ = new NSString(bindings.NSSelectsAllWhenSettingContentBindingOption);
}

NSString NSValidatesImmediatelyBindingOption ()
{
	if (NSValidatesImmediatelyBindingOption_)
		return NSValidatesImmediatelyBindingOption_;

	return NSValidatesImmediatelyBindingOption_ = new NSString(bindings.NSValidatesImmediatelyBindingOption);
}

NSString NSValueTransformerNameBindingOption ()
{
	if (NSValueTransformerNameBindingOption_)
		return NSValueTransformerNameBindingOption_;

	return NSValueTransformerNameBindingOption_ = new NSString(bindings.NSValueTransformerNameBindingOption);
}

NSString NSValueTransformerBindingOption ()
{
	if (NSValueTransformerBindingOption_)
		return NSValueTransformerBindingOption_;

	return NSValueTransformerBindingOption_ = new NSString(bindings.NSValueTransformerBindingOption);
}

const TNSKeyValueBindingCreation = `

	static void exposeBinding (NSString binding)
	{
		return invokeObjcSelfClass!(void, "exposeBinding:", NSString)(binding);
	}

	NSArray exposedBindings ()
	{
		return invokeObjcSelf!(NSArray, "exposedBindings");
	}

	Class valueClassForBinding (NSString binding)
	{
		return invokeObjcSelf!(Class, "valueClassForBinding:", NSString)(binding);
	}

	void bind (NSString binding, Object observable, NSString keyPath, NSDictionary options)
	{
		return invokeObjcSelf!(void, "bind:toObject:withKeyPath:options:", NSString, Object, NSString, NSDictionary)(binding, observable, keyPath, options);
	}

	void unbind (NSString binding)
	{
		return invokeObjcSelf!(void, "unbind:", NSString)(binding);
	}

	NSDictionary infoForBinding (NSString binding)
	{
		return invokeObjcSelf!(NSDictionary, "infoForBinding:", NSString)(binding);
	}

	NSArray optionDescriptionsForBinding (NSString aBinding)
	{
		return invokeObjcSelf!(NSArray, "optionDescriptionsForBinding:", NSString)(aBinding);
	}

	//mixin ObjcBindClassMethod!(exposeBinding, "exposeBinding:");
	//mixin ObjcBindMethod!(exposedBindings, "exposedBindings");
	//mixin ObjcBindMethod!(valueClassForBinding, "valueClassForBinding:");
	//mixin ObjcBindMethod!(bind, "bind:toObject:withKeyPath:options:");
	//mixin ObjcBindMethod!(unbind, "unbind:");
	//mixin ObjcBindMethod!(infoForBinding, "infoForBinding:");
	//mixin ObjcBindMethod!(optionDescriptionsForBinding, "optionDescriptionsForBinding:");

`;

const TNSEditor = `

	void discardEditing ()
	{
		return invokeObjcSelf!(void, "discardEditing");
	}

	bool commitEditing ()
	{
		return invokeObjcSelf!(bool, "commitEditing");
	}

	void commitEditingWithDelegate (Object delegate_, SEL didCommitSelector, void* contextInfo)
	{
		return invokeObjcSelf!(void, "commitEditingWithDelegate:didCommitSelector:contextInfo:", Object, SEL, void*)(delegate_, didCommitSelector, contextInfo);
	}

	//mixin ObjcBindMethod!(discardEditing, "discardEditing");
	//mixin ObjcBindMethod!(commitEditing, "commitEditing");
	//mixin ObjcBindMethod!(commitEditingWithDelegate, "commitEditingWithDelegate:didCommitSelector:contextInfo:");

`;

const TNSPlaceholders = `

	static void setDefaultPlaceholder (Object placeholder, Object marker, NSString binding)
	{
		return invokeObjcSelfClass!(void, "setDefaultPlaceholder:forMarker:withBinding:", Object, Object, NSString)(placeholder, marker, binding);
	}

	static Object defaultPlaceholderForMarker (Object marker, NSString binding)
	{
		return invokeObjcSelfClass!(Object, "defaultPlaceholderForMarker:withBinding:", Object, NSString)(marker, binding);
	}

	//mixin ObjcBindClassMethod!(setDefaultPlaceholder, "setDefaultPlaceholder:forMarker:withBinding:");
	//mixin ObjcBindClassMethod!(defaultPlaceholderForMarker, "defaultPlaceholderForMarker:withBinding:");

`;

const TNSEditorRegistration = `

	void objectDidBeginEditing (Object editor)
	{
		return invokeObjcSelf!(void, "objectDidBeginEditing:", Object)(editor);
	}

	void objectDidEndEditing (Object editor)
	{
		return invokeObjcSelf!(void, "objectDidEndEditing:", Object)(editor);
	}

	//mixin ObjcBindMethod!(objectDidBeginEditing, "objectDidBeginEditing:");
	//mixin ObjcBindMethod!(objectDidEndEditing, "objectDidEndEditing:");

`;
/*
bool NSIsControllerMarker (Object object)
{
	return Bridge.invokeObjcFunction!(bool, bindings.NSIsControllerMarker, Object)(object);
}*/