Class ContentFormats
- All Implemented Interfaces:
Proxy
You will encounter GdkContentFormats when interacting with objects
controlling operations that pass data between different widgets, window
or application, like Drag, Drop,
Clipboard or ContentProvider.
GDK supports content in 2 forms: GType and mime type.
Using GTypes 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. To transform between the two forms,
ContentSerializer and ContentDeserializer are used.
A GdkContentFormats describes a set of possible formats content can be
exchanged in. It is assumed that this set is ordered. GTypes are more
important than mime types. Order between different GTypes or mime types
is the order they were added in, most important first. Functions that
care about order, such as union(org.gnome.gdk.ContentFormats), 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 toString()
exists. It will print a comma-separated list of formats from most important
to least important.
GdkContentFormats is an immutable struct. After creation, you cannot change
the types it represents. Instead, new GdkContentFormats have to be created.
The Gdk.ContentFormatsBuilder structure is meant to help in this
endeavor.
-
Constructor Summary
ConstructorsConstructorDescriptionContentFormats(@Nullable String @Nullable [] mimeTypes) Creates a newGdkContentFormatsfrom an array of mime types.ContentFormats(MemorySegment address) Create a ContentFormats proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionbooleancontainGtype(Type type) Checks if a givenGTypeis part of the givenformats.booleancontainMimeType(String mimeType) Checks if a given mime type is part of the givenformats.static ContentFormatsCreates a newGdkContentFormatsfor a givenGType.@Nullable Type @Nullable []Gets theGTypes included informats.@Nullable String @Nullable []Gets the mime types included informats.static @Nullable TypegetType()Get the GType of the ContentFormats classbooleanisEmpty()Returns whether the content formats contain any formats.booleanmatch(ContentFormats second) Checks if this ContentFormats andsecondhave any matching formats.matchGtype(ContentFormats second) Finds the firstGTypefrom this ContentFormats that is also contained insecond.@Nullable StringmatchMimeType(ContentFormats second) Finds the first mime type from this ContentFormats that is also contained insecond.static @Nullable ContentFormatsParses the givenstringintoGdkContentFormatsand returns the formats.voidPrints the given this ContentFormats into a string for human consumption.ref()Increases the reference count of aGdkContentFormatsby one.toString()Prints the given this ContentFormats into a human-readable string.union(ContentFormats second) Append all missing types fromsecondtofirst,in the order they had insecond.Add GTypes for mime types in this ContentFormats for which deserializers are registered.Add mime types for GTypes in this ContentFormats for which deserializers are registered.Add GTypes for the mime types in this ContentFormats for which serializers are registered.Add mime types for GTypes in this ContentFormats for which serializers are registered.voidunref()Decreases the reference count of aGdkContentFormatsby one.Methods inherited from class org.javagi.base.ProxyInstance
equals, handle, hashCode
-
Constructor Details
-
ContentFormats
Create a ContentFormats proxy instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
ContentFormats
Creates a newGdkContentFormatsfrom an array of mime types.The mime types must be valid and different from each other or the behavior of the return value is undefined. If you cannot guarantee this, use
Gdk.ContentFormatsBuilderinstead.- Parameters:
mimeTypes- Pointer to an array of mime types
-
-
Method Details
-
getType
-
forGtype
Creates a newGdkContentFormatsfor a givenGType.- Parameters:
type- aGType- Returns:
- a new
GdkContentFormats
-
parse
Parses the givenstringintoGdkContentFormatsand returns the formats.Strings printed via
toString()can be read in again successfully using this function.If
stringdoes not describe valid content formats,nullis returned.- Parameters:
string- the string to parse- Returns:
- the content formats if
stringis valid - Since:
- 4.4
-
containGtype
Checks if a givenGTypeis part of the givenformats.- Parameters:
type- theGTypeto search for- Returns:
trueif theGTypewas found
-
containMimeType
Checks if a given mime type is part of the givenformats.- Parameters:
mimeType- the mime type to search for- Returns:
trueif the mime_type was found
-
getGtypes
Gets theGTypes included informats.Note that this ContentFormats may not contain any
GTypes, in particular when they are empty. In that casenullwill be returned.- Returns:
G_TYPE_INVALID-terminated array of types included in this ContentFormats
-
getMimeTypes
Gets the mime types included informats.Note that this ContentFormats may not contain any mime types, in particular when they are empty. In that case
nullwill be returned.- Returns:
null-terminated array of interned strings of mime types included in this ContentFormats
-
isEmpty
public boolean isEmpty()Returns whether the content formats contain any formats.- Returns:
- true if this ContentFormats contains no mime types and no GTypes
- Since:
- 4.18
-
match
Checks if this ContentFormats andsecondhave any matching formats.- Parameters:
second- theGdkContentFormatsto intersect with- Returns:
trueif a matching format was found.
-
matchGtype
Finds the firstGTypefrom this ContentFormats that is also contained insecond.If no matching
GTypeis found,G_TYPE_INVALIDis returned.- Parameters:
second- theGdkContentFormatsto intersect with- Returns:
- The first common
GTypeorG_TYPE_INVALIDif none.
-
matchMimeType
Finds the first mime type from this ContentFormats that is also contained insecond.If no matching mime type is found,
nullis returned.- Parameters:
second- theGdkContentFormatsto intersect with- Returns:
- The first common mime type or
nullif none
-
print
Prints the given this ContentFormats into a string for human consumption.The result of this function can later be parsed with
parse(java.lang.String).- Parameters:
string- aGStringto print into
-
ref
Increases the reference count of aGdkContentFormatsby one.- Returns:
- the passed in
GdkContentFormats.
-
toString
Prints the given this ContentFormats into a human-readable string.The resulting string can be parsed with
parse(java.lang.String).This is a small wrapper around
print(java.lang.String)to help when debugging. -
union
Append all missing types fromsecondtofirst,in the order they had insecond.- Parameters:
second- theGdkContentFormatsto merge from- Returns:
- a new
GdkContentFormats
-
unionDeserializeGtypes
Add GTypes for mime types in this ContentFormats for which deserializers are registered.- Returns:
- a new
GdkContentFormats
-
unionDeserializeMimeTypes
Add mime types for GTypes in this ContentFormats for which deserializers are registered.- Returns:
- a new
GdkContentFormats
-
unionSerializeGtypes
Add GTypes for the mime types in this ContentFormats for which serializers are registered.- Returns:
- a new
GdkContentFormats
-
unionSerializeMimeTypes
Add mime types for GTypes in this ContentFormats for which serializers are registered.- Returns:
- a new
GdkContentFormats
-
unref
public void unref()Decreases the reference count of aGdkContentFormatsby one.If the resulting reference count is zero, frees the formats.
-