File:  [mozdev] / chimera / BrowserWindowController.h
Revision 1.41: download - view: text, annotated - select for diffs - revision graph
Wed Apr 17 07:38:31 2002 UTC (16 years, 11 months ago) by hyatt
Branches: MAIN
CVS tags: HEAD
New bookmark icon.  WOrking on the personal toolbar.

    1: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
    2: /* ***** BEGIN LICENSE BLOCK *****
    3:  * Version: NPL 1.1/GPL 2.0/LGPL 2.1
    4:  *
    5:  * The contents of this file are subject to the Netscape Public License
    6:  * Version 1.1 (the "License"); you may not use this file except in
    7:  * compliance with the License. You may obtain a copy of the License at
    8:  * http://www.mozilla.org/NPL/
    9:  *
   10:  * Software distributed under the License is distributed on an "AS IS" basis,
   11:  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
   12:  * for the specific language governing rights and limitations under the
   13:  * License.
   14:  *
   15:  * The Original Code is mozilla.org code.
   16:  *
   17:  * The Initial Developer of the Original Code is 
   18:  * Netscape Communications Corporation.
   19:  * Portions created by the Initial Developer are Copyright (C) 2002
   20:  * the Initial Developer. All Rights Reserved.
   21:  *
   22:  * Contributor(s):
   23:  *
   24:  * Alternatively, the contents of this file may be used under the terms of
   25:  * either the GNU General Public License Version 2 or later (the "GPL"), or 
   26:  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
   27:  * in which case the provisions of the GPL or the LGPL are applicable instead
   28:  * of those above. If you wish to allow use of your version of this file only
   29:  * under the terms of either the GPL or the LGPL, and not to allow others to
   30:  * use your version of this file under the terms of the NPL, indicate your
   31:  * decision by deleting the provisions above and replace them with the notice
   32:  * and other provisions required by the GPL or the LGPL. If you do not delete
   33:  * the provisions above, a recipient may use your version of this file under
   34:  * the terms of any one of the NPL, the GPL or the LGPL.
   35:  *
   36:  * ***** END LICENSE BLOCK ***** */
   37: 
   38: #import <Cocoa/Cocoa.h>
   39: #import "MyBrowserView.h"
   40: #import "Find.h"
   41: 
   42: class nsIDOMEvent;
   43: class nsIDOMNode;
   44: 
   45: @interface BrowserWindowController : NSWindowController<Find>
   46: {
   47:     IBOutlet id mTabBrowser;
   48:     IBOutlet id mSidebarDrawer;
   49:     IBOutlet id mSidebarTabView;
   50:     IBOutlet id mSidebarSourceTabView;
   51:     IBOutlet id mLocationToolbarView;
   52:     IBOutlet id mURLBar;
   53:     IBOutlet id mStatus;
   54:     IBOutlet id mProgress;
   55:     IBOutlet id mLocationSheetWindow;
   56:     IBOutlet id mLocationSheetURLField;
   57:     
   58:     IBOutlet id mSidebarBrowserView;
   59:     IBOutlet id mSidebarBookmarksDataSource;
   60: 
   61:     IBOutlet id mPersonalToolbar;
   62:     
   63:     IBOutlet id mAddBookmarkSheetWindow;
   64:     IBOutlet id mAddBookmarkTitleField;
   65:     IBOutlet id mAddBookmarkFolderField;
   66:     
   67:     // Context menu outlets.
   68:     IBOutlet id mPageMenu;
   69:     IBOutlet id mImageMenu;
   70:     IBOutlet id mInputMenu;
   71:     IBOutlet id mLinkMenu;
   72:     IBOutlet id mImageLinkMenu;
   73:     
   74:     NSToolbarItem *mLocationToolbarItem;
   75:     NSToolbarItem *mSidebarToolbarItem;
   76:     
   77:     BOOL mInitialized;
   78:     NSURL* mURL;
   79:     
   80:     MyBrowserView* mBrowserView;
   81:     
   82:     BOOL mMoveReentrant;
   83:     NSModalSession mModalSession;
   84: 
   85:     BOOL mShouldAutosave;
   86: 
   87:     BOOL mDrawerCachedFrame;
   88:     NSRect mCachedFrameBeforeDrawerOpen; // This is used by the drawer to figure out if the window should
   89:                                          // be returned to its original position when the drawer closes.
   90:     NSRect mCachedFrameAfterDrawerOpen;
   91: 
   92:     int mChromeMask; // Indicates which parts of the window to show (e.g., don't show toolbars)
   93: 
   94:     // Context menu members.
   95:     int mContextMenuFlags;
   96:     nsIDOMEvent* mContextMenuEvent;
   97:     nsIDOMNode* mContextMenuNode;
   98: 
   99:     // Cached bookmark ds used when adding through a sheet
  100:     id mCachedBMDS;
  101: }
  102: 
  103: - (void)dealloc;
  104: 
  105: -(MyBrowserView*)getMyBrowserView;
  106: 
  107: - (void)loadURL:(NSURL*)aURL;
  108: - (void)updateLocationFields:(NSString *)locationString;
  109: - (void)updateToolbarItems;
  110: - (void)focusURLBar;
  111: 
  112: - (void)performAppropriateLocationAction;
  113: - (IBAction)goToLocationFromToolbarURLField:(id)sender;
  114: - (void)focusURLBar;
  115: - (void)beginLocationSheet;
  116: - (IBAction)endLocationSheet:(id)sender;
  117: 
  118: - (IBAction)cancelAddBookmarkSheet:(id)sender;
  119: - (IBAction)endAddBookmarkSheet:(id)sender;
  120: - (void)cacheBookmarkDS: (id)aDS;
  121: 
  122: - (void)saveDocument: (NSView*)aFilterView filterList: (NSPopUpButton*)aFilterList;
  123: - (void)saveURL: (NSView*)aFilterView filterList: (NSPopUpButton*)aFilterList
  124:             url: (NSURL*)aURL suggestedFilename: (NSString*)aFilename;
  125: - (void)printDocument;
  126: - (void)printPreview;
  127: 
  128: //- (BOOL)findInPage:(NSString*)text;
  129: 
  130: -(void) biggerTextSize;
  131: -(void) smallerTextSize;
  132: 
  133: - (void)addBookmarkExtended: (BOOL)aIsFromMenu;
  134: -(IBAction)manageBookmarks: (id)aSender;
  135: 
  136: - (void)newTab;
  137: - (void)closeTab;
  138: - (void)previousTab;
  139: - (void)nextTab;
  140: 
  141: - (IBAction)back:(id)aSender;
  142: - (IBAction)forward:(id)aSender;
  143: - (IBAction)reload:(id)aSender;
  144: - (IBAction)stop:(id)aSender;
  145: - (IBAction)home:(id)aSender;
  146: 
  147: -(void)enterModalSession;
  148: 
  149: -(void)openNewWindowWithURL: (NSURL*)aURL loadInBackground: (BOOL)aLoadInBG;
  150: -(void)openNewTabWithURL: (NSURL*)aURL loadInBackground: (BOOL)aLoadInBG;
  151: 
  152: -(void)autosaveWindowFrame;
  153: -(void)disableAutosave;
  154: 
  155: -(void)setChromeMask:(int)aMask;
  156: 
  157: -(id)getAddBookmarkSheetWindow;
  158: -(id)getAddBookmarkTitle;
  159: -(id)getAddBookmarkFolder;
  160: 
  161: // Called when a context menu should be shown.
  162: - (void)onShowContextMenu:(int)flags domEvent:(nsIDOMEvent*)aEvent domNode:(nsIDOMNode*)aNode;
  163: - (NSMenu*)getContextMenu;
  164: 
  165: // Context menu methods
  166: - (IBAction)openLinkInNewWindow:(id)aSender;
  167: - (IBAction)openLinkInNewTab:(id)aSender;
  168: -(void)openLinkInNewWindowOrTab: (BOOL)aUseWindow;
  169: 
  170: - (IBAction)savePageAs:(id)aSender;
  171: - (IBAction)saveLinkAs:(id)aSender;
  172: - (IBAction)saveImageAs:(id)aSender;
  173: 
  174: - (IBAction)viewOnlyThisImage:(id)aSender;
  175: @end

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