Home | History | Annotate | Download | only in chrome_frame
      1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
      2 // 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 
     12 #include "chrome_frame/chrome_tab.h"
     13 #include "chrome_frame/resource.h"
     14 #include "grit/chrome_frame_resources.h"
     15 
     16 interface __declspec(uuid("3050F6DC-98B5-11CF-BB82-00AA00BDCE0B"))
     17 IHTMLPrivateWindow : 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 
     27 template <typename T>
     28 class 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 
     67