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 "NSBrowserView.h"
40:
41: @interface MyBrowserView : NSView <NSBrowserListener, NSBrowserContainer>
42: {
43: id urlbar;
44: id status;
45: id progress;
46: id progressSuper;
47: id mWindowController;
48: NSTabViewItem* mTab;
49:
50: NSBrowserView* browserView;
51: NSString* defaultStatus;
52: NSString* loadingStatus;
53:
54: BOOL mIsPrimary;
55: BOOL mIsBusy;
56: BOOL mOffline;
57: BOOL mListenersAttached; // We hook up our click and context menu listeners lazily.
58: // If we never become the primary view, we don't bother creating the listeners.
59: }
60:
61: - (IBAction)load:(id)sender;
62: - (void)awakeFromNib;
63: - (void)setFrame:(NSRect)frameRect;
64: - (NSBrowserView*)getBrowserView;
65: - (BOOL)isBusy;
66: - (void)windowClosed;
67:
68: -(NSString*)getCurrentURLSpec;
69:
70: -(void)makePrimaryBrowserView: (id)aUrlbar status: (id)aStatus
71: progress: (id)aProgress windowController: (id)aWindowController;
72: -(void)disconnectView;
73: -(void)setTab: (NSTabViewItem*)tab;
74:
75: -(NSMenu*)getContextMenu;
76:
77: // NSBrowserListener messages
78: - (void)onLoadingStarted;
79: - (void)onLoadingCompleted:(BOOL)succeeded;
80: - (void)onProgressChange:(int)currentBytes outOf:(int)maxBytes;
81: - (void)onLocationChange:(NSURL*)url;
82: - (void)onStatusChange:(NSString*)aMessage;
83:
84: // NSBrowserContainer messages
85: - (void)setStatus:(NSString *)statusString ofType:(NSStatusType)type;
86: - (NSString *)title;
87: - (void)setTitle:(NSString *)title;
88: - (void)sizeBrowserTo:(NSSize)dimensions;
89: - (NSBrowserView*)createBrowserWindow:(unsigned int)mask;
90:
91: @end
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>