Changeset 51 for trunk/Cocoa/Pester/Source/PSAlarmsController.m
- Timestamp:
- 11/18/02 08:57:41 (21 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Cocoa/Pester/Source/PSAlarmsController.m
r34 r51 10 10 #import "PSAlarm.h" 11 11 #import "NSTableView-NJRExtensions.h" 12 12 #import "NJRTableView.h" 13 #import "NJRTableDelegate.h" 13 14 14 15 @implementation PSAlarmsController 16 17 - (void)alarmsChanged; 18 { 19 reorderedAlarms = [[tableView delegate] reorderedDataForData: [alarms alarms]]; 20 } 15 21 16 22 - (id)init; … … 23 29 if (nil == [[NSUserDefaults standardUserDefaults] objectForKey: 24 30 [@"NSWindow Frame " stringByAppendingString: [[self window] frameAutosaveName]]]) 25 {31 { 26 32 [[self window] center]; 27 }33 } 28 34 [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(alarmsChanged) name: PSAlarmsDidChangeNotification object: alarms]; 35 [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(tableViewSelectionDidChange:) name: NSTableViewSelectionDidChangeNotification object: tableView]; 29 36 [tableView setAutosaveName: @"Alarm list"]; 30 37 [tableView setAutosaveTableColumns: YES]; 31 [ tableView noteNumberOfRowsChanged];38 [self alarmsChanged]; 32 39 [[self window] makeFirstResponder: tableView]; 40 [[self window] setResizeIncrements: NSMakeSize(1, [tableView cellHeight])]; 33 41 } 34 42 return self; 35 43 } 36 44 37 - (void)alarmsChanged; // XXX fix autoselection to be more reasonable, see whatever I did in that _Learning Cocoa_ project I think38 {39 [tableView reloadData];40 [tableView deselectAll: self];41 }42 45 43 46 - (IBAction)remove:(id)sender; 44 47 { 45 [alarms removeAlarms AtIndices: [[tableView selectedRowEnumerator] allObjects]];48 [alarms removeAlarms: [[tableView delegate] selectedItems]]; 46 49 } 47 50 … … 57 60 - (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row; 58 61 { 59 PSAlarm *alarm = [ alarms alarmAtIndex: row];62 PSAlarm *alarm = [reorderedAlarms objectAtIndex: row]; 60 63 61 64 if ([[tableColumn identifier] isEqualToString: @"message"]) return [alarm message]; … … 70 73 return nil; 71 74 } 75 @end 76 77 @implementation PSAlarmsController (NJRTableViewDataSource) 78 79 - (void)removeSelectedRowsFromTableView:(NSTableView *)aTableView; 80 { 81 [self remove: aTableView]; 82 } 83 72 84 @end 73 85
Note:
See TracChangeset
for help on using the changeset viewer.