webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
WebHistoryItem.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2006-2008, 2015 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  * notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  * notice, this list of conditions and the following disclaimer in the
11  * documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
14  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24  */
25 
26 #ifndef WebHistoryItem_H
27 #define WebHistoryItem_H
28 
29 #include "WebKit.h"
30 
31 #include <CoreFoundation/CoreFoundation.h>
32 #include <wtf/PassRefPtr.h>
33 #include <wtf/RefPtr.h>
34 #include <wtf/text/WTFString.h>
35 
36 namespace WebCore {
37  class HistoryItem;
38 }
39 
40 //-----------------------------------------------------------------------------
41 
43 {
44 public:
45  static WebHistoryItem* createInstance();
46  static WebHistoryItem* createInstance(PassRefPtr<WebCore::HistoryItem>);
47 protected:
48  WebHistoryItem(PassRefPtr<WebCore::HistoryItem>);
49  ~WebHistoryItem();
50 
51 public:
52  // IUnknown
53  virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
54  virtual ULONG STDMETHODCALLTYPE AddRef();
55  virtual ULONG STDMETHODCALLTYPE Release();
56 
57  // IWebHistoryItem
58  virtual HRESULT STDMETHODCALLTYPE initWithURLString(_In_ BSTR urlString, _In_ BSTR title, DATE lastVisited);
59  virtual HRESULT STDMETHODCALLTYPE originalURLString(__deref_opt_out BSTR*);
60  virtual HRESULT STDMETHODCALLTYPE URLString(__deref_opt_out BSTR*);
61  virtual HRESULT STDMETHODCALLTYPE title(__deref_opt_out BSTR*);
62  virtual HRESULT STDMETHODCALLTYPE lastVisitedTimeInterval(_Out_ DATE*);
63  virtual HRESULT STDMETHODCALLTYPE setAlternateTitle(_In_ BSTR);
64  virtual HRESULT STDMETHODCALLTYPE alternateTitle(__deref_opt_out BSTR*);
65  virtual HRESULT STDMETHODCALLTYPE icon(__deref_opt_out HBITMAP*);
66 
67  // IWebHistoryItemPrivate
68  virtual HRESULT STDMETHODCALLTYPE initFromDictionaryRepresentation(_In_opt_ void* dictionary);
69  virtual HRESULT STDMETHODCALLTYPE dictionaryRepresentation(__deref_out_opt void** dictionary);
70  virtual HRESULT STDMETHODCALLTYPE visitCount(_Out_ int*);
71  virtual HRESULT STDMETHODCALLTYPE setVisitCount(int);
72  virtual HRESULT STDMETHODCALLTYPE hasURLString(_Out_ BOOL*);
73  virtual HRESULT STDMETHODCALLTYPE mergeAutoCompleteHints(_In_opt_ IWebHistoryItem*);
74  virtual HRESULT STDMETHODCALLTYPE setLastVisitedTimeInterval(DATE time);
75  virtual HRESULT STDMETHODCALLTYPE setTitle(_In_ BSTR);
76  virtual HRESULT STDMETHODCALLTYPE RSSFeedReferrer(__deref_out_opt BSTR* url);
77  virtual HRESULT STDMETHODCALLTYPE setRSSFeedReferrer(_In_ BSTR url);
78  virtual HRESULT STDMETHODCALLTYPE hasPageCache(_Out_ BOOL*);
79  virtual HRESULT STDMETHODCALLTYPE setHasPageCache(BOOL);
80  virtual HRESULT STDMETHODCALLTYPE target(__deref_out_opt BSTR*);
81  virtual HRESULT STDMETHODCALLTYPE isTargetItem(_Out_ BOOL*);
82  virtual HRESULT STDMETHODCALLTYPE children(unsigned* childCount, SAFEARRAY** children);
83  virtual HRESULT STDMETHODCALLTYPE lastVisitWasFailure(_Out_ BOOL*);
84  virtual HRESULT STDMETHODCALLTYPE setLastVisitWasFailure(BOOL);
85  virtual HRESULT STDMETHODCALLTYPE lastVisitWasHTTPNonGet(_Out_ BOOL*);
86  virtual HRESULT STDMETHODCALLTYPE setLastVisitWasHTTPNonGet(BOOL);
87  virtual HRESULT STDMETHODCALLTYPE redirectURLs(_COM_Outptr_opt_ IEnumVARIANT**);
88  virtual HRESULT STDMETHODCALLTYPE visitedWithTitle(_In_ BSTR title, BOOL increaseVisitCount);
89  virtual HRESULT STDMETHODCALLTYPE getDailyVisitCounts(_Out_ int* number, __deref_out_opt int** counts);
90  virtual HRESULT STDMETHODCALLTYPE getWeeklyVisitCounts(_Out_ int* number, __deref_out_opt int** counts);
91  virtual HRESULT STDMETHODCALLTYPE recordInitialVisit();
92 
93  // WebHistoryItem
94  WebCore::HistoryItem* historyItem() const;
95 
96 protected:
97  ULONG m_refCount { 0 };
98 
99  RefPtr<WebCore::HistoryItem> m_historyItem;
101 };
102 
103 #endif
Definition: IWebHistoryItem.idl:45
DOMString icon
Definition: Notification.idl:67
EGLContext EGLenum target
Definition: eglext.h:192
unsigned long ULONG
Definition: MD5.h:32
RefPtr< WebCore::HistoryItem > m_historyItem
Definition: WebHistoryItem.h:99
Definition: IWebHistoryItemPrivate.idl:40
HRESULT
Definition: ScrollbarThemeWin.cpp:74
Received complete frame timestamp frame type frame size at time
Definition: plotReceiveTrace.m:7
Definition: WTFString.h:78
WTF::String m_alternateTitle
Definition: WebHistoryItem.h:100
title('Estimate ms')
sender AddRef()
wchar_t * BSTR
Definition: BString.h:36
map< string, Node * > children
Definition: field_mask_util.cc:217
Definition: HistoryItem.h:60
const AtomicString & number()
Definition: InputTypeNames.cpp:100
int Release(RepeatedCompositeContainer *self)
Definition: repeated_composite_container.cc:458
Definition: WebHistoryItem.h:53
url
Definition: setup.py:223
HANDLE hTheme BOOL
Definition: ScrollbarThemeWin.cpp:76
This file is generated by create-http-header-name-table, do not edit.
Definition: CharsetData.cpp:6
Definition: TypeConversions.idl:26