Set the Mention Advn Pref's text using -setStringValue: on its normal NSTextField, since we don't want it resizing itself. Fixes #13275.
2 // AIMentionAdvancedPreferences.m
5 // Created by Zachary West on 2009-03-31.
8 #import "AIMentionAdvancedPreferences.h"
9 #import "AIPreferenceWindowController.h"
11 #import <AIUtilities/AIImageAdditions.h>
12 #import <AIUtilities/AIArrayAdditions.h>
14 #define PREF_KEY_MENTIONS @"Saved Mentions"
16 @interface AIMentionAdvancedPreferences()
20 @implementation AIMentionAdvancedPreferences
22 #pragma mark Preference pane settings
23 - (AIPreferenceCategory)category
25 return AIPref_Advanced;
28 return AILocalizedString(@"Mention",nil);
30 - (NSString *)nibName{
31 return @"AIMentionAdvancedPreferences";
34 return [NSImage imageNamed:@"pref-mention" forClass:[AIPreferenceWindowController class]];
39 NSMutableArray *termsCopy = [[mentionTerms mutableCopy] autorelease];
41 // Never save a blank term.
42 [termsCopy removeObject:@""];
44 [adium.preferenceController setPreference:termsCopy
45 forKey:PREF_KEY_MENTIONS
46 group:PREF_GROUP_GENERAL];
50 * @brief Add a new row, select it for editing
52 - (IBAction)add:(id)sender
54 [mentionTerms addObject:@""];
56 [tableView reloadData];
58 NSInteger index = mentionTerms.count-1;
59 [tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:index] byExtendingSelection:NO];
60 [tableView editColumn:0 row:index withEvent:nil select:YES];
64 * @brief Remove the selected rows
66 - (IBAction)remove:(id)sender
68 NSIndexSet *indexes = [tableView selectedRowIndexes];
70 [mentionTerms removeObjectsAtIndexes:indexes];
73 [tableView reloadData];
74 [tableView deselectAll:nil];
78 * @brief The view loaded
82 [label_explanation setStringValue:AILocalizedString(@"Messages are highlighted when the following terms are spoken. Your username is always highlighted.", nil)];
84 mentionTerms = [[NSMutableArray alloc] initWithArray:[adium.preferenceController preferenceForKey:PREF_KEY_MENTIONS group:PREF_GROUP_GENERAL]];
91 [mentionTerms release]; mentionTerms = nil;
93 [super viewWillClose];
96 #pragma mark Table view Delegate
97 - (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView
99 return mentionTerms.count;
102 - (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)rowIndex
104 NSString *identifier = tableColumn.identifier;
106 if ([identifier isEqualToString:@"text"]) {
107 return [mentionTerms objectAtIndex:rowIndex];
113 - (void)tableView:(NSTableView *)aTableView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn row:(int)row
115 NSString *identifier = tableColumn.identifier;
117 if ([identifier isEqualToString:@"text"]) {
118 [mentionTerms setObject:object atIndex:row];
123 - (void)tableViewDeleteSelectedRows:(NSTableView *)tableView