[gtk+] add gtk_selection_data_get_data_with_length API which can be bound
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] add gtk_selection_data_get_data_with_length API which can be bound
- Date: Mon, 3 Jan 2011 17:14:26 +0000 (UTC)
commit c7f39eb07ecaba5cb0b9538be8a7d64e5b862f57
Author: Matthias Clasen <mclasen redhat com>
Date: Mon Jan 3 12:11:41 2011 -0500
add gtk_selection_data_get_data_with_length API which can be bound
* gtk_selection_data_get_data can't be bound because we need to know the length
of data inorder to marshal it
https://bugzilla.gnome.org/show_bug.cgi?id=635299
docs/reference/gtk/gtk3-sections.txt | 1 +
gtk/gtk.symbols | 1 +
gtk/gtkselection.c | 23 +++++++++++++++++++++++
gtk/gtkselection.h | 4 ++++
4 files changed, 29 insertions(+), 0 deletions(-)
---
diff --git a/docs/reference/gtk/gtk3-sections.txt b/docs/reference/gtk/gtk3-sections.txt
index 51d5f63..37f7c28 100644
--- a/docs/reference/gtk/gtk3-sections.txt
+++ b/docs/reference/gtk/gtk3-sections.txt
@@ -5824,6 +5824,7 @@ gtk_selection_data_targets_include_rich_text
gtk_selection_data_get_selection
gtk_selection_data_get_data
gtk_selection_data_get_length
+gtk_selection_data_get_data_with_length
gtk_selection_data_get_data_type
gtk_selection_data_get_display
gtk_selection_data_get_format
diff --git a/gtk/gtk.symbols b/gtk/gtk.symbols
index 2dbb2ff..e5c5c75 100644
--- a/gtk/gtk.symbols
+++ b/gtk/gtk.symbols
@@ -2292,6 +2292,7 @@ gtk_selection_data_get_data_type
gtk_selection_data_get_display
gtk_selection_data_get_format
gtk_selection_data_get_length
+gtk_selection_data_get_data_with_length
gtk_selection_data_get_pixbuf
gtk_selection_data_get_selection
gtk_selection_data_get_target
diff --git a/gtk/gtkselection.c b/gtk/gtkselection.c
index 5ee7b25..06aa146 100644
--- a/gtk/gtkselection.c
+++ b/gtk/gtkselection.c
@@ -1223,6 +1223,29 @@ gtk_selection_data_get_length (const GtkSelectionData *selection_data)
}
/**
+ * gtk_selection_data_get_data_with_length:
+ * @selection_data: a pointer to a #GtkSelectionData structure
+ * @length: return location for length of the data segment
+ *
+ * Retrieves the raw data of the selection along with its length.
+ *
+ * Returns: (array length=length): the raw data of the selection
+ *
+ * Rename to: gtk_selection_data_get_data
+ * Since: 3.0
+ */
+const guchar*
+gtk_selection_data_get_data_with_length (const GtkSelectionData *selection_data,
+ gint *length)
+{
+ g_return_val_if_fail (selection_data != NULL, NULL);
+
+ *length = selection_data->length;
+
+ return selection_data->data;
+}
+
+/**
* gtk_selection_data_get_display:
* @selection_data: a pointer to a #GtkSelectionData structure.
*
diff --git a/gtk/gtkselection.h b/gtk/gtkselection.h
index 761d2b2..6b409bb 100644
--- a/gtk/gtkselection.h
+++ b/gtk/gtkselection.h
@@ -133,6 +133,10 @@ GdkAtom gtk_selection_data_get_data_type (const GtkSelectionData *selectio
gint gtk_selection_data_get_format (const GtkSelectionData *selection_data);
const guchar *gtk_selection_data_get_data (const GtkSelectionData *selection_data);
gint gtk_selection_data_get_length (const GtkSelectionData *selection_data);
+const guchar *gtk_selection_data_get_data_with_length
+ (const GtkSelectionData *selection_data,
+ gint *length);
+
GdkDisplay *gtk_selection_data_get_display (const GtkSelectionData *selection_data);
void gtk_selection_data_set (GtkSelectionData *selection_data,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]