File:  [mozdev] / chimera / BrowserWindowController.h
Revision 1.44: download - view: text, annotated - select for diffs - revision graph
Fri Apr 19 01:08:30 2002 UTC (17 years ago) by hyatt
Branches: MAIN
CVS tags: HEAD
Teaching the personal toolbar how to wrap to multiple lines.

    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: #import "BookmarksToolbar.h"
   42: 
   43: class nsIDOMEvent;
   44: class nsIDOMNode;
   45: 
   46: @interface BrowserWindowController : NSWindowController<Find>
   47: {
   48:     IBOutlet id mTabBrowser;
   49:     IBOutlet NSDrawer* mSidebarDrawer;
   50:     IBOutlet id mSidebarTabView;
   51:     IBOutlet id mSidebarSourceTabView;
   52:     IBOutlet id mLocationToolbarView;
   53:     IBOutlet id mURLBar;
   54:     IBOutlet id mStatus;
   55:     IBOutlet id mProgress;
   56:     IBOutlet id mLocationSheetWindow;
   57:     IBOutlet id mLocationSheetURLField;
   58:     
   59:     IBOutlet id mSidebarBrowserView;
   60:     IBOutlet id mSidebarBookmarksDataSource;
   61: 
   62:     IBOutlet BookmarksToolbar* mPersonalToolbar;
   63:     
   64:     IBOutlet id mAddBookmarkSheetWindow;
   65:     IBOutlet id mAddBookmarkTitleField;
   66:     IBOutlet id mAddBookmarkFolderField;
   67:     
   68:     // Context menu outlets.
   69:     IBOutlet id mPageMenu;
   70:     IBOutlet id mImageMenu;
   71:     IBOutlet id mInputMenu;
   72:     IBOutlet id mLinkMenu;
   73:     IBOutlet id mImageLinkMenu;
   74:     
   75:     NSToolbarItem *mLocationToolbarItem;
   76:     NSToolbarItem *mSidebarToolbarItem;
   77:     
   78:     BOOL mInitialized;
   79:     NSURL* mURL;
   80:     
   81:     MyBrowserView* mBrowserView;
   82:     
   83:     BOOL mMoveReentrant;
   84:     NSModalSession mModalSession;
   85: 
   86:     BOOL mShouldAutosave;
   87: 
   88:     BOOL mDrawerCachedFrame;
   89:     NSRect mCachedFrameBeforeDrawerOpen; // This is used by the drawer to figure out if the window should
   90:                                          // be returned to its original position when the drawer closes.
   91:     NSRect mCachedFrameAfterDrawerOpen;
   92: 
   93:     int mChromeMask; // Indicates which parts of the window to show (e.g., don't show toolbars)
   94: 
   95:     // Context menu members.
   96:     int mContextMenuFlags;
   97:     nsIDOMEvent* mContextMenuEvent;
   98:     nsIDOMNode* mContextMenuNode;
   99: 
  100:     // Cached bookmark ds used when adding through a sheet
  101:     id mCachedBMDS;
  102: }
  103: 
  104: - (void)dealloc;
  105: 
  106: -(id)getTabBrowser;
  107: -(MyBrowserView*)getMyBrowserView;
  108: 
  109: - (void)loadURL:(NSURL*)aURL;
  110: - (void)updateLocationFields:(NSString *)locationString;
  111: - (void)updateToolbarItems;
  112: - (void)focusURLBar;
  113: 
  114: - (void)performAppropriateLocationAction;
  115: - (IBAction)goToLocationFromToolbarURLField:(id)sender;
  116: - (void)focusURLBar;
  117: - (void)beginLocationSheet;
  118: - (IBAction)endLocationSheet:(id)sender;
  119: 
  120: - (IBAction)cancelAddBookmarkSheet:(id)sender;
  121: - (IBAction)endAddBookmarkSheet:(id)sender;
  122: - (void)cacheBookmarkDS: (id)aDS;
  123: 
  124: - (void)saveDocument: (NSView*)aFilterView filterList: (NSPopUpButton*)aFilterList;
  125: - (void)saveURL: (NSView*)aFilterView filterList: (NSPopUpButton*)aFilterList
  126:             url: (NSURL*)aURL suggestedFilename: (NSString*)aFilename;
  127: - (void)printDocument;
  128: - (void)printPreview;
  129: 
  130: //- (BOOL)findInPage:(NSString*)text;
  131: 
  132: -(void) biggerTextSize;
  133: -(void) smallerTextSize;
  134: 
  135: - (void)addBookmarkExtended: (BOOL)aIsFromMenu isFolder:(BOOL)aIsFolder;
  136: - (IBAction)manageBookmarks: (id)aSender;
  137: - (IBAction)toggleSidebar:(id)aSender;
  138: 
  139: - (void)newTab;
  140: - (void)closeTab;
  141: - (void)previousTab;
  142: - (void)nextTab;
  143: 
  144: - (IBAction)back:(id)aSender;
  145: - (IBAction)forward:(id)aSender;
  146: - (IBAction)reload:(id)aSender;
  147: - (IBAction)stop:(id)aSender;
  148: - (IBAction)home:(id)aSender;
  149: 
  150: -(void)enterModalSession;
  151: 
  152: -(void)openNewWindowWithURL: (NSURL*)aURL loadInBackground: (BOOL)aLoadInBG;
  153: -(void)openNewTabWithURL: (NSURL*)aURL loadInBackground: (BOOL)aLoadInBG;
  154: 
  155: -(void)autosaveWindowFrame;
  156: -(void)disableAutosave;
  157: 
  158: -(void)setChromeMask:(int)aMask;
  159: 
  160: -(id)getAddBookmarkSheetWindow;
  161: -(id)getAddBookmarkTitle;
  162: -(id)getAddBookmarkFolder;
  163: 
  164: // Called when a context menu should be shown.
  165: - (void)onShowContextMenu:(int)flags domEvent:(nsIDOMEvent*)aEvent domNode:(nsIDOMNode*)aNode;
  166: - (NSMenu*)getContextMenu;
  167: 
  168: // Context menu methods
  169: - (IBAction)openLinkInNewWindow:(id)aSender;
  170: - (IBAction)openLinkInNewTab:(id)aSender;
  171: -(void)openLinkInNewWindowOrTab: (BOOL)aUseWindow;
  172: 
  173: - (IBAction)savePageAs:(id)aSender;
  174: - (IBAction)saveLinkAs:(id)aSender;
  175: - (IBAction)saveImageAs:(id)aSender;
  176: 
  177: - (IBAction)viewOnlyThisImage:(id)aSender;
  178: 
  179: - (NSView*) bookmarksToolbar;
  180: @end
  181: 
  182: 
  183: @interface BrowserWindow : NSWindow
  184: {
  185: }
  186: @end

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