Add binding constants

This commit is contained in:
Gregory John Casamento 2020-10-06 00:52:22 -04:00
parent ce04b24f05
commit a3fcb67367
5 changed files with 37 additions and 6 deletions

View file

@ -37,6 +37,7 @@ extern "C" {
@interface NSDictionaryController : NSArrayController
{
NSDictionary *_contentDictionary;
NSDictionary *_localizedKeyDictionary;
NSString *_localizedKeyTable;
NSArray *_includedKeys;

View file

@ -109,14 +109,17 @@ APPKIT_EXPORT id NSNotApplicableMarker;
APPKIT_EXPORT NSString *NSAlignmentBinding;
APPKIT_EXPORT NSString *NSContentArrayBinding;
APPKIT_EXPORT NSString *NSContentBinding;
APPKIT_EXPORT NSString *NSContentDictionaryBinding;
APPKIT_EXPORT NSString *NSContentObjectBinding;
APPKIT_EXPORT NSString *NSContentValuesBinding;
APPKIT_EXPORT NSString *NSEditableBinding;
APPKIT_EXPORT NSString *NSEnabledBinding;
APPKIT_EXPORT NSString *NSExcludedKeysBinding;
APPKIT_EXPORT NSString *NSFontBinding;
APPKIT_EXPORT NSString *NSFontNameBinding;
APPKIT_EXPORT NSString *NSFontSizeBinding;
APPKIT_EXPORT NSString *NSHiddenBinding;
APPKIT_EXPORT NSString *NSIncludedKeysBinding;
APPKIT_EXPORT NSString *NSSelectedIndexBinding;
APPKIT_EXPORT NSString *NSSelectedObjectBinding;
APPKIT_EXPORT NSString *NSSelectedTagBinding;

View file

@ -6,7 +6,6 @@ MISSING HEADERS ( * = difficult, - = quick, + = placeholder, x = won't do )
> NSCollectionViewGridLayout.h *
> NSCollectionViewLayout.h *
> NSCollectionViewTransitionLayout.h *
> NSDictionaryController.h -
> NSDiffableDataSource.h *
> NSDraggingItem.h -
> NSDraggingSession.h -

View file

@ -25,8 +25,11 @@
#import <Foundation/NSString.h>
#import <Foundation/NSArray.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSKeyValueObserving.h>
#import "AppKit/NSDictionaryController.h"
#import "AppKit/NSKeyValueBinding.h"
#import "GSBindingHelpers.h"
NSString *__keyString;
NSString *__valueString;
@ -34,6 +37,23 @@ NSUInteger __count = 0;
@implementation NSDictionaryController
+ (void) initialize
{
if (self == [NSDictionaryController class])
{
[self setVersion: 1];
// bindings...
[self exposeBinding: NSContentDictionaryBinding];
[self exposeBinding: NSIncludedKeysBinding];
[self setKeys: [NSArray arrayWithObjects: NSContentBinding,
NSContentObjectBinding,
nil]
triggerChangeNotificationsForDependentKey: @"arrangedObjects"];
}
}
- (NSDictionaryControllerKeyValuePair *) newObject
{
NSDictionaryControllerKeyValuePair *o = [[NSDictionaryControllerKeyValuePair alloc] init];
@ -68,7 +88,6 @@ NSUInteger __count = 0;
{
ASSIGNCOPY(_localizedKeyTable, table);
}
- (NSArray *) includedKeys
{
@ -80,7 +99,6 @@ NSUInteger __count = 0;
ASSIGNCOPY(_includedKeys, includedKeys);
}
- (NSArray *) excludedKeys
{
return _excludedKeys;
@ -91,7 +109,6 @@ NSUInteger __count = 0;
ASSIGNCOPY(_excludedKeys, excludedKeys);
}
- (NSString *) initialKey
{
return _initialKey;
@ -102,7 +119,6 @@ NSUInteger __count = 0;
ASSIGNCOPY(_initialKey, k);
}
- (id) initialValue
{
return _initialValue;
@ -113,6 +129,16 @@ NSUInteger __count = 0;
ASSIGNCOPY(_initialValue, v);
}
- (NSDictionary *) contentDictionary
{
return (NSDictionary *)[self content];
}
- (void) setContentDictionary: (NSDictionary *)dict
{
[self setContent: (id)dict];
}
@end
@implementation NSDictionaryControllerKeyValuePair
@ -156,6 +182,5 @@ NSUInteger __count = 0;
{
return [[self key] compare: [other key]];
}
@end

View file

@ -754,14 +754,17 @@ NSString *NSValueTransformerBindingOption = @"NSValueTransformer";
NSString *NSAlignmentBinding = @"alignment";
NSString *NSContentArrayBinding = @"contentArray";
NSString *NSContentBinding = @"content";
NSString *NSContentDictionaryBinding = @"contentDictionary";
NSString *NSContentObjectBinding = @"contentObject";
NSString *NSContentValuesBinding = @"contentValues";
NSString *NSEditableBinding = @"editable";
NSString *NSEnabledBinding = @"enabled";
NSString *NSExcludedKeysBinding = @"encludedKeys";
NSString *NSFontBinding = @"font";
NSString *NSFontNameBinding = @"fontName";
NSString *NSFontSizeBinding = @"fontSize";
NSString *NSHiddenBinding = @"hidden";
NSString *NSIncludedKeysBinding = @"includedKeys";
NSString *NSSelectedIndexBinding = @"selectedIndex";
NSString *NSSelectedObjectBinding = @"selectedObject";
NSString *NSSelectedTagBinding = @"selectedTag";