![]() |
![]() |
![]() |
GSF Reference Manual | ![]() |
---|---|---|---|---|
enum GsfClipFormat; enum GsfClipFormatWindows; GsfClipData; GsfClipDataClass; GsfClipData* gsf_clip_data_new (GsfClipFormat format, GsfBlob *data_blob); GsfClipFormat gsf_clip_data_get_format (GsfClipData *clip_data); GsfBlob* gsf_clip_data_get_data_blob (GsfClipData *clip_data); GsfClipFormatWindows gsf_clip_data_get_windows_clipboard_format (GsfClipData *clip_data, GError **error); gconstpointer gsf_clip_data_peek_real_data (GsfClipData *clip_data, gsize *ret_size, GError **error);
typedef enum { GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD = -1, GSF_CLIP_FORMAT_MACINTOSH_CLIPBOARD = -2, GSF_CLIP_FORMAT_GUID = -3, GSF_CLIP_FORMAT_NO_DATA = 0, GSF_CLIP_FORMAT_CLIPBOARD_FORMAT_NAME = 1, /* in the file it's actually any positive integer */ GSF_CLIP_FORMAT_UNKNOWN /* this is our own value for unknown types or invalid data */ } GsfClipFormat;
typedef enum { GSF_CLIP_FORMAT_WINDOWS_ERROR = -1, /* our own value */ GSF_CLIP_FORMAT_WINDOWS_UNKNOWN = -2, /* our own value */ GSF_CLIP_FORMAT_WINDOWS_METAFILE = 3, /* CF_METAFILEPICT */ GSF_CLIP_FORMAT_WINDOWS_DIB = 8, /* CF_DIB */ GSF_CLIP_FORMAT_WINDOWS_ENHANCED_METAFILE = 14 /* CF_ENHMETAFILE */ } GsfClipFormatWindows;
GsfClipData* gsf_clip_data_new (GsfClipFormat format, GsfBlob *data_blob);
Creates a new GsfClipData object. This function acquires a reference to the
data_blob
, so you should unref the blob on your own if you no longer need it
directly.
|
Format for the data inside the data_blob
|
|
Object which holds the binary contents for the GsfClipData |
Returns : |
A newly-created GsfClipData. |
GsfClipFormat gsf_clip_data_get_format (GsfClipData *clip_data);
Queries the clipboard data format of a GsfClipData. The format refers to the data
blob inside the clip_data
; use gsf_clip_data_get_data_blob()
to get that data blob.
|
A GsfClipData. |
Returns : |
The format in which the GsfClipData's data blob is stored. |
GsfBlob* gsf_clip_data_get_data_blob (GsfClipData *clip_data);
Queries the data blob that actually stores a GsfClipData's binary data.
|
A GsfClipData. |
Returns : |
A new reference to the GsfBlob that stores this clip_data 's
binary data. You must use g_object_unref() to dispose of that data blob when
you are done with it.
|
GsfClipFormatWindows gsf_clip_data_get_windows_clipboard_format (GsfClipData *clip_data, GError **error);
Queries the Windows clipboard data format for a GsfClipData. The clip_data
must
have been created with GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD.
|
A GsfClipData. |
|
Location to store error, or NULL
|
Returns : |
A GsfClipFormatWindows value.
Possible errors: GSF_ERROR_INVALID_DATA if the data blob in the clip_data is
smaller than it should be; in this case GSF_CLIP_FORMAT_WINDOWS_ERROR will be returned.
|
gconstpointer gsf_clip_data_peek_real_data (GsfClipData *clip_data, gsize *ret_size, GError **error);
Queries a pointer directly to the clipboard data of a GsfClipData. The
resulting pointer is not necessarily the same data pointer that was passed to
gsf_blob_new()
prior to creating the clip_data
. For example, if the data is
in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD format, then it will have extra header
bytes in front of the actual metafile data. This function will skip over
those header bytes if necessary and return a pointer to the "real" data.
|
A GsfClipData. |
|
Location to return the size of the returned data buffer. |
|
Location to store error, or NULL .
|
Returns : |
Pointer to the real clipboard data. The size in bytes of this
buffer is returned in the ret_size argument.
|