[atk] atkdocument: add get_current_page_number() and get_page_count() methods
- From: Alejandro Piñeiro Iglesias <apinheiro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [atk] atkdocument: add get_current_page_number() and get_page_count() methods
- Date: Thu, 28 Nov 2013 18:08:29 +0000 (UTC)
commit faeb56936d97eaef6791fc9fd72fbe1f44558e92
Author: Alejandro Piñeiro <apinheiro igalia com>
Date: Thu Nov 28 17:03:53 2013 +0100
atkdocument: add get_current_page_number() and get_page_count() methods
https://bugzilla.gnome.org/show_bug.cgi?id=709214
atk/atkdocument.c | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++
atk/atkdocument.h | 6 +++++
2 files changed, 62 insertions(+), 0 deletions(-)
---
diff --git a/atk/atkdocument.c b/atk/atkdocument.c
index f1515bb..c975132 100755
--- a/atk/atkdocument.c
+++ b/atk/atkdocument.c
@@ -360,3 +360,59 @@ atk_document_set_attribute_value (AtkDocument *document,
return FALSE;
}
}
+
+/**
+ * atk_document_get_current_page_number:
+ * @document: the #AtkDocument
+ *
+ * Since: 2.12
+ *
+ * Returns: current page number inside @document. -1 if not
+ * implemented, not know by the implementor or irrelevant.
+ */
+gint
+atk_document_get_current_page_number (AtkDocument *document)
+{
+ AtkDocumentIface *iface;
+
+ g_return_val_if_fail (ATK_IS_DOCUMENT (document), FALSE);
+
+ iface = ATK_DOCUMENT_GET_IFACE (document);
+
+ if (iface->get_current_page_number)
+ {
+ return (iface->get_current_page_number) (document);
+ }
+ else
+ {
+ return -1;
+ }
+}
+
+/**
+ * atk_document_get_page_count:
+ * @document: the #AtkDocument
+ *
+ * Since: 2.12
+ *
+ * Returns: total page count of @document. -1 if not implemented, not
+ * know by the implementor or irrelevant.
+ */
+gint
+atk_document_get_page_count (AtkDocument *document)
+{
+ AtkDocumentIface *iface;
+
+ g_return_val_if_fail (ATK_IS_DOCUMENT (document), FALSE);
+
+ iface = ATK_DOCUMENT_GET_IFACE (document);
+
+ if (iface->get_page_count)
+ {
+ return (iface->get_page_count) (document);
+ }
+ else
+ {
+ return -1;
+ }
+}
diff --git a/atk/atkdocument.h b/atk/atkdocument.h
index 9ad537d..bc6d458 100755
--- a/atk/atkdocument.h
+++ b/atk/atkdocument.h
@@ -62,6 +62,8 @@ typedef struct _AtkDocumentIface AtkDocumentIface;
* with the named attribute for this document, or NULL
* @set_document_attribute: sets the value of an attribute. Returns
* TRUE on success, FALSE otherwise
+ * @get_current_page_number: gets the current page number. Since 2.12
+ * @get_page_count: gets the page count of the document. Since 2.12
*/
struct _AtkDocumentIface
{
@@ -76,6 +78,8 @@ struct _AtkDocumentIface
gboolean ( *set_document_attribute) (AtkDocument *document,
const gchar *attribute_name,
const gchar *attribute_value);
+ gint ( *get_current_page_number) (AtkDocument *document);
+ gint ( *get_page_count) (AtkDocument *document);
};
GType atk_document_get_type (void);
@@ -95,6 +99,8 @@ const gchar* atk_document_get_attribute_value (AtkDocument *document,
gboolean atk_document_set_attribute_value (AtkDocument *document,
const gchar *attribute_name,
const gchar *attribute_value);
+gint atk_document_get_current_page_number (AtkDocument *document);
+gint atk_document_get_page_count (AtkDocument *document);
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]