[UserPresets addObject:[self CreatePreset]];
/* We Sort the Presets Alphabetically by name */
NSSortDescriptor * lastNameDescriptor=[[[NSSortDescriptor alloc] initWithKey:@"PresetName"
- ascending:YES] autorelease];
+ ascending:YES selector:@selector(caseInsensitiveCompare:)] autorelease];
NSArray *sortDescriptors=[NSArray arrayWithObject:lastNameDescriptor];
NSArray *sortedArray=[UserPresets sortedArrayUsingDescriptors:sortDescriptors];
[UserPresets setArray:sortedArray];
/* We save all of the preset data here */
[self savePreset];
}
+
+- (IBAction)insertPreset:(id)sender
+{
+ int index = [tableView selectedRow];
+ [UserPresets insertObject:[self CreatePreset] atIndex:index];
+ [tableView reloadData];
+ [self savePreset];
+}
+
- (NSDictionary *)CreatePreset
{
NSMutableDictionary *preset = [[NSMutableDictionary alloc] init];
/*Subtitles*/
[fSubPopUp selectItemWithTitle: [NSString stringWithFormat:[chosenPreset valueForKey:@"Subtitles"]]];
+ // Deselect the currently selected table //
+ //[tableView deselectRow:[tableView selectedRow]];
}
- (int)numberOfRowsInTableView:(NSTableView *)aTableView
objectValueForTableColumn:(NSTableColumn *)aTableColumn
row:(int)rowIndex
{
-
- //Lets sort UserPresets here if we can
+
id theRecord, theValue;
theRecord = [UserPresets objectAtIndex:rowIndex];
[theRecord setObject:anObject forKey:[aTableColumn identifier]];
- // Don't forget to save the changes
- //[self savePreset];
+ /* We Sort the Presets Alphabetically by name */
+ NSSortDescriptor * lastNameDescriptor=[[[NSSortDescriptor alloc] initWithKey:@"PresetName"
+ ascending:YES selector:@selector(caseInsensitiveCompare:)] autorelease];
+ NSArray *sortDescriptors=[NSArray arrayWithObject:lastNameDescriptor];
+ NSArray *sortedArray=[UserPresets sortedArrayUsingDescriptors:sortDescriptors];
+ [UserPresets setArray:sortedArray];
+ /* We Reload the New Table data for presets */
+ [tableView reloadData];
+ /* We save all of the preset data here */
+ [self savePreset];
}
}
+
- (void) controlTextDidBeginEditing: (NSNotification *) notification
{
[self CalculateBitrate: NULL];