2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FWebCtrlPageNavigationList.h
20 * @brief This is the header file for the %PageNavigationList class.
22 * This header file contains the declarations of the %PageNavigationList class.
24 #ifndef _FWEB_CTRL_PAGE_NAVIGATION_LIST_H_
25 #define _FWEB_CTRL_PAGE_NAVIGATION_LIST_H_
27 #include <FBaseObject.h>
28 #include <FBaseColIList.h>
31 namespace Tizen { namespace Web { namespace Controls
33 class _PageNavigationListImpl;
34 }}} // Tizen::Web::Controls
36 namespace Tizen { namespace Web
41 namespace Tizen { namespace Web { namespace Controls
45 * @class PageNavigationList
46 * @brief This class contains the back and forward list for a %Web control.
50 * The %PageNavigationList class provides the back and forward list for a %Web control.
52 * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/web/controls_namespace.htm">Web Controls Guide</a>.
54 class _OSP_EXPORT_ PageNavigationList
55 : public Tizen::Base::Object
59 * This destructor overrides Tizen::Base::Object::~Object().
63 virtual ~PageNavigationList(void);
66 * Gets the current history item.
70 * @return The current history item, @n
71 * else @c null if no history item exists
73 const Tizen::Web::HistoryItem* GetCurrentItem(void) const;
76 * Gets the index of the current history item.
80 * @return The index of the currently viewed page in the web page navigation list, @n
81 * else @c -1 if no history item exists
83 int GetCurrentIndex(void) const;
86 * Gets the history item pointed to by the specified @c index.
90 * @return A pointer to the history item at the specified @c index
91 * @param[in] index The index of an element @n
92 * The value of the index must be greater than or equal to @c 0.
93 * @exception E_OUT_OF_RANGE The specified @c index is out of range.
94 * @remarks The specific error code can be accessed using the GetLastResult() method.
96 const Tizen::Web::HistoryItem* GetItemAt(int index) const;
99 * Gets the total number of the history items.
103 * @return The total number of items
105 int GetItemCount(void) const;
109 // This constructor is intentionally declared as private so that only the platform can create an instance.
111 // @remarks This constructor is hidden.
113 PageNavigationList(void);
116 // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
118 // @param[in] item The instance of the %PageNavigationList class to copy from
119 // @remarks This constructor is hidden.
121 PageNavigationList(const PageNavigationList& item);
124 // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
126 // @param[in] item The instance of the %PageNavigationList class to assign from
127 // @remarks This operator is hidden.
129 PageNavigationList& operator =(const PageNavigationList& item);
132 _PageNavigationListImpl* __pPageNavigationListImpl;
134 friend class _PageNavigationListImpl;
136 friend class _WebImpl;
137 }; // PageNavigationList
139 }}} // Tizen::Web::Controls
140 #endif // _FWEB_CTRL_PAGE_NAVIGATION_LIST_H_