Overhaul the wxWebView documentation. Split the documentation into sections and add documentation for clipboard and history functions. Add documentation for wxWebHistoryItem. Fix many spelling mistakes. Alphabetise the function names. Add missing svn properties.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Steve Lamerton
2011-07-02 16:24:56 +00:00
parent 97e49559fb
commit 968a7de2c5

View File

@@ -1,417 +1,509 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: webview.h // Name: webview.h
// Purpose: interface of wxWebView // Purpose: interface of wxWebView
// Author: wxWidgets team // Author: wxWidgets team
// RCS-ID: $Id:$ // RCS-ID: $Id$
// Licence: wxWindows licence // Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
/** /**
Zoom levels availiable in wxWebView Zoom levels availiable in wxWebView
*/ */
enum wxWebViewZoom enum wxWebViewZoom
{ {
wxWEB_VIEW_ZOOM_TINY, wxWEB_VIEW_ZOOM_TINY,
wxWEB_VIEW_ZOOM_SMALL, wxWEB_VIEW_ZOOM_SMALL,
wxWEB_VIEW_ZOOM_MEDIUM, //!< default size wxWEB_VIEW_ZOOM_MEDIUM, //!< default size
wxWEB_VIEW_ZOOM_LARGE, wxWEB_VIEW_ZOOM_LARGE,
wxWEB_VIEW_ZOOM_LARGEST wxWEB_VIEW_ZOOM_LARGEST
}; };
/** /**
The type of zooming that the web view control can perform The type of zooming that the web view control can perform
*/ */
enum wxWebViewZoomType enum wxWebViewZoomType
{ {
/** /**
The entire layout scales when zooming, including images The entire layout scales when zooming, including images
*/ */
wxWEB_VIEW_ZOOM_TYPE_LAYOUT, wxWEB_VIEW_ZOOM_TYPE_LAYOUT,
/** /**
Only the text changes in size when zooming, images and other layout Only the text changes in size when zooming, images and other layout
elements retain their initial size elements retain their initial size
*/ */
wxWEB_VIEW_ZOOM_TYPE_TEXT wxWEB_VIEW_ZOOM_TYPE_TEXT
}; };
/** /**
Types of errors that can cause navigation to fail Types of errors that can cause navigation to fail
*/ */
enum wxWebNavigationError enum wxWebNavigationError
{ {
/** Connection error (timeout, etc.) */ /** Connection error (timeout, etc.) */
wxWEB_NAV_ERR_CONNECTION, wxWEB_NAV_ERR_CONNECTION,
/** Invalid certificate */ /** Invalid certificate */
wxWEB_NAV_ERR_CERTIFICATE, wxWEB_NAV_ERR_CERTIFICATE,
/** Authentication required */ /** Authentication required */
wxWEB_NAV_ERR_AUTH, wxWEB_NAV_ERR_AUTH,
/** Other security error */ /** Other security error */
wxWEB_NAV_ERR_SECURITY, wxWEB_NAV_ERR_SECURITY,
/** Requested resource not found */ /** Requested resource not found */
wxWEB_NAV_ERR_NOT_FOUND, wxWEB_NAV_ERR_NOT_FOUND,
/** Invalid request/parameters (e.g. bad URL, bad protocol, /** Invalid request/parameters (e.g. bad URL, bad protocol,
unsupported resource type) */ unsupported resource type) */
wxWEB_NAV_ERR_REQUEST, wxWEB_NAV_ERR_REQUEST,
/** The user cancelled (e.g. in a dialog) */ /** The user cancelled (e.g. in a dialog) */
wxWEB_NAV_ERR_USER_CANCELLED, wxWEB_NAV_ERR_USER_CANCELLED,
/** Another (exotic) type of error that didn't fit in other categories*/ /** Another (exotic) type of error that didn't fit in other categories*/
wxWEB_NAV_ERR_OTHER wxWEB_NAV_ERR_OTHER
}; };
/** /**
Type of refresh Type of refresh
*/ */
enum wxWebViewReloadFlags enum wxWebViewReloadFlags
{ {
/** Default reload, will access cache */ /** Default reload, will access cache */
wxWEB_VIEW_RELOAD_DEFAULT, wxWEB_VIEW_RELOAD_DEFAULT,
/** Reload the current view without accessing the cache */ /** Reload the current view without accessing the cache */
wxWEB_VIEW_RELOAD_NO_CACHE wxWEB_VIEW_RELOAD_NO_CACHE
}; };
/** /**
* List of available backends for wxWebView * List of available backends for wxWebView
*/ */
enum wxWebViewBackend enum wxWebViewBackend
{ {
/** Value that may be passed to wxWebView to let it pick an appropriate /** Value that may be passed to wxWebView to let it pick an appropriate
* engine for the current platform*/ * engine for the current platform*/
wxWEB_VIEW_BACKEND_DEFAULT, wxWEB_VIEW_BACKEND_DEFAULT,
/** The OSX-native WebKit web engine */ /** The OSX-native WebKit web engine */
wxWEB_VIEW_BACKEND_OSX_WEBKIT, wxWEB_VIEW_BACKEND_OSX_WEBKIT,
/** The GTK port of the WebKit engine */ /** The GTK port of the WebKit engine */
wxWEB_VIEW_BACKEND_GTK_WEBKIT, wxWEB_VIEW_BACKEND_GTK_WEBKIT,
/** Use Microsoft Internet Explorer as web engine */ /** Use Microsoft Internet Explorer as web engine */
wxWEB_VIEW_BACKEND_IE wxWEB_VIEW_BACKEND_IE
}; };
/** /**
@class wxWebView @class wxWebHistoryItem
This control may be used to render web (HTML / CSS / javascript) documents. A simple class that contains the URL and title of an element of the history
Capabilities of the HTML renderer will depend upon the backed. of a wxWebView.
TODO: describe each backend and its capabilities here
@library{wxweb}
Note that errors are generally reported asynchronously though the @category{ctrl}
@c wxEVT_COMMAND_WEB_VIEW_ERROR event described below. */
class wxWebHistoryItem
@beginEventEmissionTable{wxWebNavigationEvent} {
@event{EVT_WEB_VIEW_NAVIGATING(id, func)} public:
Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATING event, generated before trying /**
to get a resource. This event may be vetoed to prevent navigating to this Construtor.
resource. Note that if the displayed HTML document has several frames, one */
such event will be generated per frame. wxWebHistoryItem(const wxString& url, const wxString& title);
@event{EVT_WEB_VIEW_NAVIGATED(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATED event generated after it was /**
confirmed that a resource would be requested. This event may not be vetoed. @return The url of the page.
Note that if the displayed HTML document has several frames, one such event */
will be generated per frame. wxString GetUrl();
@event{EVT_WEB_VIEW_LOADED(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_LOADED event generated when the document /**
is fully loaded and displayed. @return The title of the page.
@event{EVT_WEB_VIEW_ERRROR(id, func)} */
Process a @c wxEVT_COMMAND_WEB_VIEW_ERROR event generated when a navigation wxString GetTitle();
error occurs. };
The integer associated with this event will be a wxWebNavigationError item.
The string associated with this event may contain a backend-specific more /**
precise error message/code. @class wxWebView
@event{EVT_WEB_VIEW_NEWWINDOW(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_NEWWINDOW event, generated when a new This control may be used to render web (HTML / CSS / javascript) documents.
window is created. This event may be vetoed to prevent a new window showing, Capabilities of the HTML renderer will depend upon the backed.
for example if you want to open the url in the existing window or a new tab. TODO: describe each backend and its capabilities here
@endEventTable
Note that errors are generally reported asynchronously though the
@library{wxweb} @c wxEVT_COMMAND_WEB_VIEW_ERROR event described below.
@category{ctrl}
*/ @beginEventEmissionTable{wxWebNavigationEvent}
class wxWebView : public wxControl @event{EVT_WEB_VIEW_NAVIGATING(id, func)}
{ Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATING event, generated before trying
public: to get a resource. This event may be vetoed to prevent navigating to this
resource. Note that if the displayed HTML document has several frames, one
/** such event will be generated per frame.
Creation function for two-step creation. @event{EVT_WEB_VIEW_NAVIGATED(id, func)}
*/ Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATED event generated after it was
virtual bool Create(wxWindow* parent, confirmed that a resource would be requested. This event may not be vetoed.
wxWindowID id, Note that if the displayed HTML document has several frames, one such event
const wxString& url, will be generated per frame.
const wxPoint& pos, @event{EVT_WEB_VIEW_LOADED(id, func)}
const wxSize& size, Process a @c wxEVT_COMMAND_WEB_VIEW_LOADED event generated when the document
long style, is fully loaded and displayed.
const wxString& name) = 0; @event{EVT_WEB_VIEW_ERRROR(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_ERROR event generated when a navigation
/** error occurs.
Factory function to create a new wxWebView for two-step creation The integer associated with this event will be a wxWebNavigationError item.
(you need to call wxWebView::Create on the returned object) The string associated with this event may contain a backend-specific more
@param backend which web engine to use as backend for wxWebView precise error message/code.
@return the created wxWebView, or NULL if the requested backend is @event{EVT_WEB_VIEW_NEWWINDOW(id, func)}
not available Process a @c wxEVT_COMMAND_WEB_VIEW_NEWWINDOW event, generated when a new
*/ window is created. This event may be vetoed to prevent a new window showing,
static wxWebView* New(wxWebViewBackend backend = wxWEB_VIEW_BACKEND_DEFAULT); for example if you want to open the url in the existing window or a new tab.
@endEventTable
/**
Factory function to create a new wxWebView @library{wxweb}
@param parent parent window to create this view in @category{ctrl}
@param id ID of this control */
@param url URL to load by default in the web view class wxWebView : public wxControl
@param pos position to create this control at {
(you may use wxDefaultPosition if you use sizers) public:
@param size size to create this control with
(you may use wxDefaultSize if you use sizers) /**
@param backend which web engine to use as backend for wxWebView Creation function for two-step creation.
@return the created wxWebView, or NULL if the requested backend */
is not available virtual bool Create(wxWindow* parent,
*/ wxWindowID id,
static wxWebView* New(wxWindow* parent, const wxString& url,
wxWindowID id, const wxPoint& pos,
const wxString& url = wxWebViewDefaultURLStr, const wxSize& size,
const wxPoint& pos = wxDefaultPosition, long style,
const wxSize& size = wxDefaultSize, const wxString& name) = 0;
wxWebViewBackend backend = wxWEB_VIEW_BACKEND_DEFAULT,
long style = 0, /**
const wxString& name = wxWebViewNameStr); Factory function to create a new wxWebView for two-step creation
(you need to call wxWebView::Create on the returned object)
@param backend which web engine to use as backend for wxWebView
/** @return the created wxWebView, or NULL if the requested backend is
Get whether it is possible to navigate back in the history of not available
visited pages */
*/ static wxWebView* New(wxWebViewBackend backend = wxWEB_VIEW_BACKEND_DEFAULT);
virtual bool CanGoBack() = 0;
/**
/** Factory function to create a new wxWebView
Get whether it is possible to navigate forward in the history of @param parent parent window to create this view in
visited pages @param id ID of this control
*/ @param url URL to load by default in the web view
virtual bool CanGoForward() = 0; @param pos position to create this control at
(you may use wxDefaultPosition if you use sizers)
/** @param size size to create this control with
Navigate back in the history of visited pages. (you may use wxDefaultSize if you use sizers)
Only valid if CanGoBack() returned true. @param backend which web engine to use as backend for wxWebView
*/ @return the created wxWebView, or NULL if the requested backend
virtual void GoBack() = 0; is not available
*/
/** static wxWebView* New(wxWindow* parent,
Navigate forwardin the history of visited pages. wxWindowID id,
Only valid if CanGoForward() returned true. const wxString& url = wxWebViewDefaultURLStr,
*/ const wxPoint& pos = wxDefaultPosition,
virtual void GoForward() = 0; const wxSize& size = wxDefaultSize,
wxWebViewBackend backend = wxWEB_VIEW_BACKEND_DEFAULT,
/** long style = 0,
Clear the history, this will also remove the visible page. const wxString& name = wxWebViewNameStr);
*/
virtual void ClearHistory() = 0; /**
Get the title of the current web page, or its URL/path if title is not
/** available.
Enable or disable the history. This will also clear the history. */
*/ virtual wxString GetCurrentTitle() = 0;
virtual void EnableHistory(bool enable = true) = 0;
/**
/** Get the URL of the currently displayed document.
Returns a list of items in the back history. The first item in the */
vector is the first page that was loaded by the control. virtual wxString GetCurrentURL() = 0;
*/
virtual wxVector<wxSharedPtr<wxWebHistoryItem> > GetBackwardHistory() = 0; /**
Get the HTML source code of the currently displayed document.
/** @return The HTML source code, or an empty string if no page is currently
Returns a list of items in the forward history. The first item in the shown.
vector is the next item in the history with respect to the curently */
loaded page. virtual wxString GetPageSource() = 0;
*/
virtual wxVector<wxSharedPtr<wxWebHistoryItem> > GetForwardHistory() = 0; /**
Returns whether the web control is currently busy (e.g. loading a page).
/** */
Loads a history item. virtual bool IsBusy() = 0;
*/
virtual void LoadHistoryItem(wxSharedPtr<wxWebHistoryItem> item) = 0; /**
Load a web page from a URL
/** @param url The URL of the page to be loaded.
Load a HTMl document (web page) from a URL @note Web engines generally report errors asynchronously, so if you wish
@param url the URL where the HTML document to display can be found to know whether loading the URL was successful, register to receive
@note web engines generally report errors asynchronously, so if you wish navigation error events.
to know whether loading the URL was successful, register to receive */
navigation error events virtual void LoadUrl(const wxString& url) = 0;
*/
virtual void LoadUrl(const wxString& url) = 0; /**
Opens a print dialog so that the user may print the currently
/** displayed page.
Stop the current page loading process, if any. */
May trigger an error event of type @c wxWEB_NAV_ERR_USER_CANCELLED. virtual void Print() = 0;
TODO: make @c wxWEB_NAV_ERR_USER_CANCELLED errors uniform across ports.
*/ /**
virtual void Stop() = 0; Reload the currently displayed URL.
@param flags A bit array that may optionally contain reload options.
/** */
Reload the currently displayed URL. virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT) = 0;
@param flags A bit array that may optionnally contain reload options
*/ /**
virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT) = 0; Set the displayed page source to the contents of the given string.
@param html The string that contains the HTML data to display.
@param baseUrl URL assigned to the HTML data, to be used to resolve
/** relative paths, for instance.
Get the URL of the currently displayed document */
*/ virtual void SetPage(const wxString& html, const wxString& baseUrl) = 0;
virtual wxString GetCurrentURL() = 0;
/**
/** Set the displayed page source to the contents of the given stream.
Get the title of the current web page, or its URL/path if title is not @param html The stream to read HTML data from.
available @param baseUrl URL assigned to the HTML data, to be used to resolve
*/ relative paths, for instance.
virtual wxString GetCurrentTitle() = 0; */
virtual void SetPage(wxInputStream& html, wxString baseUrl)
/** {
Get the HTML source code of the currently displayed document wxStringOutputStream stream;
@return the HTML source code, or an empty string if no page is currently stream.Write(html);
shown SetPage(stream.GetString(), baseUrl);
*/ }
virtual wxString GetPageSource() = 0;
/**
/** Stop the current page loading process, if any.
Get the zoom factor of the page May trigger an error event of type @c wxWEB_NAV_ERR_USER_CANCELLED.
@return How much the HTML document is zoomed (scaleed) TODO: make @c wxWEB_NAV_ERR_USER_CANCELLED errors uniform across ports.
*/ */
virtual wxWebViewZoom GetZoom() = 0; virtual void Stop() = 0;
/** /**
Set the zoom factor of the page @name Clipboard
@param zoom How much to zoom (scale) the HTML document */
*/
virtual void SetZoom(wxWebViewZoom zoom) = 0; /**
Returns @true if the current selection can be copied.
/** */
Set how to interpret the zoom factor virtual bool CanCopy() = 0;
@param zoomType how the zoom factor should be interpreted by the
HTML engine /**
@note invoke canSetZoomType() first, some HTML renderers may not Returns @true if the current selection can be cut.
support all zoom types */
*/ virtual bool CanCut() = 0;
virtual void SetZoomType(wxWebViewZoomType zoomType) = 0;
/**
/** Returns @true if data can be pasted.
Get how the zoom factor is currently interpreted */
@return how the zoom factor is currently interpreted by the HTML engine virtual bool CanPaste() = 0;
*/
virtual wxWebViewZoomType GetZoomType() const = 0; /**
Copies the current selection.
/** */
Retrieve whether the current HTML engine supports a type of zoom virtual void Copy() = 0;
@param type the type of zoom to test
@return whether this type of zoom is supported by this HTML engine /**
(and thus can be set through setZoomType()) Cuts the current selection.
*/ */
virtual bool CanSetZoomType(wxWebViewZoomType type) const = 0; virtual void Cut() = 0;
/** /**
Set the displayed page source to the contents of the given string Pastes the current data.
@param html the string that contains the HTML data to display */
@param baseUrl URL assigned to the HTML data, to be used to resolve virtual void Paste() = 0;
relative paths, for instance
*/ /**
virtual void SetPage(const wxString& html, const wxString& baseUrl) = 0; @name History
*/
/**
Set the displayed page source to the contents of the given stream /**
@param html the stream to read HTML data from Returns @true if it is possible to navigate backward in the history of
@param baseUrl URL assigned to the HTML data, to be used to resolve visited pages.
relative paths, for instance */
*/ virtual bool CanGoBack() = 0;
virtual void SetPage(wxInputStream& html, wxString baseUrl)
{ /**
wxStringOutputStream stream; Returns @true if it is possible to navigate forward in the history of
stream.Write(html); visited pages.
SetPage(stream.GetString(), baseUrl); */
} virtual bool CanGoForward() = 0;
/** /**
Opens a print dialog so that the user may print the currently Clear the history, this will also remove the visible page.
displayed page. */
*/ virtual void ClearHistory() = 0;
virtual void Print() = 0;
/**
/** Enable or disable the history. This will also clear the history.
Returns whether the web control is currently busy (e.g. loading a page) */
*/ virtual void EnableHistory(bool enable = true) = 0;
virtual bool IsBusy() = 0;
}; /**
Returns a list of items in the back history. The first item in the
vector is the first page that was loaded by the control.
*/
virtual wxVector<wxSharedPtr<wxWebHistoryItem> > GetBackwardHistory() = 0;
/**
@class wxWebNavigationEvent /**
Returns a list of items in the forward history. The first item in the
A navigation event holds information about events associated with vector is the next item in the history with respect to the curently
wxWebView objects. loaded page.
*/
@beginEventEmissionTable{wxWebNavigationEvent} virtual wxVector<wxSharedPtr<wxWebHistoryItem> > GetForwardHistory() = 0;
@event{EVT_WEB_VIEW_NAVIGATING(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATING event, generated before trying /**
to get a resource. This event may be vetoed to prevent navigating to this Navigate back in the history of visited pages.
resource. Note that if the displayed HTML document has several frames, one Only valid if CanGoBack() returns true.
such event will be generated per frame. */
@event{EVT_WEB_VIEW_NAVIGATED(id, func)} virtual void GoBack() = 0;
Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATED event generated after it was
confirmed that a resource would be requested. This event may not be vetoed. /**
Note that if the displayed HTML document has several frames, one such event Navigate forward in the history of visited pages.
will be generated per frame. Only valid if CanGoForward() returns true.
@event{EVT_WEB_VIEW_LOADED(id, func)} */
Process a @c wxEVT_COMMAND_WEB_VIEW_LOADED event generated when the document virtual void GoForward() = 0;
is fully loaded and displayed.
@event{EVT_WEB_VIEW_ERRROR(id, func)} /**
Process a @c wxEVT_COMMAND_WEB_VIEW_ERROR event generated when a navigation Loads a history item.
error occurs. */
The integer associated with this event will be a wxWebNavigationError item. virtual void LoadHistoryItem(wxSharedPtr<wxWebHistoryItem> item) = 0;
The string associated with this event may contain a backend-specific more
precise error message/code. /**
@event{EVT_WEB_VIEW_NEWWINDOW(id, func)} @name Undo / Redo
Process a @c wxEVT_COMMAND_WEB_VIEW_NEWWINDOW event, generated when a new */
window is created. This event may be vetoed to prevent a new window showing,
for example if you want to open the url in the existing window or a new tab. /**
@endEventTable Returns @true if there is an action to redo.
*/
@library{wxweb} virtual bool CanRedo() = 0;
@category{events}
/**
@see wxWebView Returns @true if there is an action to undo.
*/ */
class wxWebNavigationEvent : public wxCommandEvent virtual bool CanUndo() = 0;
{
public: /**
wxWebNavigationEvent(); Redos the last action.
wxWebNavigationEvent(wxEventType type, int id, const wxString href, */
const wxString target, bool canVeto); virtual void Redo() = 0;
/**
Get the URL being visited /**
*/ Undos the last action.
const wxString& GetHref() const { return m_href; } */
virtual void Undo() = 0;
/**
Get the target (frame or window) in which the URL that caused this event /**
is viewed, or an empty string if not available. @name Zoom
*/ */
const wxString& GetTarget() const;
/**
virtual wxEvent* Clone() const; Retrieve whether the current HTML engine supports a zoom type.
@param type The zoom type to test.
/** @return Whether this type of zoom is supported by this HTML engine
Get whether this event may be vetoed (stopped/prevented). Only (and thus can be set through SetZoomType()).
meaningful for events fired before navigation takes place or new */
window events. virtual bool CanSetZoomType(wxWebViewZoomType type) const = 0;
*/
bool CanVeto() const; /**
Get the zoom factor of the page.
/** @return The current level of zoom.
Whether this event was vetoed (stopped/prevented). Only meaningful for */
events fired before navigation takes place or new window events. virtual wxWebViewZoom GetZoom() = 0;
*/
bool IsVetoed() const; /**
Get how the zoom factor is currently interpreted.
/** @return How the zoom factor is currently interpreted by the HTML engine.
Veto (prevent/stop) this event. Only meaningful for events fired */
before navigation takes place or new window events. Only valid virtual wxWebViewZoomType GetZoomType() const = 0;
if CanVeto() returned true.
*/ /**
void Veto(); Set the zoom factor of the page.
@param zoom How much to zoom (scale) the HTML document.
*/
virtual void SetZoom(wxWebViewZoom zoom) = 0;
/**
Set how to interpret the zoom factor.
@param zoomType How the zoom factor should be interpreted by the
HTML engine.
@note invoke CanSetZoomType() first, some HTML renderers may not
support all zoom types.
*/
virtual void SetZoomType(wxWebViewZoomType zoomType) = 0;
};
/**
@class wxWebNavigationEvent
A navigation event holds information about events associated with
wxWebView objects.
@beginEventEmissionTable{wxWebNavigationEvent}
@event{EVT_WEB_VIEW_NAVIGATING(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATING event, generated before trying
to get a resource. This event may be vetoed to prevent navigating to this
resource. Note that if the displayed HTML document has several frames, one
such event will be generated per frame.
@event{EVT_WEB_VIEW_NAVIGATED(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_NAVIGATED event generated after it was
confirmed that a resource would be requested. This event may not be vetoed.
Note that if the displayed HTML document has several frames, one such event
will be generated per frame.
@event{EVT_WEB_VIEW_LOADED(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_LOADED event generated when the document
is fully loaded and displayed.
@event{EVT_WEB_VIEW_ERRROR(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_ERROR event generated when a navigation
error occurs.
The integer associated with this event will be a wxWebNavigationError item.
The string associated with this event may contain a backend-specific more
precise error message/code.
@event{EVT_WEB_VIEW_NEWWINDOW(id, func)}
Process a @c wxEVT_COMMAND_WEB_VIEW_NEWWINDOW event, generated when a new
window is created. This event may be vetoed to prevent a new window showing,
for example if you want to open the url in the existing window or a new tab.
@endEventTable
@library{wxweb}
@category{events}
@see wxWebView
*/
class wxWebNavigationEvent : public wxCommandEvent
{
public:
wxWebNavigationEvent();
wxWebNavigationEvent(wxEventType type, int id, const wxString href,
const wxString target, bool canVeto);
/**
Get the URL being visited
*/
const wxString& GetHref() const { return m_href; }
/**
Get the target (frame or window) in which the URL that caused this event
is viewed, or an empty string if not available.
*/
const wxString& GetTarget() const;
virtual wxEvent* Clone() const;
/**
Get whether this event may be vetoed (stopped/prevented). Only
meaningful for events fired before navigation takes place or new
window events.
*/
bool CanVeto() const;
/**
Whether this event was vetoed (stopped/prevented). Only meaningful for
events fired before navigation takes place or new window events.
*/
bool IsVetoed() const;
/**
Veto (prevent/stop) this event. Only meaningful for events fired
before navigation takes place or new window events. Only valid
if CanVeto() returned true.
*/
void Veto();
}; };