GLib Reference

Public interface

Gtk4.GLib.bind_propertyFunction
bind_property(source::GObject, source_property, target::GObject, target_property, flags = BindingFlags_DEFAULT)

Creates a binding between source_property on source and target_property on target. When source_property is changed, target_property will be updated to the same value. Returns a GBinding object that can be used to release the binding using unbind_property.

See also unbind_property.

Related GTK function: g_object_bind_property

source
Gtk4.GLib.g_idle_addFunction
g_idle_add(f, priority=PRIORITY_DEFAULT_IDLE)

Add a Julia function f that will be called when there are no higher priority GTK events to be processed. This function can be used from any thread. The optional priority argument, which is an integer, sets the priority of the event source (smaller is higher priority). The GLib main loop uses this priority value to decide what sources to handle next.

See also @idle_add.

Related GTK function: g_idle_add_full()

source
Gtk4.GLib.g_source_removeMethod
g_source_remove(id::Integer)

Remove the event source identified by id from the GLib main loop. The id is returned by g_idle_add and g_timeout_add. The main loop reuses id's so care should be taken that the source intended to be removed is still active.

Related GTK function: g_source_remove()

source
Gtk4.GLib.g_timeout_addFunction
g_timeout_add(f, interval, priority=PRIORITY_DEFAULT)

Add a function f that will be called every interval milliseconds by the GTK main loop. The function is expected to return a Cint. If it returns a nonzero value, the function will be called again after another interval milliseconds. Otherwise it will not be called again. The optional priority argument, which is an integer, sets the priority of the event source (smaller is higher priority). The GLib main loop uses this priority value to decide what sources to handle next.

This function returns an event source ID that can be used with g_source_remove to stop the timeout.

Related GTK function: g_timeout_add()

source
Gtk4.GLib.@idle_addMacro
@idle_add(ex)

Create a function from an expression ex that will be called when there are no higher priority GTK events to be processed. This function can be used from any thread.

See also g_idle_add.

Related GTK function: g_idle_add()

source

Private methods

Gtk4.GLib.propertyinfoMethod
propertyinfo(w::GObject, name)

Prints information about a property of the GObject w, including a brief description, its type, its default value, and its current value.

source
Gtk4.GLib.set_uv_loop_integrationFunction
set_uv_loop_integration(s = "auto")

Change Gtk4.jl's libuv loop integration setting. The argument s should be "auto" to use Gtk4.jl's default setting or "enabled" or "disabled" to override this. This setting will take effect after restarting Julia.

Enabling libuv loop integration may improve REPL response on some platforms (Mac) but negatively impacts multithreaded performance. This function has no effect when running on Windows.

source
Gtk4.GLib.stop_main_loopMethod
stop_main_loop()

Stops the default GLib main loop after the next iteration. Does not affect loop operation if GApplication's run() method is being used instead of GLib.start_main_loop().

See also start_main_loop.

source
Gtk4.GLib.waitforsignalMethod
waitforsignal(obj::GObject, signal)

Returns when a GObject's signal is emitted. Can be used to wait for a window to be closed.

source

Types

Gtk4.GLib.AskPasswordFlagsType

#GAskPasswordFlags are used to request specific information from the user, or to notify the user of their choices in an authentication situation.

Details can be found in the GTK docs.

source
Gtk4.GLib.DateDMYType

This enumeration isn't used in the API, but may be useful if you need to mark a number as a day, month, or year.

Details can be found in the GTK docs.

source
Gtk4.GLib.DateMonthType

Enumeration representing a month; values are %GDATEJANUARY, %GDATEFEBRUARY, etc. %GDATEBAD_MONTH is the invalid value.

Details can be found in the GTK docs.

source
Gtk4.GLib.DateWeekdayType

Enumeration representing a day of the week; %GDATEMONDAY, %GDATETUESDAY, etc. %GDATEBAD_WEEKDAY is an invalid weekday.

Details can be found in the GTK docs.

source
Gtk4.GLib.ErrorTypeType

The possible errors, used in the @verror field of #GTokenValue, when the token is a %GTOKEN_ERROR.

Details can be found in the GTK docs.

source
Gtk4.GLib.FileErrorType

Values corresponding to @errno codes returned from file operations on UNIX. Unlike @errno codes, GFileError values are available on all systems, even Windows. The exact meaning of each code depends on what sort of file operation you were performing; the UNIX documentation gives more details. The following error code descriptions come from the GNU C Library manual, and are under the copyright of that manual.

Details can be found in the GTK docs.

source
Gtk4.GLib.FilesystemPreviewTypeType

Indicates a hint from the file system whether files should be previewed in a file manager. Returned as the value of the key %GFILEATTRIBUTEFILESYSTEMUSE_PREVIEW.

Details can be found in the GTK docs.

source
Gtk4.GLib.GAppInfoMonitorType

#GAppInfoMonitor is a very simple object used for monitoring the app info database for changes (ie: newly installed or removed applications).

Details can be found in the GTK docs.

source
Gtk4.GLib.GAppLaunchContextType

Integrating the launch with the launching application. This is used to handle for instance startup notification and launching the new application on the same screen as the launching window.

Details can be found in the GTK docs.

source
Gtk4.GLib.GApplicationType

A #GApplication is the foundation of an application. It wraps some low-level platform-specific services and is intended to act as the foundation for higher-level application classes such as #GtkApplication or #MxApplication. In general, you should not use this class outside of a higher level framework.

Details can be found in the GTK docs.

source
Gtk4.GLib.GApplicationCommandLineType

#GApplicationCommandLine represents a command-line invocation of an application. It is created by #GApplication and emitted in the #GApplication::command-line signal and virtual function.

Details can be found in the GTK docs.

source
Gtk4.GLib.GBindingType

#GBinding is the representation of a binding between a property on a #GObject instance (or source) and another property on another #GObject instance (or target).

Details can be found in the GTK docs.

source
Gtk4.GLib.GBytesType

A simple refcounted data type representing an immutable sequence of zero or more bytes from an unspecified origin.

Details can be found in the GTK docs.

source
Gtk4.GLib.GBytesIconType

#GBytesIcon specifies an image held in memory in a common format (usually png) to be used as icon.

Details can be found in the GTK docs.

source
Gtk4.GLib.GCancellableType

GCancellable is a thread-safe operation cancellation stack used throughout GIO to allow for cancellation of synchronous and asynchronous operations.

Details can be found in the GTK docs.

source
Gtk4.GLib.GCredentialsType

The #GCredentials type is a reference-counted wrapper for native credentials. This information is typically used for identifying, authenticating and authorizing other processes.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusActionGroupType

#GDBusActionGroup is an implementation of the #GActionGroup interface that can be used as a proxy for an action group that is exported over D-Bus with gdbusconnectionexportaction_group().

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusAuthObserverType

The #GDBusAuthObserver type provides a mechanism for participating in how a #GDBusServer (or a #GDBusConnection) authenticates remote peers. Simply instantiate a #GDBusAuthObserver and connect to the signals you are interested in. Note that new signals may be added in the future

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusConnectionType

The #GDBusConnection type is used for D-Bus connections to remote peers such as a message buses. It is a low-level API that offers a lot of flexibility. For instance, it lets you establish a connection over any transport that can by represented as a #GIOStream.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusMenuModelType

#GDBusMenuModel is an implementation of #GMenuModel that can be used as a proxy for a menu model that is exported over D-Bus with gdbusconnectionexportmenu_model().

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusMethodInvocationType

Instances of the #GDBusMethodInvocation class are used when handling D-Bus method calls. It provides a way to asynchronously return results and errors.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusObjectManagerServerType

#GDBusObjectManagerServer is used to export #GDBusObject instances using the standardized org.freedesktop.DBus.ObjectManager interface. For example, remote D-Bus clients can get all objects and properties in a single call. Additionally, any change in the object hierarchy is broadcast using signals. This means that D-Bus clients can keep caches up to date by only listening to D-Bus signals.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusObjectProxyType

A #GDBusObjectProxy is an object used to represent a remote object with one or more D-Bus interfaces. Normally, you don't instantiate a #GDBusObjectProxy yourself - typically #GDBusObjectManagerClient is used to obtain it.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusObjectSkeletonType

A #GDBusObjectSkeleton instance is essentially a group of D-Bus interfaces. The set of exported interfaces on the object may be dynamic and change at runtime.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusProxyType

#GDBusProxy is a base class used for proxies to access a D-Bus interface on a remote object. A #GDBusProxy can be constructed for both well-known and unique names.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDBusServerType

#GDBusServer is a helper for listening to and accepting D-Bus connections. This can be used to create a new D-Bus server, allowing two peers to use the D-Bus protocol for their own specialized communication. A server instance provided in this way will not perform message routing or implement the org.freedesktop.DBus interface.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDataInputStreamType

Data input stream implements #GInputStream and includes functions for reading structured data directly from a binary input stream.

Details can be found in the GTK docs.

source
Gtk4.GLib.GDateType

Represents a day between January 1, Year 1 and a few thousand years in the future. None of its members should be accessed directly.

Details can be found in the GTK docs.

source
Gtk4.GLib.GEmblemType

#GEmblem is an implementation of #GIcon that supports having an emblem, which is an icon with additional properties. It can than be added to a #GEmblemedIcon.

Details can be found in the GTK docs.

source
Gtk4.GLib.GEmblemedIconType

#GEmblemedIcon is an implementation of #GIcon that supports adding an emblem to an icon. Adding multiple emblems to an icon is ensured via gemblemediconaddemblem().

Details can be found in the GTK docs.

source
Gtk4.GLib.GFileEnumeratorType

#GFileEnumerator allows you to operate on a set of #GFiles, returning a #GFileInfo structure for each file enumerated (e.g. gfileenumerate_children() will return a #GFileEnumerator for each of the children within a directory).

Details can be found in the GTK docs.

source
Gtk4.GLib.GFileInfoType

Functionality for manipulating basic metadata for files. #GFileInfo implements methods for getting information that all files should contain, and allows for manipulation of extended attributes.

Details can be found in the GTK docs.

source
Gtk4.GLib.GFilenameCompleterType

Completes partial file and directory names given a partial string by looking in the file system for clues. Can return a list of possible completion strings for widget implementations.

Details can be found in the GTK docs.

source
Gtk4.GLib.GFilterInputStreamType

Base class for input stream implementations that perform some kind of filtering operation on a base stream. Typical examples of filtering operations are character set conversion, compression and byte order flipping.

Details can be found in the GTK docs.

source
Gtk4.GLib.GFilterOutputStreamType

Base class for output stream implementations that perform some kind of filtering operation on a base stream. Typical examples of filtering operations are character set conversion, compression and byte order flipping.

Details can be found in the GTK docs.

source
Gtk4.GLib.GIOModuleType

Provides an interface and default functions for loading and unloading modules. This is used internally to make GIO extensible, but can also be used by others to implement module loading.

Details can be found in the GTK docs.

source
Gtk4.GLib.GIOStreamType

GIOStream represents an object that has both read and write streams. Generally the two streams act as separate input and output streams, but they share some common resources and state. For instance, for seekable streams, both streams may use the same position.

Details can be found in the GTK docs.

source
Gtk4.GLib.GInetAddressType

#GInetAddress represents an IPv4 or IPv6 internet address. Use gresolverlookupbyname() or gresolverlookupbynameasync() to look up the #GInetAddress for a hostname. Use gresolverlookupbyaddress() or gresolverlookupbyaddressasync() to look up the hostname for a #GInetAddress.

Details can be found in the GTK docs.

source
Gtk4.GLib.GInetAddressMaskType

#GInetAddressMask represents a range of IPv4 or IPv6 addresses described by a base address and a length indicating how many bits of the base address are relevant for matching purposes. These are often given in string form. Eg, "10.0.0.0/8", or "fe80::/10".

Details can be found in the GTK docs.

source
Gtk4.GLib.GInputStreamType

#GInputStream has functions to read from a stream (ginputstreamread()), to close a stream (ginputstreamclose()) and to skip some content (ginputstream_skip()).

Details can be found in the GTK docs.

source
Gtk4.GLib.GInputVectorType

Structure used for scatter/gather data input. You generally pass in an array of #GInputVectors and the operation will store the read data starting in the first buffer, switching to the next as needed.

Details can be found in the GTK docs.

source
Gtk4.GLib.GLogFieldType

Structure representing a single field in a structured log entry. See glogstructured() for details.

Details can be found in the GTK docs.

source
Gtk4.GLib.GMainContextType

The GMainContext struct is an opaque data type representing a set of sources to be handled in a main loop.

Details can be found in the GTK docs.

source
Gtk4.GLib.GMainLoopType

The GMainLoop struct is an opaque data type representing the main event loop of a GLib or GTK+ application.

Details can be found in the GTK docs.

source
Gtk4.GLib.GMappedFileType

The #GMappedFile represents a file mapping created with gmappedfile_new(). It has only private members and should not be accessed directly.

Details can be found in the GTK docs.

source
Gtk4.GLib.GMenuType

#GMenu is a simple implementation of #GMenuModel. You populate a #GMenu by adding #GMenuItem instances to it.

Details can be found in the GTK docs.

source
Gtk4.GLib.GMenuModelType

#GMenuModel represents the contents of a menu – an ordered list of menu items. The items are associated with actions, which can be activated through them. Items can be grouped in sections, and may have submenus associated with them. Both items and sections usually have some representation data, such as labels or icons. The type of the associated action (ie whether it is stateful, and what kind of state it has) can influence the representation of the item.

Details can be found in the GTK docs.

source
Gtk4.GLib.GMountOperationType

#GMountOperation provides a mechanism for interacting with the user. It can be used for authenticating mountable operations, such as loop mounting files, hard drive partitions or server locations. It can also be used to ask the user questions or show a list of applications preventing unmount or eject operations from completing.

Details can be found in the GTK docs.

source
Gtk4.GLib.GNetworkAddressType

#GNetworkAddress provides an easy way to resolve a hostname and then attempt to connect to that host, handling the possibility of multiple IP addresses and multiple address families.

Details can be found in the GTK docs.

source
Gtk4.GLib.GNetworkServiceType

Like #GNetworkAddress does with hostnames, #GNetworkService provides an easy way to resolve a SRV record, and then attempt to connect to one of the hosts that implements that service, handling service priority/weighting, multiple IP addresses, and multiple address families.

Details can be found in the GTK docs.

source
Gtk4.GLib.GNotificationType

#GNotification is a mechanism for creating a notification to be shown to the user – typically as a pop-up notification presented by the desktop environment shell.

Details can be found in the GTK docs.

source
Gtk4.GLib.GOptionEntryType

A GOptionEntry struct defines a single option. To have an effect, they must be added to a #GOptionGroup with goptioncontextaddmainentries() or goptiongroupadd_entries().

Details can be found in the GTK docs.

source
Gtk4.GLib.GOutputStreamType

#GOutputStream has functions to write to a stream (goutputstreamwrite()), to close a stream (goutputstreamclose()) and to flush pending writes (goutputstream_flush()).

Details can be found in the GTK docs.

source
Gtk4.GLib.GOutputVectorType

Structure used for scatter/gather data output. You generally pass in an array of #GOutputVectors and the operation will use all the buffers as if they were one buffer.

Details can be found in the GTK docs.

source
Gtk4.GLib.GPatternSpecType

A GPatternSpec struct is the 'compiled' form of a pattern. This structure is opaque and its fields cannot be accessed directly.

Details can be found in the GTK docs.

source
Gtk4.GLib.GPropertyActionType

A #GPropertyAction is a way to get a #GAction with a state value reflecting and controlling the value of a #GObject property.

Details can be found in the GTK docs.

source
Gtk4.GLib.GProxyAddressEnumeratorType

#GProxyAddressEnumerator is a wrapper around #GSocketAddressEnumerator which takes the #GSocketAddress instances returned by the #GSocketAddressEnumerator and wraps them in #GProxyAddress instances, using the given #GProxyAddressEnumerator:proxy-resolver.

Details can be found in the GTK docs.

source
Gtk4.GLib.GRegexType

The gregex*() functions implement regular expression pattern matching using syntax and semantics similar to Perl regular expression.

Details can be found in the GTK docs.

source
Gtk4.GLib.GResolverType

#GResolver provides cancellable synchronous and asynchronous DNS resolution, for hostnames (gresolverlookupbyaddress(), gresolverlookupbyname() and their async variants) and SRV (service) records (gresolverlookup_service()).

Details can be found in the GTK docs.

source
Gtk4.GLib.GResourceType

Applications and libraries often contain binary or textual data that is really part of the application, rather than user data. For instance #GtkBuilder .ui files, splashscreen images, GMenu markup XML, CSS files, icons, etc. These are often shipped as files in $datadir/appname, or manually included as literal strings in the code.

Details can be found in the GTK docs.

source
Gtk4.GLib.GScannerConfigType

Specifies the #GScanner parser configuration. Most settings can be changed during the parsing phase and will affect the lexical parsing of the next unpeeked token.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSettingsType

The #GSettings class provides a convenient API for storing and retrieving application settings.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSettingsBackendType

The #GSettingsBackend interface defines a generic interface for non-strictly-typed data that is stored in a hierarchy. To implement an alternative storage backend for #GSettings, you need to implement the #GSettingsBackend interface and then make it implement the extension point %GSETTINGSBACKENDEXTENSIONPOINT_NAME.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSettingsSchemaType

The #GSettingsSchemaSource and #GSettingsSchema APIs provide a mechanism for advanced control over the loading of schemas and a mechanism for introspecting their content.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSimpleActionType

A #GSimpleAction is the obvious simple implementation of the #GAction interface. This is the easiest way to create an action for purposes of adding it to a #GSimpleActionGroup.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSimpleIOStreamType

GSimpleIOStream creates a #GIOStream from an arbitrary #GInputStream and #GOutputStream. This allows any pair of input and output streams to be used with #GIOStream methods.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSimplePermissionType

#GSimplePermission is a trivial implementation of #GPermission that represents a permission that is either always or never allowed. The value is given at construction and doesn't change.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSimpleProxyResolverType

#GSimpleProxyResolver is a simple #GProxyResolver implementation that handles a single default proxy, multiple URI-scheme-specific proxies, and a list of hosts that proxies should not be used for.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketType

A #GSocket is a low-level networking primitive. It is a more or less direct mapping of the BSD socket API in a portable GObject based API. It supports both the UNIX socket implementations and winsock2 on Windows.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketAddressType

#GSocketAddress is the equivalent of struct sockaddr in the BSD sockets API. This is an abstract class; use #GInetSocketAddress for internet sockets, or #GUnixSocketAddress for UNIX domain sockets.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketAddressEnumeratorType

#GSocketAddressEnumerator is an enumerator type for #GSocketAddress instances. It is returned by enumeration functions such as gsocketconnectable_enumerate(), which returns a #GSocketAddressEnumerator to list each #GSocketAddress which could be used to connect to that #GSocketConnectable.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketClientType

#GSocketClient is a lightweight high-level utility class for connecting to a network host using a connection oriented socket type.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketConnectionType

#GSocketConnection is a #GIOStream for a connected socket. They can be created either by #GSocketClient when connecting to a host, or by #GSocketListener when accepting a new client.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketControlMessageType

A #GSocketControlMessage is a special-purpose utility message that can be sent to or received from a #GSocket. These types of messages are often called "ancillary data".

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketListenerType

A #GSocketListener is an object that keeps track of a set of server sockets and helps you accept sockets from any of the socket, either sync or async.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSocketServiceType

A #GSocketService is an object that represents a service that is provided to the network or over local sockets. When a new connection is made to the service the #GSocketService::incoming signal is emitted.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSrvTargetType

SRV (service) records are used by some network protocols to provide service-specific aliasing and load-balancing. For example, XMPP (Jabber) uses SRV records to locate the XMPP server for a domain; rather than connecting directly to "example.com" or assuming a specific server hostname like "xmpp.example.com", an XMPP client would look up the "xmpp-client" SRV record for "example.com", and then connect to whatever host was pointed to by that record.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSubprocessLauncherType

This class contains a set of options for launching child processes, such as where its standard input and output will be directed, the argument list, the environment, and more.

Details can be found in the GTK docs.

source
Gtk4.GLib.GTcpWrapperConnectionType

A #GTcpWrapperConnection can be used to wrap a #GIOStream that is based on a #GSocket, but which is not actually a #GSocketConnection. This is used by #GSocketClient so that it can always return a #GSocketConnection, even when the connection it has actually created is not directly a #GSocketConnection.

Details can be found in the GTK docs.

source
Gtk4.GLib.GThemedIconType

#GThemedIcon is an implementation of #GIcon that supports icon themes. #GThemedIcon contains a list of all of the icons present in an icon theme, so that icons can be looked up quickly. #GThemedIcon does not provide actual pixmaps for icons, just the icon names. Ideally something like gtkiconthemechooseicon() should be used to resolve the list of names so that fallback icons work nicely with themes that inherit other themes.

Details can be found in the GTK docs.

source
Gtk4.GLib.GThreadedSocketServiceType

A #GThreadedSocketService is a simple subclass of #GSocketService that handles incoming connections by creating a worker thread and dispatching the connection to it by emitting the #GThreadedSocketService::run signal in the new thread.

Details can be found in the GTK docs.

source
Gtk4.GLib.GTlsCertificateType

A certificate used for TLS authentication and encryption. This can represent either a certificate only (eg, the certificate received by a client from a server), or the combination of a certificate and a private key (which is needed when acting as a #GTlsServerConnection).

Details can be found in the GTK docs.

source
Gtk4.GLib.GTlsConnectionType

#GTlsConnection is the base TLS connection class type, which wraps a #GIOStream and provides TLS encryption on top of it. Its subclasses, #GTlsClientConnection and #GTlsServerConnection, implement client-side and server-side TLS, respectively.

Details can be found in the GTK docs.

source
Gtk4.GLib.GTlsDatabaseType

#GTlsDatabase is used to look up certificates and other information from a certificate or key store. It is an abstract base class which TLS library specific subtypes override.

Details can be found in the GTK docs.

source
Gtk4.GLib.GTlsInteractionType

#GTlsInteraction provides a mechanism for the TLS connection and database code to interact with the user. It can be used to ask the user for passwords.

Details can be found in the GTK docs.

source
Gtk4.GLib.GUnixCredentialsMessageType

This #GSocketControlMessage contains a #GCredentials instance. It may be sent using gsocketsendmessage() and received using gsocketreceivemessage() over UNIX sockets (ie: sockets in the %GSOCKETFAMILY_UNIX family).

Details can be found in the GTK docs.

source
Gtk4.GLib.GUriType

The #GUri type and related functions can be used to parse URIs into their components, and build valid URIs from individual components.

Details can be found in the GTK docs.

source
Gtk4.GLib.GVariantTypeType

This section introduces the GVariant type system. It is based, in large part, on the D-Bus type system, with two major changes and some minor lifting of restrictions. The D-Bus specification, therefore, provides a significant amount of information that is useful when working with GVariant.

Details can be found in the GTK docs.

source
Gtk4.GLib.GVolumeMonitorType

#GVolumeMonitor is for listing the user interesting devices and volumes on the computer. In other words, what a file selector or file manager would show in a sidebar.

Details can be found in the GTK docs.

source
Gtk4.GLib.IOErrorType

#GIOError is only used by the deprecated functions giochannelread(), giochannelwrite(), and giochannel_seek().

Details can be found in the GTK docs.

source
Gtk4.GLib.IOFlagsType

Specifies properties of a #GIOChannel. Some of the flags can only be read with giochannelgetflags(), but not changed with giochannelsetflags().

Details can be found in the GTK docs.

source
Gtk4.GLib.LogWriterOutputType

Return values from #GLogWriterFuncs to indicate whether the given log entry was successfully handled by the writer, or whether there was an error in handling it (and hence a fallback writer should be used).

Details can be found in the GTK docs.

source
Gtk4.GLib.MarkupCollectTypeType

A mixed enumerated type and flags field. You must specify one type (string, strdup, boolean, tristate). Additionally, you may optionally bitwise OR the type with the flag %GMARKUPCOLLECT_OPTIONAL.

Details can be found in the GTK docs.

source
Gtk4.GLib.NormalizeModeType

Defines how a Unicode string is transformed in a canonical form, standardizing such issues as whether a character with an accent is represented as a base character and combining accent or as a single precomposed character. Unicode strings should generally be normalized before comparing them.

Details can be found in the GTK docs.

source
Gtk4.GLib.OptionArgType

The #GOptionArg enum values determine which type of extra argument the options expect to find. If an option expects an extra argument, it can be specified in several ways; with a short option: -x arg, with a long option: --name arg or combined in a single argument: --name=arg.

Details can be found in the GTK docs.

source
Gtk4.GLib.ResolverRecordTypeType

The type of record that gresolverlookuprecords() or gresolverlookuprecords_async() should retrieve. The records are returned as lists of #GVariant tuples. Each record type has different values in the variant tuples returned.

Details can be found in the GTK docs.

source
Gtk4.GLib.SettingsBindFlagsType

Flags used when creating a binding. These flags determine in which direction the binding works. The default is to synchronize in both directions.

Details can be found in the GTK docs.

source
Gtk4.GLib.SignalMatchTypeType

The match types specify what gsignalhandlersblockmatched(), gsignalhandlersunblockmatched() and gsignalhandlersdisconnectmatched() match signals by.

Details can be found in the GTK docs.

source
Gtk4.GLib.SocketFamilyType

The protocol family of a #GSocketAddress. (These values are identical to the system defines %AFINET, %AFINET6 and %AF_UNIX, if available.)

Details can be found in the GTK docs.

source
Gtk4.GLib.SocketMsgFlagsType

Flags used in gsocketreceivemessage() and gsocketsendmessage(). The flags listed in the enum are some commonly available flags, but the values used for them are the same as on the platform, and any other flags are passed in/out as is. So to use a platform specific flag, just include the right system header and pass in the flag.

Details can be found in the GTK docs.

source
Gtk4.GLib.SocketProtocolType

A protocol identifier is specified when creating a #GSocket, which is a family/type specific identifier, where 0 means the default protocol for the particular family/type.

Details can be found in the GTK docs.

source
Gtk4.GLib.TlsCertificateFlagsType

A set of flags describing TLS certification validation. This can be used to describe why a particular certificate was rejected (for example, in #GTlsConnection::accept-certificate).

Details can be found in the GTK docs.

source
Gtk4.GLib.TlsProtocolVersionType

The TLS or DTLS protocol version used by a #GTlsConnection or #GDtlsConnection. The integer values of these versions are sequential to ensure newer known protocol versions compare greater than older known versions. Any known DTLS protocol version will compare greater than any SSL or TLS protocol version. The protocol version may be %GTLSPROTOCOLVERSIONUNKNOWN if the TLS backend supports a newer protocol version that GLib does not yet know about. This means that it's possible for an unknown DTLS protocol version to compare less than the TLS protocol versions.

Details can be found in the GTK docs.

source
Gtk4.GLib.TraverseFlagsType

Specifies which nodes are visited during several of the tree functions, including gnodetraverse() and gnodefind().

Details can be found in the GTK docs.

source
Gtk4.GLib.TraverseTypeType

Specifies the type of traversal performed by gtreetraverse(), gnodetraverse() and gnodefind(). The different orders are illustrated here:

  • In order: A, B, C, D, E, F, G, H, I
  • Pre order: F, B, A, D, C, E, G, I, H
  • Post order: A, C, E, D, B, H, I, G, F
  • Level order: F, B, G, A, D, I, C, E, H

Details can be found in the GTK docs.

source
Gtk4.GLib.UnicodeScriptType

The #GUnicodeScript enumeration identifies different writing systems. The values correspond to the names as defined in the Unicode standard. The enumeration has been added in GLib 2.14, and is interchangeable with #PangoScript.

Details can be found in the GTK docs.

source
Gtk4.GLib.UnixSocketAddressTypeType

The type of name used by a #GUnixSocketAddress. %GUNIXSOCKETADDRESSPATH indicates a traditional unix domain socket bound to a filesystem path. %GUNIXSOCKETADDRESSANONYMOUS indicates a socket not bound to any name (eg, a client-side socket, or a socket created with socketpair()).

Details can be found in the GTK docs.

source
Gtk4.GLib.UriHideFlagsType

Flags describing what parts of the URI to hide in guritostringpartial(). Note that %GURIHIDEPASSWORD and %GURIHIDEAUTH_PARAMS will only work if the #GUri was parsed with the corresponding flags.

Details can be found in the GTK docs.

source
Gtk4.GLib.UserDirectoryType

These are logical ids for special directories which are defined depending on the platform used. You should use ggetuserspecialdir() to retrieve the full path associated to the logical id.

Details can be found in the GTK docs.

source

Constants

Gtk4.GLib.ASCII_DTOSTR_BUF_SIZEConstant

A good size for a buffer to be passed into gasciidtostr(). It is guaranteed to be enough for all output of that function on systems with 64bit IEEE-compatible doubles.

Details can be found in the GTK docs.

source
Gtk4.GLib.CSET_A_2_ZConstant

The set of uppercase ASCII alphabet characters. Used for specifying valid identifier characters in #GScannerConfig.

Details can be found in the GTK docs.

source
Gtk4.GLib.CSET_a_2_zConstant

The set of lowercase ASCII alphabet characters. Used for specifying valid identifier characters in #GScannerConfig.

Details can be found in the GTK docs.

source
Gtk4.GLib.DATALIST_FLAGS_MASKConstant

A bitmask that restricts the possible flags passed to gdatalistsetflags(). Passing a flags value where flags & ~GDATALISTFLAGSMASK != 0 is an error.

Details can be found in the GTK docs.

source
Gtk4.GLib.DBUS_METHOD_INVOCATION_HANDLEDConstant

The value returned by handlers of the signals generated by the gdbus-codegen tool to indicate that a method call has been handled by an implementation. It is equal to %TRUE, but using this macro is sometimes more readable.

Details can be found in the GTK docs.

source
Gtk4.GLib.DBUS_METHOD_INVOCATION_UNHANDLEDConstant

The value returned by handlers of the signals generated by the gdbus-codegen tool to indicate that a method call has not been handled by an implementation. It is equal to %FALSE, but using this macro is sometimes more readable.

Details can be found in the GTK docs.

source
Gtk4.GLib.FILE_ATTRIBUTE_STANDARD_IS_VOLATILEConstant

A key in the "standard" namespace for checking if a file is volatile. This is meant for opaque, non-POSIX-like backends to indicate that the URI is not persistent. Applications should look at %GFILEATTRIBUTESTANDARDSYMLINK_TARGET for the persistent URI.

Details can be found in the GTK docs.

source
Gtk4.GLib.FILE_ATTRIBUTE_TIME_ACCESS_NSECConstant

A key in the "time" namespace for getting the nanoseconds of the time the file was last accessed. This should be used in conjunction with #GFILEATTRIBUTETIMEACCESS. Corresponding #GFileAttributeType is %GFILEATTRIBUTETYPEUINT32.

Details can be found in the GTK docs.

source
Gtk4.GLib.FILE_ATTRIBUTE_TIME_CHANGED_NSECConstant

A key in the "time" namespace for getting the nanoseconds of the time the file was last changed. This should be used in conjunction with #GFILEATTRIBUTETIMECHANGED. Corresponding #GFileAttributeType is %GFILEATTRIBUTETYPEUINT32.

Details can be found in the GTK docs.

source
Gtk4.GLib.FILE_ATTRIBUTE_TIME_CREATED_NSECConstant

A key in the "time" namespace for getting the nanoseconds of the time the file was created. This should be used in conjunction with #GFILEATTRIBUTETIMECREATED. Corresponding #GFileAttributeType is %GFILEATTRIBUTETYPEUINT32.

Details can be found in the GTK docs.

source
Gtk4.GLib.FILE_ATTRIBUTE_TIME_MODIFIED_NSECConstant

A key in the "time" namespace for getting the nanoseconds of the time the file was last modified. This should be used in conjunction with #GFILEATTRIBUTETIMEMODIFIED. Corresponding #GFileAttributeType is %GFILEATTRIBUTETYPEUINT32.

Details can be found in the GTK docs.

source
Gtk4.GLib.GINT16_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #gint16. It is a string literal, but doesn't include the percent-sign, such that you can add precision and length modifiers between percent-sign and conversion specifier.

Details can be found in the GTK docs.

source
Gtk4.GLib.GINT16_MODIFIERConstant

The platform dependent length modifier for conversion specifiers for scanning and printing values of type #gint16 or #guint16. It is a string literal, but doesn't include the percent-sign, such that you can add precision and length modifiers between percent-sign and conversion specifier and append a conversion specifier.

Details can be found in the GTK docs.

source
Gtk4.GLib.GINT32_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #gint32. See also %GGINT16FORMAT.

Details can be found in the GTK docs.

source
Gtk4.GLib.GINT32_MODIFIERConstant

The platform dependent length modifier for conversion specifiers for scanning and printing values of type #gint32 or #guint32. It is a string literal. See also %GGINT16MODIFIER.

Details can be found in the GTK docs.

source
Gtk4.GLib.GINT64_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #gint64. See also %GGINT16FORMAT.

Details can be found in the GTK docs.

source
Gtk4.GLib.GINT64_MODIFIERConstant

The platform dependent length modifier for conversion specifiers for scanning and printing values of type #gint64 or #guint64. It is a string literal.

Details can be found in the GTK docs.

source
Gtk4.GLib.GINTPTR_MODIFIERConstant

The platform dependent length modifier for conversion specifiers for scanning and printing values of type #gintptr or #guintptr. It is a string literal.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSIZE_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #gsize. See also %GGINT16FORMAT.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSIZE_MODIFIERConstant

The platform dependent length modifier for conversion specifiers for scanning and printing values of type #gsize. It is a string literal.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSSIZE_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #gssize. See also %GGINT16FORMAT.

Details can be found in the GTK docs.

source
Gtk4.GLib.GSSIZE_MODIFIERConstant

The platform dependent length modifier for conversion specifiers for scanning and printing values of type #gssize. It is a string literal.

Details can be found in the GTK docs.

source
Gtk4.GLib.GUINT16_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #guint16. See also %GGINT16FORMAT

Details can be found in the GTK docs.

source
Gtk4.GLib.GUINT32_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #guint32. See also %GGINT16FORMAT.

Details can be found in the GTK docs.

source
Gtk4.GLib.GUINT64_FORMATConstant

This is the platform dependent conversion specifier for scanning and printing values of type #guint64. See also %GGINT16FORMAT.

Details can be found in the GTK docs.

source
Gtk4.GLib.HOOK_FLAG_USER_SHIFTConstant

The position of the first bit which is not reserved for internal use be the #GHook implementation, i.e. 1 << G_HOOK_FLAG_USER_SHIFT is the first bit which can be used for application-defined flags.

Details can be found in the GTK docs.

source
Gtk4.GLib.KEY_FILE_DESKTOP_KEY_EXECConstant

A key under %GKEYFILEDESKTOPGROUP, whose value is a string giving the command line to execute. It is only valid for desktop entries with the Application type.

Details can be found in the GTK docs.

source
Gtk4.GLib.KEY_FILE_DESKTOP_KEY_PATHConstant

A key under %GKEYFILEDESKTOPGROUP, whose value is a string containing the working directory to run the program in. It is only valid for desktop entries with the Application type.

Details can be found in the GTK docs.

source
Gtk4.GLib.KEY_FILE_DESKTOP_KEY_STARTUP_WM_CLASSConstant

A key under %GKEYFILEDESKTOPGROUP, whose value is string identifying the WM class or name hint of a window that the application will create, which can be used to emulate Startup Notification with older applications.

Details can be found in the GTK docs.

source
Gtk4.GLib.KEY_FILE_DESKTOP_KEY_TRY_EXECConstant

A key under %GKEYFILEDESKTOPGROUP, whose value is a string giving the file name of a binary on disk used to determine if the program is actually installed. It is only valid for desktop entries with the Application type.

Details can be found in the GTK docs.

source
Gtk4.GLib.MENU_ATTRIBUTE_ACTIONConstant

The menu item attribute which holds the action name of the item. Action names are namespaced with an identifier for the action group in which the action resides. For example, "win." for window-specific actions and "app." for application-wide actions.

Details can be found in the GTK docs.

source
Gtk4.GLib.MENU_LINK_SECTIONConstant

The name of the link that associates a menu item with a section. The linked menu will usually be shown in place of the menu item, using the item's label as a header.

Details can be found in the GTK docs.

source
Gtk4.GLib.OPTION_REMAININGConstant

If a long option in the main group has this name, it is not treated as a regular option. Instead it collects all non-option arguments which would otherwise be left in argv. The option must be of type %GOPTIONARGCALLBACK, %GOPTIONARGSTRINGARRAY or %GOPTIONARGFILENAME_ARRAY.

Details can be found in the GTK docs.

source
Gtk4.GLib.POLLFD_FORMATConstant

A format specifier that can be used in printf()-style format strings when printing the @fd member of a #GPollFD.

Details can be found in the GTK docs.

source
Gtk4.GLib.TEST_OPTION_ISOLATE_DIRSConstant

Creates a unique temporary directory for each unit test and uses gsetuserdirs() to set XDG directories to point into subdirectories of it for the duration of the unit test. The directory tree is cleaned up after the test finishes successfully. Note that this doesn’t take effect until gtestrun() is called, so calls to (for example) ggetuserhome_dir() will return the system-wide value when made in a test program’s main() function.

Details can be found in the GTK docs.

source
Gtk4.GLib.VALUE_INTERNED_STRINGConstant

For string values, indicates that the string contained is canonical and will exist for the duration of the process. See gvaluesetinternedstring().

Details can be found in the GTK docs.

source
Gtk4.GLib.VALUE_NOCOPY_CONTENTSConstant

If passed to GVALUECOLLECT(), allocated data won't be copied but used verbatim. This does not affect ref-counted types like objects. This does not affect usage of gvaluecopy(), the data will be copied if it is not ref-counted.

Details can be found in the GTK docs.

source
Gtk4.GLib.VERSION_MIN_REQUIREDConstant

A macro that should be defined by the user prior to including the glib.h header. The definition should be one of the predefined GLib version macros: %GLIBVERSION226, %GLIBVERSION228,...

Details can be found in the GTK docs.

source