root/Trunk/Adium.framework/Versions/A/Headers/AIAccountViewController.h @ 2

Revision 2, 3.6 KB (checked in by jon, 16 years ago)

Initial commit of skeletal project.

Line 
1/*
2 * Adium is the legal property of its developers, whose names are listed in the copyright file included
3 * with this source distribution.
4 *
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.
8 *
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.
12 *
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.
15 */
16
17#import <Adium/AIContactControllerProtocol.h>
18
19@class AIAccount;
20
21@interface AIAccountViewController : NSObject {
22        /* These are the views used in Adium's account preferences.  If views aren't provided by a custom account view
23         * nib, default views with the most common controls will be used.  There is no need to provide a custom nib
24         * if your account code only needs the default controls.  Avoid using the auxiliary tabs if possible. */
25    IBOutlet    NSView                  *view_setup;                            //Account setup (UID, password, etc)
26    IBOutlet    NSView                  *view_profile;                  //Account profile (Alias, profile)
27    IBOutlet    NSView                  *view_options;                  //Account options (Host, port, mail, protocol, etc)
28    IBOutlet    NSView                  *view_privacy;                  //Account privacy (Encryption, typing, etc)
29    IBOutlet    NSTabView               *view_auxiliaryTabView;                 //Tab view containing auxiliary tabs
30       
31        //These common controls are used by most protocols, so we place them here as a convenience to protocol code.
32        //Custom account view nibs are encouraged to connect to these outlets.
33        IBOutlet        NSTextField             *textField_accountUIDLabel;             //Label on UID field
34        IBOutlet        NSTextField             *textField_accountUID;                  //UID field
35        IBOutlet        NSTextField             *label_password;                                //Label on the password field
36        IBOutlet        NSTextField             *textField_password;                    //Password field
37        IBOutlet        NSTextField             *textField_connectHost;                 //Connect host
38        IBOutlet        NSTextField             *textField_connectPort;                 //Connect port
39        IBOutlet        NSTextField             *textField_alias;                               //User alias (or display name)
40        IBOutlet        NSTextField             *label_alias;                                   //Label for the alias field
41        IBOutlet        NSButton                *checkBox_checkMail;                    //Check for new mail
42       
43        IBOutlet        NSTextField             *label_port;                                    //Label for the port field
44        IBOutlet        NSTextField             *label_server;                                  //Label for the login server field
45       
46        IBOutlet        NSTextField             *label_typing;                                  //Label for the typing preference
47        IBOutlet        NSButton                *checkBox_sendTyping;                   //Send the user's typing state
48       
49        IBOutlet        NSTextField             *label_encryption;                              //Label for the encryption preference
50        IBOutlet        NSPopUpButton   *popUp_encryption;                              //Encryption preference
51       
52        IBOutlet        NSProgressIndicator *progressIndicator_registering;
53        IBOutlet        NSTextField                     *textField_registering;
54       
55        //Instance variables
56    AIAccount                   *account;
57        NSMutableDictionary     *changedPrefDict;
58}
59
60+ (id)accountViewController;
61- (id)init;
62- (NSView *)setupView;
63- (NSView *)profileView;
64- (NSView *)optionsView;
65- (NSView *)privacyView;
66- (void)configureForAccount:(AIAccount *)inAccount;
67- (IBAction)changedPreference:(id)sender;
68- (NSString *)nibName;
69- (void)saveConfiguration;
70
71- (void)didBeginRegistration;
72- (void)usernameAndPasswordRegistered:(NSNotification*)notification;
73
74//For subclasses
75- (NSDictionary *)keyToKeyDict;
76
77@end
Note: See TracBrowser for help on using the browser.