blob: 18414b8aaabda65c05baa7e44da9395072f95036 [file] [log] [blame]
[email protected]8ca280e2011-10-19 15:37:331// Copyright (c) 2011 The Chromium Authors. All rights reserved.
[email protected]a1800e82009-11-19 00:53:232// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_FRAME_HTML_PRIVATE_WINDOW_IMPL_H_
6#define CHROME_FRAME_HTML_PRIVATE_WINDOW_IMPL_H_
7
8#include <atlbase.h>
9#include <atlcom.h>
10#include <mshtml.h>
11
[email protected]8ca280e2011-10-19 15:37:3312#include "chrome_frame/chrome_tab.h"
[email protected]a1800e82009-11-19 00:53:2313#include "chrome_frame/resource.h"
14#include "grit/chrome_frame_resources.h"
15
16interface __declspec(uuid("3050F6DC-98B5-11CF-BB82-00AA00BDCE0B"))
17IHTMLPrivateWindow : public IUnknown {
18 STDMETHOD(SuperNavigate)(BSTR , BSTR, BSTR, BSTR , VARIANT*,
19 VARIANT*, ULONG) = 0;
20 STDMETHOD(GetPendingUrl)(BSTR*) = 0;
21 STDMETHOD(SetPICSTarget)(IOleCommandTarget*) = 0;
22 STDMETHOD(PICSComplete)(int) = 0;
23 STDMETHOD(FindWindowByName)(PCWSTR, IHTMLWindow2**) = 0;
24 STDMETHOD(GetAddressBarUrl)(BSTR* url) = 0;
25};
26
27template <typename T>
28class ATL_NO_VTABLE HTMLPrivateWindowImpl : public T {
29 public:
30 HTMLPrivateWindowImpl() {}
31
32 // IHTMLPrivateWindow
33 STDMETHOD(SuperNavigate)(BSTR , BSTR, BSTR, BSTR , VARIANT*,
34 VARIANT*, ULONG) {
35 DLOG(INFO) << __FUNCTION__;
36 return E_NOTIMPL;
37 }
38
39 STDMETHOD(GetPendingUrl)(BSTR*) {
40 DLOG(INFO) << __FUNCTION__;
41 return E_NOTIMPL;
42 }
43
44 STDMETHOD(SetPICSTarget)(IOleCommandTarget*) {
45 DLOG(INFO) << __FUNCTION__;
46 return E_NOTIMPL;
47 }
48
49 STDMETHOD(PICSComplete)(int) {
50 DLOG(INFO) << __FUNCTION__;
51 return E_NOTIMPL;
52 }
53
54 STDMETHOD(FindWindowByName)(LPCWSTR, IHTMLWindow2**) {
55 DLOG(INFO) << __FUNCTION__;
56 return E_NOTIMPL;
57 }
58
59 STDMETHOD(GetAddressBarUrl)(BSTR* url) {
60 DLOG(INFO) << __FUNCTION__;
61 return E_NOTIMPL;
62 }
63};
64
65#endif // CHROME_FRAME_HTML_PRIVATE_WINDOW_IMPL_H_
66