Annotation of chimera/MainController.mm, revision 1.7

1.3       macserv     1: /*
                      2:  *  MainController.mm
                      3:  */
1.1       hyatt       4: 
                      5: #import "MainController.h"
                      6: #import "BrowserWindowController.h"
                      7: 
                      8: @implementation MainController
                      9: 
                     10: -(void)awakeFromNib
                     11: {
1.4       hyatt      12:     [self newWindow: self];
1.1       hyatt      13: }
                     14: 
                     15: -(IBAction)newWindow:(id)aSender
                     16: {
1.5       hyatt      17:     BrowserWindowController* controller = [self openBrowserWindowWithURLString:@"about:blank"];
1.4       hyatt      18:     [controller focusURLBar];
                     19: }
                     20: 
                     21: -(IBAction) openFile:(id)aSender
                     22: {
1.5       hyatt      23:     NSOpenPanel* openPanel = [[NSOpenPanel alloc] init];
                     24:     [openPanel setCanChooseFiles: YES];
                     25:     [openPanel setCanChooseDirectories: NO];
                     26:     [openPanel setAllowsMultipleSelection: NO];
                     27:     NSArray* array = [NSArray arrayWithObjects: @"htm",@"html",@"shtml",@"xhtml",@"xml",
                     28:                                                 @"txt",@"text",
                     29:                                                 @"gif",@"jpg",@"jpeg",@"png",@"bmp",
                     30:                                                 nil];
                     31:     int result = [openPanel runModalForTypes: array];
                     32:     if (result == NSOKButton) {
                     33:         NSArray* urlArray = [openPanel URLs];
                     34:         if ([urlArray count] == 0)
                     35:             return;
                     36:         NSURL* url = [urlArray objectAtIndex: 0];
                     37:         NSWindow* keyWindow = [mApplication keyWindow];
                     38:         if (keyWindow)
                     39:             return [[keyWindow windowController] loadURL: url];
                     40:         else
                     41:             [self openBrowserWindowWithURL: url];
                     42:     }
1.4       hyatt      43: }
                     44: 
                     45: -(IBAction) openLocation:(id)aSender
                     46: {
                     47:     NSWindow* keyWindow = [mApplication keyWindow];
                     48:     if (!keyWindow) {
1.5       hyatt      49:       [self openBrowserWindowWithURLString: @"about:blank"];
1.4       hyatt      50:       keyWindow = [mApplication keyWindow];
                     51:     }
                     52:     
1.6       macserv    53:     [[keyWindow windowController] performAppropriateLocationAction];
1.1       hyatt      54: }
                     55: 
1.7     ! hyatt      56: -(IBAction) savePage:(id)aSender
        !            57: {
        !            58:     NSWindow* keyWindow = [mApplication keyWindow];
        !            59:     if (keyWindow)
        !            60:       [[keyWindow windowController] saveCurrentPage];
        !            61: }
        !            62: 
        !            63: -(IBAction) toggleOfflineMode:(id)aSender
        !            64: {
        !            65:   // XXXdwh Write me!
        !            66: }
        !            67: 
1.2       hyatt      68: -(IBAction) back:(id)aSender
                     69: {
                     70:     [[[mApplication keyWindow] windowController] back: aSender]; 
                     71: }
                     72: 
                     73: -(IBAction) forward:(id)aSender
                     74: {
                     75:     [[[mApplication keyWindow] windowController] forward: aSender]; 
                     76: }
                     77: 
                     78: -(IBAction) reload:(id)aSender
                     79: {
                     80:     [[[mApplication keyWindow] windowController] reload: aSender]; 
                     81: }
                     82: 
                     83: -(IBAction) stop:(id)aSender
                     84: {
                     85:     [[[mApplication keyWindow] windowController] stop: aSender]; 
                     86: }
                     87: 
                     88: -(IBAction) home:(id)aSender
                     89: {
                     90:     [[[mApplication keyWindow] windowController] home: aSender];
                     91: }
                     92: 
1.5       hyatt      93: -(BrowserWindowController*)openBrowserWindowWithURLString: (NSString*)aURL
                     94: {
                     95:     return [self openBrowserWindowWithURL: [NSURL URLWithString:aURL]];
                     96: }
                     97: 
                     98: -(BrowserWindowController*)openBrowserWindowWithURL: (NSURL*)aURL
1.1       hyatt      99: {
1.3       macserv   100:        BrowserWindowController* browser = [[BrowserWindowController alloc] initWithWindowNibName: @"BrowserWindow"];
1.5       hyatt     101:     [browser loadURL: aURL];
1.3       macserv   102:        [browser showWindow: self];
1.4       hyatt     103:     return browser;
1.1       hyatt     104: }
                    105: 
                    106: @end

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>