GsfClipData

GsfClipData —

Synopsis




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);


Object Hierarchy


  GObject
   +----GsfClipData

Description

Details

enum GsfClipFormat

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;


enum GsfClipFormatWindows

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

typedef struct _GsfClipData GsfClipData;


GsfClipDataClass

typedef struct {
	GObjectClass parent_class;
} GsfClipDataClass;


gsf_clip_data_new ()

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 : Format for the data inside the data_blob
data_blob : Object which holds the binary contents for the GsfClipData
Returns : A newly-created GsfClipData.

gsf_clip_data_get_format ()

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.

clip_data : A GsfClipData.
Returns : The format in which the GsfClipData's data blob is stored.

gsf_clip_data_get_data_blob ()

GsfBlob*    gsf_clip_data_get_data_blob     (GsfClipData *clip_data);

Queries the data blob that actually stores a GsfClipData's binary data.

clip_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.

gsf_clip_data_get_windows_clipboard_format ()

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.

clip_data : A GsfClipData.
error : 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.

gsf_clip_data_peek_real_data ()

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.

clip_data : A GsfClipData.
ret_size : Location to return the size of the returned data buffer.
error : 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.