📄 webview.h
字号:
/* * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */#ifndef WebView_H#define WebView_H#include "COMPtr.h"#include "WebKit.h"#include "WebFrame.h"#include "WebPreferences.h"#include <WebCore/IntRect.h>#include <WebCore/Timer.h>#include <WebCore/WindowMessageListener.h>#include <wtf/HashSet.h>#include <wtf/OwnPtr.h>class WebFrame;class WebBackForwardList;class WebInspector;class WebInspectorClient;WebView* kit(WebCore::Page*);WebCore::Page* core(IWebView*);interface IDropTargetHelper;class WebView : public IWebView , public IWebViewPrivate , public IWebIBActions , public IWebViewCSS , public IWebViewEditing , public IWebViewUndoableEditing , public IWebViewEditingActions , public IWebNotificationObserver , public IDropTarget , WebCore::WindowMessageListener{public: static WebView* createInstance();protected: WebView(); ~WebView();public: // IUnknown virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject); virtual ULONG STDMETHODCALLTYPE AddRef(void); virtual ULONG STDMETHODCALLTYPE Release(void); // IWebView virtual HRESULT STDMETHODCALLTYPE canShowMIMEType( /* [in] */ BSTR mimeType, /* [retval][out] */ BOOL *canShow); virtual HRESULT STDMETHODCALLTYPE canShowMIMETypeAsHTML( /* [in] */ BSTR mimeType, /* [retval][out] */ BOOL *canShow); virtual HRESULT STDMETHODCALLTYPE MIMETypesShownAsHTML( /* [retval][out] */ IEnumVARIANT **enumVariant); virtual HRESULT STDMETHODCALLTYPE setMIMETypesShownAsHTML( /* [size_is][in] */ BSTR *mimeTypes, /* [in] */ int cMimeTypes); virtual HRESULT STDMETHODCALLTYPE URLFromPasteboard( /* [in] */ IDataObject *pasteboard, /* [retval][out] */ BSTR *url); virtual HRESULT STDMETHODCALLTYPE URLTitleFromPasteboard( /* [in] */ IDataObject *pasteboard, /* [retval][out] */ BSTR *urlTitle); virtual HRESULT STDMETHODCALLTYPE initWithFrame( /* [in] */ RECT frame, /* [in] */ BSTR frameName, /* [in] */ BSTR groupName); virtual HRESULT STDMETHODCALLTYPE setUIDelegate( /* [in] */ IWebUIDelegate *d); virtual HRESULT STDMETHODCALLTYPE uiDelegate( /* [out][retval] */ IWebUIDelegate **d); virtual HRESULT STDMETHODCALLTYPE setResourceLoadDelegate( /* [in] */ IWebResourceLoadDelegate *d); virtual HRESULT STDMETHODCALLTYPE resourceLoadDelegate( /* [out][retval] */ IWebResourceLoadDelegate **d); virtual HRESULT STDMETHODCALLTYPE setDownloadDelegate( /* [in] */ IWebDownloadDelegate *d); virtual HRESULT STDMETHODCALLTYPE downloadDelegate( /* [out][retval] */ IWebDownloadDelegate **d); virtual HRESULT STDMETHODCALLTYPE setFrameLoadDelegate( /* [in] */ IWebFrameLoadDelegate *d); virtual HRESULT STDMETHODCALLTYPE frameLoadDelegate( /* [out][retval] */ IWebFrameLoadDelegate **d); virtual HRESULT STDMETHODCALLTYPE setPolicyDelegate( /* [in] */ IWebPolicyDelegate *d); virtual HRESULT STDMETHODCALLTYPE policyDelegate( /* [out][retval] */ IWebPolicyDelegate **d); virtual HRESULT STDMETHODCALLTYPE mainFrame( /* [out][retval] */ IWebFrame **frame); virtual HRESULT STDMETHODCALLTYPE focusedFrame( /* [out][retval] */ IWebFrame **frame); virtual HRESULT STDMETHODCALLTYPE backForwardList( /* [out][retval] */ IWebBackForwardList **list); virtual HRESULT STDMETHODCALLTYPE setMaintainsBackForwardList( /* [in] */ BOOL flag); virtual HRESULT STDMETHODCALLTYPE goBack( /* [retval][out] */ BOOL *succeeded); virtual HRESULT STDMETHODCALLTYPE goForward( /* [retval][out] */ BOOL *succeeded); virtual HRESULT STDMETHODCALLTYPE goToBackForwardItem( /* [in] */ IWebHistoryItem *item, /* [retval][out] */ BOOL *succeeded); virtual HRESULT STDMETHODCALLTYPE setTextSizeMultiplier( /* [in] */ float multiplier); virtual HRESULT STDMETHODCALLTYPE textSizeMultiplier( /* [retval][out] */ float *multiplier); virtual HRESULT STDMETHODCALLTYPE setApplicationNameForUserAgent( /* [in] */ BSTR applicationName); virtual HRESULT STDMETHODCALLTYPE applicationNameForUserAgent( /* [retval][out] */ BSTR *applicationName); virtual HRESULT STDMETHODCALLTYPE setCustomUserAgent( /* [in] */ BSTR userAgentString); virtual HRESULT STDMETHODCALLTYPE customUserAgent( /* [retval][out] */ BSTR *userAgentString); virtual HRESULT STDMETHODCALLTYPE userAgentForURL( /* [in] */ BSTR url, /* [retval][out] */ BSTR *userAgent); virtual HRESULT STDMETHODCALLTYPE supportsTextEncoding( /* [retval][out] */ BOOL *supports); virtual HRESULT STDMETHODCALLTYPE setCustomTextEncodingName( /* [in] */ BSTR encodingName); virtual HRESULT STDMETHODCALLTYPE customTextEncodingName( /* [retval][out] */ BSTR *encodingName); virtual HRESULT STDMETHODCALLTYPE setMediaStyle( /* [in] */ BSTR media); virtual HRESULT STDMETHODCALLTYPE mediaStyle( /* [retval][out] */ BSTR *media); virtual HRESULT STDMETHODCALLTYPE stringByEvaluatingJavaScriptFromString( /* [in] */ BSTR script, /* [retval][out] */ BSTR *result); virtual HRESULT STDMETHODCALLTYPE windowScriptObject( /* [retval][out] */ IWebScriptObject **webScriptObject); virtual HRESULT STDMETHODCALLTYPE setPreferences( /* [in] */ IWebPreferences *prefs); virtual HRESULT STDMETHODCALLTYPE preferences( /* [retval][out] */ IWebPreferences **prefs); virtual HRESULT STDMETHODCALLTYPE setPreferencesIdentifier( /* [in] */ BSTR anIdentifier); virtual HRESULT STDMETHODCALLTYPE preferencesIdentifier( /* [retval][out] */ BSTR *anIdentifier); virtual HRESULT STDMETHODCALLTYPE setHostWindow( /* [in] */ OLE_HANDLE window); virtual HRESULT STDMETHODCALLTYPE hostWindow( /* [retval][out] */ OLE_HANDLE *window); virtual HRESULT STDMETHODCALLTYPE searchFor( /* [in] */ BSTR str, /* [in] */ BOOL forward, /* [in] */ BOOL caseFlag, /* [in] */ BOOL wrapFlag, /* [retval][out] */ BOOL *found); virtual HRESULT STDMETHODCALLTYPE registerViewClass( /* [in] */ IWebDocumentView *view, /* [in] */ IWebDocumentRepresentation *representation, /* [in] */ BSTR forMIMEType); virtual HRESULT STDMETHODCALLTYPE setGroupName( /* [in] */ BSTR groupName); virtual HRESULT STDMETHODCALLTYPE groupName( /* [retval][out] */ BSTR *groupName); virtual HRESULT STDMETHODCALLTYPE estimatedProgress( /* [retval][out] */ double *estimatedProgress); virtual HRESULT STDMETHODCALLTYPE isLoading( /* [retval][out] */ BOOL *isLoading); virtual HRESULT STDMETHODCALLTYPE elementAtPoint( /* [in] */ LPPOINT point, /* [retval][out] */ IPropertyBag **elementDictionary); virtual HRESULT STDMETHODCALLTYPE pasteboardTypesForSelection( /* [retval][out] */ IEnumVARIANT **enumVariant); virtual HRESULT STDMETHODCALLTYPE writeSelectionWithPasteboardTypes( /* [size_is][in] */ BSTR *types, /* [in] */ int cTypes, /* [in] */ IDataObject *pasteboard); virtual HRESULT STDMETHODCALLTYPE pasteboardTypesForElement( /* [in] */ IPropertyBag *elementDictionary, /* [retval][out] */ IEnumVARIANT **enumVariant); virtual HRESULT STDMETHODCALLTYPE writeElement( /* [in] */ IPropertyBag *elementDictionary, /* [size_is][in] */ BSTR *withPasteboardTypes, /* [in] */ int cWithPasteboardTypes, /* [in] */ IDataObject *pasteboard); virtual HRESULT STDMETHODCALLTYPE selectedText( /* [out, retval] */ BSTR* str); virtual HRESULT STDMETHODCALLTYPE centerSelectionInVisibleArea( /* [in] */ IUnknown* sender); virtual HRESULT STDMETHODCALLTYPE moveDragCaretToPoint( /* [in] */ LPPOINT point); virtual HRESULT STDMETHODCALLTYPE removeDragCaret( void); virtual HRESULT STDMETHODCALLTYPE setDrawsBackground( /* [in] */ BOOL drawsBackground); virtual HRESULT STDMETHODCALLTYPE drawsBackground( /* [retval][out] */ BOOL *drawsBackground); virtual HRESULT STDMETHODCALLTYPE setMainFrameURL( /* [in] */ BSTR urlString); virtual HRESULT STDMETHODCALLTYPE mainFrameURL( /* [retval][out] */ BSTR *urlString); virtual HRESULT STDMETHODCALLTYPE mainFrameDocument( /* [retval][out] */ IDOMDocument **document); virtual HRESULT STDMETHODCALLTYPE mainFrameTitle( /* [retval][out] */ BSTR *title); virtual HRESULT STDMETHODCALLTYPE mainFrameIcon( /* [retval][out] */ OLE_HANDLE *hBitmap); virtual HRESULT STDMETHODCALLTYPE registerURLSchemeAsLocal( /* [in] */ BSTR scheme); // IWebIBActions virtual HRESULT STDMETHODCALLTYPE takeStringURLFrom( /* [in] */ IUnknown *sender); virtual HRESULT STDMETHODCALLTYPE stopLoading( /* [in] */ IUnknown *sender);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -