Back to index

lightning-sunbird  0.9+nobinonly
BrowserFrame.h
Go to the documentation of this file.
00001 /* ***** BEGIN LICENSE BLOCK *****
00002  * Version: Mozilla-sample-code 1.0
00003  *
00004  * Copyright (c) 2002 Netscape Communications Corporation and
00005  * other contributors
00006  *
00007  * Permission is hereby granted, free of charge, to any person obtaining a
00008  * copy of this Mozilla sample software and associated documentation files
00009  * (the "Software"), to deal in the Software without restriction, including
00010  * without limitation the rights to use, copy, modify, merge, publish,
00011  * distribute, sublicense, and/or sell copies of the Software, and to permit
00012  * persons to whom the Software is furnished to do so, subject to the
00013  * following conditions:
00014  *
00015  * The above copyright notice and this permission notice shall be included
00016  * in all copies or substantial portions of the Software.
00017  *
00018  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
00019  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00020  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
00021  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
00022  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
00023  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
00024  * DEALINGS IN THE SOFTWARE.
00025  *
00026  * Contributor(s):
00027  *   Adam Lock <adamlock@netscape.com>
00028  *
00029  * ***** END LICENSE BLOCK ***** */
00030 
00031 #ifndef BROWSERFRAME_H
00032 #define BROWSERFRAME_H
00033 
00034 #include "GeckoFrame.h"
00035 
00036 class BrowserFrame :
00037     public GeckoFrame
00038 {
00039 protected:
00040     DECLARE_EVENT_TABLE()
00041 
00042     nsAutoString mContextLinkUrl;
00043 
00044     void OnBrowserUrl(wxCommandEvent &event);
00045     void OnBrowserGo(wxCommandEvent &event);
00046     void OnBrowserHome(wxCommandEvent &event);
00047     void OnBrowserOpenLinkInNewWindow(wxCommandEvent & event);
00048 
00049     void OnBrowserBack(wxCommandEvent &event);
00050     void OnUpdateBrowserBack(wxUpdateUIEvent &event);
00051 
00052     void OnBrowserForward(wxCommandEvent &event);
00053     void OnUpdateBrowserForward(wxUpdateUIEvent &event);
00054 
00055     void OnBrowserReload(wxCommandEvent &event);
00056 
00057     void OnBrowserStop(wxCommandEvent &event);
00058     void OnUpdateBrowserStop(wxUpdateUIEvent &event);
00059 
00060     void OnFileSave(wxCommandEvent &event);
00061     void OnFilePrint(wxCommandEvent &event);
00062 
00063     void OnViewPageSource(wxCommandEvent &event);
00064     void OnUpdateViewPageSource(wxUpdateUIEvent &event);
00065 
00066 public :
00067     BrowserFrame(wxWindow* aParent);
00068 
00069     nsresult LoadURI(const char *aURI);
00070     nsresult LoadURI(const wchar_t *aURI);
00071 
00072     // GeckoContainerUI overrides
00073     virtual nsresult CreateBrowserWindow(PRUint32 aChromeFlags,
00074          nsIWebBrowserChrome *aParent, nsIWebBrowserChrome **aNewWindow);
00075     virtual void UpdateStatusBarText(const PRUnichar* aStatusText);
00076     virtual void UpdateCurrentURI();
00077     virtual void ShowContextMenu(PRUint32 aContextFlags, nsIContextMenuInfo *aContextMenuInfo);
00078 };
00079 
00080 #endif