SCObjectSelectionSection
@interface SCObjectSelectionSection : SCArrayOfObjectsSection {
NSIndexPath *lastSelectedRowIndexPath;
NSMutableSet *selectedItemsIndexes;
BOOL allowMultipleSelection;
BOOL allowNoSelection;
NSUInteger maximumSelections;
BOOL autoDismissViewController;
SCDataDefinition *intermediateEntityDefinition;
}
This class functions as a section that provides the end-user with an automatically generated list objects to choose from.
The selection items are provided in the form of an array of NSObjects, called the items array. ‘SCObjectSelectionSection’ can be configured to allow multiple selection and to allow no selection at all. If allow multiple selection is disabled, then the bound property name of this section must be of type NSObject, otherwise it must be of type NSMutableSet.
See
SCObjectSelectionCell.-
Undocumented
Declaration
Objective-C
NSIndexPath *lastSelectedRowIndexPath
-
Undocumented
Declaration
Objective-C
NSMutableSet *selectedItemsIndexes
-
Undocumented
Declaration
Objective-C
BOOL allowMultipleSelection
-
Undocumented
Declaration
Objective-C
BOOL allowNoSelection
-
Undocumented
Declaration
Objective-C
NSUInteger maximumSelections
-
Undocumented
Declaration
Objective-C
BOOL autoDismissViewController
-
Undocumented
Declaration
Objective-C
SCDataDefinition *intermediateEntityDefinition
-
Allocates and returns an initialized ‘SCObjectSelectionSection’ given cell text, bound object, a bound property name, and a selection items store.
- - parameter: sectionHeaderTitle The section’s header title.
- - parameter: object The object the section will bind to.
- - parameter: propertyName The section’s bound property name corresponding to the object selection. If multiple selection is allowed, then property must be of an NSMutableSet type, otherwise, property must be of type NSObject and cannot be a readonly property.
- - parameter: store The store containing the selection objects.
Declaration
Objective-C
+ (instancetype)sectionWithHeaderTitle:(NSString *)sectionHeaderTitle boundObject:(NSObject *)object selectedObjectPropertyName:(NSString *)propertyName selectionItemsStore:(SCDataStore *)store;
-
Allocates and returns an initialized ‘SCObjectSelectionSection’ given cell text, bound object, a bound property name, and an array of selection items.
- - parameter: sectionHeaderTitle The section’s header title.
- - parameter: object The object the section will bind to.
- - parameter: propertyName The section’s bound property name corresponding to the object selection. If multiple selection is allowed, then property must be of an NSMutableSet type, otherwise, property must be of type NSObject and cannot be a readonly property.
- - parameter: sectionItems An array of the items that the user will choose from. All items must be of an NSObject type and all items must be instances of the same class.
- - parameter: definition The definition of the selection items.
Declaration
Objective-C
+ (instancetype)sectionWithHeaderTitle:(NSString *)sectionHeaderTitle boundObject:(NSObject *)object selectedObjectPropertyName:(NSString *)propertyName items:(NSArray *)sectionItems itemsDefintion:(SCDataDefinition *)definition;
-
Returns an initialized ‘SCObjectSelectionSection’ given cell text, bound object, a bound property name, and a selection items store.
- - parameter: sectionHeaderTitle The section’s header title.
- - parameter: object The object the section will bind to.
- - parameter: propertyName The section’s bound property name corresponding to the object selection. If multiple selection is allowed, then property must be of an NSMutableSet type, otherwise, property must be of type NSObject and cannot be a readonly property.
- - parameter: store The store containing the selection objects.
Declaration
Objective-C
- (instancetype)initWithHeaderTitle:(NSString *)sectionHeaderTitle boundObject:(NSObject *)object selectedObjectPropertyName:(NSString *)propertyName selectionItemsStore:(SCDataStore *)store;
-
Returns an initialized ‘SCObjectSelectionSection’ given cell text, bound object, a bound property name, and an array of selection items.
- - parameter: sectionHeaderTitle The section’s header title.
- - parameter: object The object the section will bind to.
- - parameter: propertyName The section’s bound property name corresponding to the object selection. If multiple selection is allowed, then property must be of an NSMutableSet type, otherwise, property must be of type NSObject and cannot be a readonly property.
- - parameter: sectionItems An array of the items that the user will choose from. All items must be of an NSObject type and all items must be instances of the same class.
- - parameter: definition The definition of the selection items.
Declaration
Objective-C
- (instancetype)initWithHeaderTitle:(NSString *)sectionHeaderTitle boundObject:(NSObject *)object selectedObjectPropertyName:(NSString *)propertyName items:(NSArray *)sectionItems itemsDefintion:(SCDataDefinition *)definition;
-
This property reflects the current section’s selection. You can set this property to define the section’s selection.
Note
In case of no selection, this property will be set to an NSNumber of value -1.Declaration
Objective-C
@property (nonatomic, copy) NSNumber *selectedItemIndex;
-
This property reflects the current section’s selection(s). You can add index(es) to the set to define the section’s selection.
Declaration
Objective-C
@property (nonatomic, readonly) NSMutableSet *selectedItemsIndexes;
-
If TRUE, the section allows multiple selection. Default: FALSE.
Declaration
Objective-C
@property (nonatomic) BOOL allowMultipleSelection;
-
If TRUE, the section allows no selection at all. Default: FALSE.
Declaration
Objective-C
@property (nonatomic) BOOL allowNoSelection;
-
The maximum number of items that can be selected. Set to zero to allow an infinite number of selections. Default: 0.
- - note: Only applicable when allowMultipleSelection is TRUE.
Declaration
Objective-C
@property (nonatomic) NSUInteger maximumSelections;
-
If TRUE, the section automatically dismisses the current view controller when a value is selected. Default: FALSE.
Declaration
Objective-C
@property (nonatomic) BOOL autoDismissViewController;
-
The text color of the selected cell(s).
Declaration
Objective-C
@property (nonatomic, strong) UIColor *selectedCellTextColor;
-
The text color of the deselected cell(s).
Declaration
Objective-C
@property (nonatomic, strong) UIColor *deselectedCellTextColor;
-
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
Declaration
Objective-C
- (void)configureCellForDisplay:(SCTableViewCell *)cell atIndex:(NSUInteger)index;
-
Set this to the definition of the intermediate entity between the bound object’s class definition and the itemsEntityClassDefinition. This is useful in complex many-to-many relationships where you have created an intermediate entity between you main two entities. Default: nil.
Declaration
Objective-C
@property (nonatomic, strong) SCDataDefinition *intermediateEntityDefinition;