ContentFormats
Object Hierarchy:
Description:
[ CCode ( ref_function = "gdk_content_formats_ref" , type_id = "gdk_content_formats_get_type ()" , unref_function = "gdk_content_formats_unref" ) ]
[ Compact ]
public class ContentFormats
This section describes the ContentFormats structure that is used to advertise and negotiate the format of content
passed between different widgets, windows or applications using for example the clipboard or drag'n'drop.
GDK supports content in 2 forms: Type and mime type. Using
Types is meant only for in-process content transfers. Mime types are meant to be used
for data passing both in-process and out-of-process. The details of how data is passed is described in the documentation of the actual
implementations.
A ContentFormats describes a set of possible formats content can be exchanged in. It is assumed that this set is
ordered. Types are more important than mime types. Order between different
Types or mime types is the order they were added in, most important first. Functions
that care about order, such as union will describe in their documentation how
they interpret that order, though in general the order of the first argument is considered the primary order of the result, followed by the
order of further arguments.
For debugging purposes, the function to_string exists. It will print a
comma-seperated formats of formats from most important to least important.
ContentFormats is an immutable struct. After creation, you cannot change the types it represents. Instead, new
ContentFormats have to be created. The
ContentFormatsBuilder structure is meant to help in this endeavor.
Content:
Creation methods:
Methods:
- public unowned ContentFormats @ref ()
Increases the reference count of a ContentFormats
by one.
- public bool contain_gtype (Type type)
Checks if a given Type
is part of the given this.
- public bool contain_mime_type (string mime_type)
Checks if a given mime type is part of the given
this.
- public unowned Type[]? get_gtypes ()
Gets the Types
included in this.
- public unowned string[]? get_mime_types (out size_t n_mime_types)
Gets the mime types included in this.
- public bool match (ContentFormats second)
Checks if this and second
have any matching formats.
- public Type match_gtype (ContentFormats second)
Finds the first Type
from this that is also contained in second
.
- public unowned string? match_mime_type (ContentFormats second)
Finds the first mime type from this that
is also contained in second
.
- public void print (StringBuilder string)
Prints the given this into a string for
human consumption.
- public string to_string ()
Prints the given this into a
human-readable string.
- public ContentFormats union (ContentFormats second)
Append all missing types from second
to
this, in the order they had in second
.
- public ContentFormats union_deserialize_gtypes ()
Add GTypes for mime types in this for
which deserializers are registered.
- public ContentFormats union_deserialize_mime_types ()
Add mime types for GTypes in this for
which deserializers are registered.
- public ContentFormats union_serialize_gtypes ()
Add GTypes for the mime types in this for
which serializers are registered.
- public ContentFormats union_serialize_mime_types ()
Add mime types for GTypes in this for
which serializers are registered.
- public void unref ()
Decreases the reference count of a ContentFormats
by one.