1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
/* MConnectionPanel */
#import <Cocoa/Cocoa.h>
#include <myx_public_interface.h>
@class MConnectionPanel;
@protocol MConnectionPanelDelegate
- (void)connectionPanel:(MConnectionPanel*)panel
finished:(MYSQL*)mysql
info:(MYX_USER_CONNECTION*)conn;
- (void)connectionPanel:(MConnectionPanel*)panel
aborted:(BOOL)status;
@end
@interface MConnectionPanel : NSWindowController
{
@protected
IBOutlet NSButton *connectButton;
IBOutlet NSPopUpButton *connectionPopUp;
IBOutlet NSButton *detailsButton;
IBOutlet NSPanel *errorPanel;
IBOutlet NSTextField *errorText;
IBOutlet NSTextField *hostname;
IBOutlet NSSecureTextField *password;
IBOutlet NSButton *pingButton;
IBOutlet NSTextView *pingText;
IBOutlet id pingTextContainer;
IBOutlet NSTextField *port;
IBOutlet NSStepper *portSpin;
IBOutlet NSProgressIndicator *progressIndicator;
IBOutlet NSTextField *username;
IBOutlet NSView *extraView;
IBOutlet NSImageView *topImage;
IBOutlet NSTextField *socketText;
id<MConnectionPanelDelegate> _delegate;
int _lastSelectedConnection;
NSPipe *pingPipe;
NSTask *pingTask;
NSFileHandle *pingPipeHandle;
MYSQL *_mysql;
BOOL _connecting;
BOOL _connectionFailed; // written by thread
NSString *_connectionsFile;
MYX_USER_CONNECTIONS *_connections;
MYX_USER_CONNECTION _new_connection;
}
+ (NSString*)representationForConnection:(MYX_USER_CONNECTION*)conn;
- (IBAction)cancel:(id)sender;
- (IBAction)closeErrorPanel:(id)sender;
- (IBAction)connect:(id)sender;
- (IBAction)connectionChanged:(id)sender;
- (IBAction)pingHost:(id)sender;
- (IBAction)toggleDetails:(id)sender;
- (id)initWithConnectionsFile:(NSString*)file;
- (void)setHeaderImage:(NSImage*)image;
- (void)setDelegate:(id)deleg;
- (void)show;
- (void)showAndConnectTo:(NSString*)connection;
@end
|