• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /macosx-10.9.5/pyobjc-42/pyobjc/pyobjc-core/Examples/ApplicationPlugins/Colloqui/Colloquy Plugin SDK/Headers/
1#import <AppKit/NSWindowController.h>
2#import <AppKit/NSNibDeclarations.h>
3#import "JVInspectorController.h"
4
5@class MVTableView;
6@class NSWindow;
7@class NSView;
8@class NSMenu;
9@class NSButton;
10@class NSImageView;
11@class NSTextField;
12@class NSPopUpButton;
13@class JVBuddy;
14@class NSMutableSet;
15@class NSMutableArray;
16@class NSString;
17@class NSTimer;
18@class ABPeoplePickerController;
19@class MVChatConnection;
20
21typedef enum {
22	MVAvailabilitySortOrder = 'avlY',
23	MVFirstNameSortOrder = 'fSnM',
24	MVLastNameSortOrder = 'lSnM',
25	MVServerSortOrder = 'serV'
26} MVBuddyListSortOrder;
27
28@interface MVBuddyListController : NSWindowController <JVInspectionDelegator> {
29	@private
30	IBOutlet MVTableView *buddies;
31	IBOutlet NSMenu *actionMenu;
32	IBOutlet NSButton *sendMessageButton;
33	IBOutlet NSButton *infoButton;
34
35	IBOutlet NSWindow *pickerWindow;
36	IBOutlet NSView *pickerView;
37
38	IBOutlet NSWindow *newPersonWindow;
39	IBOutlet NSTextField *nickname;
40	IBOutlet NSPopUpButton *server;
41	IBOutlet NSTextField *firstName;
42	IBOutlet NSTextField *lastName;
43	IBOutlet NSTextField *email;
44	IBOutlet NSImageView *image;
45	IBOutlet NSButton *addButton;
46
47	NSMutableSet *_buddyList;
48	NSMutableSet *_onlineBuddies;
49	NSMutableArray *_buddyOrder;
50	ABPeoplePickerController* _picker;
51	NSString *_addPerson;
52
53	BOOL _showFullNames;
54	BOOL _showNicknameAndServer;
55	BOOL _showIcons;
56	BOOL _showOfflineBuddies;
57	MVBuddyListSortOrder _sortOrder;
58
59	float _animationPosition;
60	NSMutableArray *_oldPositions;
61	NSTimer *_sortTimer;
62	BOOL _viewingTop;
63	BOOL _needsToAnimate;
64	BOOL _animating;
65}
66+ (MVBuddyListController *) sharedBuddyList;
67
68- (IBAction) getInfo:(id) sender;
69
70- (IBAction) showBuddyList:(id) sender;
71- (IBAction) hideBuddyList:(id) sender;
72
73- (JVBuddy *) buddyForNickname:(NSString *) name onServer:(NSString *) address;
74- (NSArray *) buddies;
75- (NSArray *) onlineBuddies;
76
77- (IBAction) showBuddyPickerSheet:(id) sender;
78- (IBAction) cancelBuddySelection:(id) sender;
79- (IBAction) confirmBuddySelection:(id) sender;
80
81- (IBAction) showNewPersonSheet:(id) sender;
82- (IBAction) cancelNewBuddy:(id) sender;
83- (IBAction) confirmNewBuddy:(id) sender;
84
85- (void) setNewBuddyNickname:(NSString *) nick;
86- (void) setNewBuddyFullname:(NSString *) name;
87- (void) setNewBuddyServer:(MVChatConnection *) connection;
88
89- (IBAction) messageSelectedBuddy:(id) sender;
90- (IBAction) sendFileToSelectedBuddy:(id) sender;
91
92- (void) setShowFullNames:(BOOL) flag;
93- (BOOL) showFullNames;
94- (IBAction) toggleShowFullNames:(id) sender;
95
96- (void) setShowNicknameAndServer:(BOOL) flag;
97- (BOOL) showNicknameAndServer;
98- (IBAction) toggleShowNicknameAndServer:(id) sender;
99
100- (void) setShowIcons:(BOOL) flag;
101- (BOOL) showIcons;
102- (IBAction) toggleShowIcons:(id) sender;
103
104- (void) setShowOfflineBuddies:(BOOL) flag;
105- (BOOL) showOfflineBuddies;
106- (IBAction) toggleShowOfflineBuddies:(id) sender;
107
108- (void) setSortOrder:(MVBuddyListSortOrder) order;
109- (MVBuddyListSortOrder) sortOrder;
110- (IBAction) sortByAvailability:(id) sender;
111- (IBAction) sortByFirstName:(id) sender;
112- (IBAction) sortByLastName:(id) sender;
113- (IBAction) sortByServer:(id) sender;
114@end
115