[M67 Dev][EWK] Classify EWK APIs by public, internal, or product
[platform/framework/web/chromium-efl.git] / tizen_src / ewk / efl_integration / public / ewk_history_internal.h
1 // Copyright 2012 Samsung Electronics. 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 /**
6  * @file    ewk_history_internal.h
7  * @brief   Describes the history(back & forward list) API of visited page.
8  */
9
10 #ifndef ewk_history_internal_h
11 #define ewk_history_internal_h
12
13 #include <Eina.h>
14 #include <tizen.h>
15
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19
20 /** Creates a type name for _Ewk_History */
21 typedef struct _Ewk_History Ewk_History;
22
23 /** Creates a type name for _Ewk_History_Item */
24 typedef struct _Ewk_History_Item Ewk_History_Item;
25
26 /**
27  * Get the whole length of back list.
28  *
29  * @param history to get the whole back list
30  *
31  * @return number of elements in whole list.
32  */
33 EXPORT_API int ewk_history_back_list_length_get(Ewk_History* history);
34
35 /**
36  * Get the whole length of forward list.
37  *
38  * @param history to get the whole forward list
39  *
40  * @return number of elements in whole list.
41  */
42 EXPORT_API int ewk_history_forward_list_length_get(Ewk_History* history);
43
44 /**
45  * Get the item at a given index relative to the current item.
46  *
47  * @param history which history instance to query.
48  * @param index position of item to get.
49  *
50  * @note The back list item in case of index < 0, the current item in case of index == 0, the forward list item in case of index > 0.
51  *
52  * @return the item at a given index relative to the current item.
53  */
54 EXPORT_API Ewk_History_Item* ewk_history_nth_item_get(Ewk_History* history, int index);
55
56 /**
57  * Query URI for given list item.
58  *
59  * @param item history item to query.
60  *
61  * @return the URI pointer, that may be @c NULL.
62  */
63 EXPORT_API const char* ewk_history_item_uri_get(Ewk_History_Item* item);
64
65 /**
66  * Query title for given list item.
67  *
68  * @param item history item to query.
69  *
70  * @return the title pointer, that may be @c NULL.
71  */
72 EXPORT_API const char* ewk_history_item_title_get(Ewk_History_Item* item);
73
74 /**
75  * Free given history instance.
76  *
77  * @param history what to free.
78  */
79 EXPORT_API void ewk_history_free(Ewk_History* history);
80
81 #ifdef __cplusplus
82 }
83 #endif
84
85 #endif // ewk_history_internal_h