mirror of
https://github.com/MacPass/MacPass.git
synced 2025-12-13 21:42:32 +00:00
Fixed mixed case in naming. Added enums for table column identification
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
@class MPDocument;
|
||||
@class KPKEntry;
|
||||
|
||||
@interface MPPickFieldTableModelRowItem : NSObject
|
||||
@interface MPPickfieldTableModelRowItem : NSObject
|
||||
|
||||
@property (copy) NSString *name;
|
||||
@property (copy) NSString *value;
|
||||
@@ -24,10 +24,10 @@
|
||||
|
||||
@interface MPPickfieldTableModel : NSObject
|
||||
|
||||
@property (copy) NSArray<MPPickFieldTableModelRowItem *> *items;
|
||||
@property (copy) NSArray<MPPickfieldTableModelRowItem *> *items;
|
||||
|
||||
- (instancetype)initWithEntry:(KPKEntry *)entry inDocument:(MPDocument *)document;
|
||||
- (MPPickFieldTableModelRowItem *)itemAtIndex:(NSUInteger)index;
|
||||
- (MPPickfieldTableModelRowItem *)itemAtIndex:(NSUInteger)index;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#import "MPPickfieldTableModel.h"
|
||||
#import <KeePassKit/KeePassKit.h>
|
||||
|
||||
@implementation MPPickFieldTableModelRowItem
|
||||
@implementation MPPickfieldTableModelRowItem
|
||||
|
||||
- (instancetype)init {
|
||||
self = [super init];
|
||||
@@ -20,13 +20,13 @@
|
||||
}
|
||||
|
||||
+ (instancetype)groupItemWithName:(NSString *)name {
|
||||
MPPickFieldTableModelRowItem *item = [self itemWithName:name value:nil];
|
||||
MPPickfieldTableModelRowItem *item = [self itemWithName:name value:nil];
|
||||
item.isGroup = YES;
|
||||
return item;
|
||||
}
|
||||
|
||||
+ (instancetype)itemWithName:(NSString *)name value:(NSString *)value {
|
||||
MPPickFieldTableModelRowItem *item = [[MPPickFieldTableModelRowItem alloc] init];
|
||||
MPPickfieldTableModelRowItem *item = [[MPPickfieldTableModelRowItem alloc] init];
|
||||
item.name = name;
|
||||
item.value = value;
|
||||
return item;
|
||||
@@ -47,22 +47,22 @@
|
||||
- (void)_setupItemsForEntry:(KPKEntry *)entry document:(MPDocument *)document {
|
||||
/* Default attributes */
|
||||
NSMutableArray *items = [[NSMutableArray alloc] init];
|
||||
[items addObject:[MPPickFieldTableModelRowItem groupItemWithName:NSLocalizedString(@"ENTRY_DEFAULT_ATTRIBUTES", @"Group row for entry attributes")]];
|
||||
[items addObject:[MPPickfieldTableModelRowItem groupItemWithName:NSLocalizedString(@"ENTRY_DEFAULT_ATTRIBUTES", @"Group row for entry attributes")]];
|
||||
|
||||
for(KPKAttribute *attribute in entry.defaultAttributes) {
|
||||
/* TODO exclude protected values */
|
||||
[items addObject:[MPPickFieldTableModelRowItem itemWithName:attribute.key value:attribute.value]];
|
||||
[items addObject:[MPPickfieldTableModelRowItem itemWithName:attribute.key value:attribute.value]];
|
||||
}
|
||||
|
||||
[items addObject:[MPPickFieldTableModelRowItem groupItemWithName:NSLocalizedString(@"ENTRY_CUSTOM_ATTRIBUTES", @"Group row for entry attributes")]];
|
||||
[items addObject:[MPPickfieldTableModelRowItem groupItemWithName:NSLocalizedString(@"ENTRY_CUSTOM_ATTRIBUTES", @"Group row for entry attributes")]];
|
||||
for(KPKAttribute *attribute in entry.customAttributes) {
|
||||
/* TODO exclude protected values */
|
||||
[items addObject:[MPPickFieldTableModelRowItem itemWithName:attribute.key value:attribute.value]];
|
||||
[items addObject:[MPPickfieldTableModelRowItem itemWithName:attribute.key value:attribute.value]];
|
||||
}
|
||||
self.items = items; // copy creates an immutable copy
|
||||
}
|
||||
|
||||
- (MPPickFieldTableModelRowItem *)itemAtIndex:(NSUInteger)index {
|
||||
- (MPPickfieldTableModelRowItem *)itemAtIndex:(NSUInteger)index {
|
||||
if(index < _items.count) {
|
||||
return _items[index];
|
||||
}
|
||||
|
||||
@@ -10,6 +10,12 @@
|
||||
#import "MPPickfieldTableModel.h"
|
||||
|
||||
#import <KeePassKit/KeePassKit.h>
|
||||
|
||||
typedef NS_ENUM(NSUInteger, MPPickfieldTableColumn) {
|
||||
MPPickfieldNameTableColumn,
|
||||
MPPIckfieldValueTableColumn
|
||||
};
|
||||
|
||||
@interface MPPickfieldViewController () <NSTableViewDelegate, NSTableViewDataSource>
|
||||
|
||||
@property (nonatomic, strong, readonly) KPKEntry *representedEntry;
|
||||
@@ -30,6 +36,7 @@
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
self.tableModel = [[MPPickfieldTableModel alloc] initWithEntry:self.representedEntry inDocument:nil];
|
||||
|
||||
}
|
||||
|
||||
- (KPKEntry *)representedEntry {
|
||||
@@ -55,25 +62,33 @@
|
||||
else {
|
||||
view = [tableView makeViewWithIdentifier:@"HeaderCell" owner:self];
|
||||
}
|
||||
MPPickFieldTableModelRowItem *rowItem = [self.tableModel itemAtIndex:row];
|
||||
MPPickfieldTableModelRowItem *rowItem = [self.tableModel itemAtIndex:row];
|
||||
view.textField.stringValue = @"";
|
||||
|
||||
if(!rowItem) {
|
||||
return view;
|
||||
}
|
||||
/* group view or first column */
|
||||
if(tableColumn == nil || [tableColumn.identifier isEqualToString:@"AutomaticTableColumnIdentifier.0"]) {
|
||||
view.textField.stringValue = rowItem.name;
|
||||
}
|
||||
else if([tableColumn.identifier isEqualToString:@"AutomaticTableColumnIdentifier.1"]) {
|
||||
view.textField.stringValue = rowItem.value;
|
||||
}
|
||||
|
||||
MPPickfieldTableColumn columnIndex = (tableColumn == nil
|
||||
? MPPickfieldNameTableColumn
|
||||
: [tableView.tableColumns indexOfObjectIdenticalTo:tableColumn]);
|
||||
|
||||
/* group view or first column */
|
||||
switch (columnIndex) {
|
||||
case MPPickfieldNameTableColumn:
|
||||
view.textField.stringValue = rowItem.name;
|
||||
break;
|
||||
case MPPIckfieldValueTableColumn:
|
||||
view.textField.stringValue = rowItem.value;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return view;
|
||||
}
|
||||
|
||||
- (BOOL)tableView:(NSTableView *)tableView isGroupRow:(NSInteger)row {
|
||||
MPPickFieldTableModelRowItem *rowItem = [self.tableModel itemAtIndex:row];
|
||||
MPPickfieldTableModelRowItem *rowItem = [self.tableModel itemAtIndex:row];
|
||||
return rowItem.isGroup;
|
||||
}
|
||||
|
||||
@@ -87,7 +102,7 @@
|
||||
self.pickedValue = @"";
|
||||
}
|
||||
else {
|
||||
MPPickFieldTableModelRowItem *item = [self.tableModel itemAtIndex:tableView.selectedRow];
|
||||
MPPickfieldTableModelRowItem *item = [self.tableModel itemAtIndex:tableView.selectedRow];
|
||||
self.pickedValue = item ? item.value : @"";
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user