00001
00002
00003
00004
00005
00006
00007
00008 #ifndef __WEBVIEWLISTENER_H__
00009 #define __WEBVIEWLISTENER_H__
00010
00011 #include <string>
00012 #include "JSValue.h"
00013
00014 #if defined(_WIN32)
00015 #include <windows.h>
00016 #endif
00017
00018 namespace Awesomium {
00019
00020 class WebView;
00021
00027 class _OSMExport WebViewListener
00028 {
00029 public:
00039 virtual void onBeginNavigation(Awesomium::WebView* caller, const std::string& url, const std::wstring& frameName) = 0;
00040
00054 virtual void onBeginLoading(Awesomium::WebView* caller, const std::string& url, const std::wstring& frameName, int statusCode, const std::wstring& mimeType) = 0;
00055
00061 virtual void onFinishLoading(Awesomium::WebView* caller) = 0;
00062
00074 virtual void onCallback(Awesomium::WebView* caller, const std::wstring& objectName, const std::wstring& callbackName, const Awesomium::JSArguments& args) = 0;
00075
00085 virtual void onReceiveTitle(Awesomium::WebView* caller, const std::wstring& title, const std::wstring& frameName) = 0;
00086
00094 virtual void onChangeTooltip(Awesomium::WebView* caller, const std::wstring& tooltip) = 0;
00095
00096 #if defined(_WIN32)
00097
00104 virtual void onChangeCursor(Awesomium::WebView* caller, const HCURSOR& cursor) = 0;
00105 #endif
00106
00114 virtual void onChangeKeyboardFocus(Awesomium::WebView* caller, bool isFocused) = 0;
00115
00124 virtual void onChangeTargetURL(Awesomium::WebView* caller, const std::string& url) = 0;
00125
00142 virtual void onOpenExternalLink(Awesomium::WebView* caller, const std::string& url, const std::wstring& source) = 0;
00143 };
00144
00145 }
00146
00147 #endif