2 * Adium is the legal property of its developers, whose names are listed in the copyright file included
3 * with this source distribution.
5 * This program is free software; you can redistribute it and/or modify it under the terms of the GNU
6 * General Public License as published by the Free Software Foundation; either version 2 of the License,
7 * or (at your option) any later version.
9 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
10 * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
11 * Public License for more details.
13 * You should have received a copy of the GNU General Public License along with this program; if not,
14 * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 #import "AIContactController.h"
18 //#import "AIContactInfoWindowController.h"
19 //#import "AIContactListEditorPlugin.h"
20 #import "AIInterfaceController.h"
21 #import "BGContactNotesPlugin.h"
22 //#import <AddressBook/AddressBook.h>
23 #import <Adium/AIListObject.h>
25 #define KEY_AB_NOTE_SYNC @"AB Note Sync"
28 * @class BGContactNotesPlugin
29 * @brief Component to show contact notes in tooltips
31 @implementation BGContactNotesPlugin
38 //Install our tooltip entry
39 [[adium interfaceController] registerContactListTooltipEntry:self secondaryEntry:YES];
43 * @brief Tooltip label
45 * @result A label, or nil if no tooltip entry should be shown
47 - (NSString *)labelForObject:(AIListObject *)inObject
49 return AILocalizedString(@"Notes", "Short identifier for the 'notes' which can be entered for contacts. This will be shown in the contact list tooltips.");
53 * @brief Tooltip entry
55 * @result The tooltip entry, or nil if no tooltip should be shown
57 - (NSAttributedString *)entryForObject:(AIListObject *)inObject
59 NSAttributedString *entry = nil;
60 NSString *currentNotes;
62 if ((currentNotes = [inObject preferenceForKey:@"Notes" group:PREF_GROUP_NOTES ignoreInheritedValues:YES]) ||
63 (currentNotes = [inObject statusObjectForKey:@"Notes"])) {
64 entry = [[NSAttributedString alloc] initWithString:currentNotes];
67 return [entry autorelease];