root/trunk/Models/JVBuddy.h

Revision 3511, 2.5 kB (checked in by timothy, 2 years ago)

Buddy list clean up.

Line 
1 extern NSString *JVBuddyCameOnlineNotification;
2 extern NSString *JVBuddyWentOfflineNotification;
3
4 extern NSString *JVBuddyUserCameOnlineNotification;
5 extern NSString *JVBuddyUserWentOfflineNotification;
6 extern NSString *JVBuddyUserStatusChangedNotification;
7 extern NSString *JVBuddyUserIdleTimeUpdatedNotification;
8
9 extern NSString *JVBuddyActiveUserChangedNotification;
10
11 @class ABPerson;
12
13 typedef enum {
14         JVBuddyActiveNickname = 0x0,
15         JVBuddyGivenNickname = 0x1,
16         JVBuddyFullName = 0x2
17 } JVBuddyName;
18
19 @interface JVBuddy : NSObject {
20         ABPerson *_person;
21         NSMutableArray *_rules;
22         NSMutableSet *_users;
23         MVChatUser *_activeUser;
24         NSImage *_picture;
25         NSString *_firstName;
26         NSString *_lastName;
27         NSString *_primaryEmail;
28         NSString *_givenNickname;
29         NSString *_speechVoice;
30         NSString *_uniqueIdentifier;
31 }
32 + (JVBuddyName) preferredName;
33 + (void) setPreferredName:(JVBuddyName) preferred;
34
35 - (id) initWithDictionaryRepresentation:(NSDictionary *) dictionary;
36 - (NSDictionary *) dictionaryRepresentation;
37
38 - (void) registerWithConnection:(MVChatConnection *) connection;
39 - (void) registerWithApplicableConnections;
40 - (void) unregisterWithConnection:(MVChatConnection *) connection;
41 - (void) unregisterWithConnections;
42
43 - (MVChatUser *) activeUser;
44 - (void) setActiveUser:(MVChatUser *) user;
45
46 - (MVChatUserStatus) status;
47 - (NSData *) awayStatusMessage;
48
49 - (BOOL) isOnline;
50 - (NSDate *) dateConnected;
51 - (NSDate *) dateDisconnected;
52
53 - (NSTimeInterval) idleTime;
54
55 - (NSString *) displayName;
56 - (NSString *) nickname;
57
58 - (NSSet *) users;
59
60 - (NSArray *) watchRules;
61 - (void) addWatchRule:(MVChatUserWatchRule *) rule;
62 - (void) removeWatchRule:(MVChatUserWatchRule *) rule;
63
64 - (NSImage *) picture;
65 - (void) setPicture:(NSImage *) picture;
66
67 - (NSString *) compositeName;
68 - (NSString *) firstName;
69 - (NSString *) lastName;
70 - (NSString *) primaryEmail;
71 - (NSString *) givenNickname;
72 - (NSString *) speechVoice;
73 - (NSString *) uniqueIdentifier;
74
75 - (void) setFirstName:(NSString *) name;
76 - (void) setLastName:(NSString *) name;
77 - (void) setPrimaryEmail:(NSString *) email;
78 - (void) setGivenNickname:(NSString *) name;
79 - (void) setSpeechVoice:(NSString *) voice;
80
81 - (ABPerson *) addressBookPersonRecord;
82 - (void) setAddressBookPersonRecord:(ABPerson *) record;
83 - (void) editInAddressBook;
84 - (void) viewInAddressBook;
85
86 - (NSComparisonResult) availabilityCompare:(JVBuddy *) buddy;
87 - (NSComparisonResult) firstNameCompare:(JVBuddy *) buddy;
88 - (NSComparisonResult) lastNameCompare:(JVBuddy *) buddy;
89 - (NSComparisonResult) serverCompare:(JVBuddy *) buddy;
90 - (NSComparisonResult) nicknameCompare:(JVBuddy *) buddy;
91 @end
Note: See TracBrowser for help on using the browser.