added files via upload

This commit is contained in:
Balackburn
2023-06-27 09:54:41 +02:00
commit 2ff6aac218
1420 changed files with 88898 additions and 0 deletions

View File

@@ -0,0 +1,86 @@
//
// FLEXGlobalsSection.m
// FLEX
//
// Created by Tanner Bennett on 7/11/19.
// Copyright © 2020 FLEX Team. All rights reserved.
//
#import "FLEXGlobalsSection.h"
#import "NSArray+FLEX.h"
#import "UIFont+FLEX.h"
@interface FLEXGlobalsSection ()
/// Filtered rows
@property (nonatomic) NSArray<FLEXGlobalsEntry *> *rows;
/// Unfiltered rows
@property (nonatomic) NSArray<FLEXGlobalsEntry *> *allRows;
@end
@implementation FLEXGlobalsSection
#pragma mark - Initialization
+ (instancetype)title:(NSString *)title rows:(NSArray<FLEXGlobalsEntry *> *)rows {
FLEXGlobalsSection *s = [self new];
s->_title = title;
s.allRows = rows;
return s;
}
- (void)setAllRows:(NSArray<FLEXGlobalsEntry *> *)allRows {
_allRows = allRows.copy;
[self reloadData];
}
#pragma mark - Overrides
- (NSInteger)numberOfRows {
return self.rows.count;
}
- (void)setFilterText:(NSString *)filterText {
super.filterText = filterText;
[self reloadData];
}
- (void)reloadData {
NSString *filterText = self.filterText;
if (filterText.length) {
self.rows = [self.allRows flex_filtered:^BOOL(FLEXGlobalsEntry *entry, NSUInteger idx) {
return [entry.entryNameFuture() localizedCaseInsensitiveContainsString:filterText];
}];
} else {
self.rows = self.allRows;
}
}
- (BOOL)canSelectRow:(NSInteger)row {
return YES;
}
- (void (^)(__kindof UIViewController *))didSelectRowAction:(NSInteger)row {
return (id)self.rows[row].rowAction;
}
- (UIViewController *)viewControllerToPushForRow:(NSInteger)row {
return self.rows[row].viewControllerFuture ? self.rows[row].viewControllerFuture() : nil;
}
- (void)configureCell:(__kindof UITableViewCell *)cell forRow:(NSInteger)row {
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
cell.textLabel.font = UIFont.flex_defaultTableCellFont;
cell.textLabel.text = self.rows[row].entryNameFuture();
}
@end
@implementation FLEXGlobalsSection (Subscripting)
- (id)objectAtIndexedSubscript:(NSUInteger)idx {
return self.rows[idx];
}
@end