Version: v0.0.0-...-52f9ba0 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Mar 23, 2017 License: ISC Imports: 8 Imported by: 4



Package glib provides Go bindings for GLib 2. Supports version 2.36 and later.



View Source


View Source
var (
	IGlibConvertType reflect.Type


func ApplicationIDIsValid

func ApplicationIDIsValid(id string) bool

ApplicationIDIsValid is a wrapper around g_application_id_is_valid().

func ClosureNew

func ClosureNew(f interface{}, marshalData ...interface{}) (*C.GClosure, error)

ClosureNew creates a new GClosure and adds its callback function to the internally-maintained map. It's exported for visibility to other gotk3 packages and shouldn't be used in application code.

func GetApplicationName

func GetApplicationName() string

GetApplicationName is a wrapper around g_get_application_name().

func GetUserSpecialDir

func GetUserSpecialDir(directory UserDirectory) (string, error)

GetUserSpecialDir is a wrapper around g_get_user_special_dir(). A non-nil error is returned in the case that g_get_user_special_dir() returns NULL to differentiate between NULL and an empty string.

func InitI18n

func InitI18n(domain string, dir string)

InitI18n initializes the i18n subsystem.

func Local

func Local(input string) string

Local localizes a string using gettext

func MainDepth

func MainDepth() int

MainDepth is a wrapper around g_main_depth().

func RegisterGValueMarshalers

func RegisterGValueMarshalers(tm []TypeMarshaler)

RegisterGValueMarshalers adds marshalers for several types to the internal marshalers map. Once registered, calling GoValue on any Value witha registered type will return the data returned by the marshaler.

func SetApplicationName

func SetApplicationName(name string)

SetApplicationName is a wrapper around g_set_application_name().

func SettingsSync

func SettingsSync()

SettingsSync is a wrapper around g_settings_sync().

func ToGObject

func ToGObject(p unsafe.Pointer) *C.GObject

ToGObject type converts an unsafe.Pointer as a native C GObject. This function is exported for visibility in other gotk3 packages and is not meant to be used by applications.


type Application

type Application struct {

Application is a representation of GApplication.

func ApplicationGetDefault

func ApplicationGetDefault() *Application

ApplicationGetDefault is a wrapper around g_application_get_default().

func ApplicationNew

func ApplicationNew(appID string, flags ApplicationFlags) *Application

ApplicationNew is a wrapper around g_application_new().

func (*Application) Activate

func (v *Application) Activate()

Activate is a wrapper around g_application_activate().

func (*Application) GetApplicationID

func (v *Application) GetApplicationID() string

GetApplicationID is a wrapper around g_application_get_application_id().

func (*Application) GetDbusObjectPath

func (v *Application) GetDbusObjectPath() string

GetDbusObjectPath is a wrapper around g_application_get_dbus_object_path().

func (*Application) GetFlags

func (v *Application) GetFlags() ApplicationFlags

GetFlags is a wrapper around g_application_get_flags().

func (*Application) GetInactivityTimeout

func (v *Application) GetInactivityTimeout() uint

GetInactivityTimeout is a wrapper around g_application_get_inactivity_timeout().

func (*Application) GetIsRegistered

func (v *Application) GetIsRegistered() bool

GetIsRegistered is a wrapper around g_application_get_is_registered().

func (*Application) GetIsRemote

func (v *Application) GetIsRemote() bool

GetIsRemote is a wrapper around g_application_get_is_remote().

func (*Application) Hold

func (v *Application) Hold()

Hold is a wrapper around g_application_hold().

func (*Application) MarkBusy

func (v *Application) MarkBusy()

MarkBusy is a wrapper around g_application_mark_busy().

func (*Application) Native

func (v *Application) Native() uintptr

func (*Application) Quit

func (v *Application) Quit()

Quit is a wrapper around g_application_quit().

func (*Application) Release

func (v *Application) Release()

Release is a wrapper around g_application_release().

func (*Application) Run

func (v *Application) Run(args []string) int

Run is a wrapper around g_application_run().

func (*Application) SendNotification

func (v *Application) SendNotification(id string, notification *Notification)

SendNotification is a wrapper around g_application_send_notification().

func (*Application) SetApplicationID

func (v *Application) SetApplicationID(id string)

SetApplicationID is a wrapper around g_application_set_application_id().

func (*Application) SetDefault

func (v *Application) SetDefault()

SetDefault is a wrapper around g_application_set_default().

func (*Application) SetFlags

func (v *Application) SetFlags(flags ApplicationFlags)

SetFlags is a wrapper around g_application_set_flags().

func (*Application) SetInactivityTimeout

func (v *Application) SetInactivityTimeout(timeout uint)

SetInactivityTimeout is a wrapper around g_application_set_inactivity_timeout().

func (*Application) UnmarkBusy

func (v *Application) UnmarkBusy()

UnmarkBusy is a wrapper around g_application_unmark_busy().

func (*Application) WithdrawNotification

func (v *Application) WithdrawNotification(id string)

WithdrawNotification is a wrapper around g_application_withdraw_notification().

type ApplicationFlags

type ApplicationFlags int
const (

type GValueMarshaler

type GValueMarshaler func(uintptr) (interface{}, error)

GValueMarshaler is a marshal function to convert a GValue into an appropiate Go type. The uintptr parameter is a *C.GValue.

type IGlibConvert

type IGlibConvert interface {
	//  If convertion can't be done, function have to panic with a message that it can't convert to type
	Convert(reflect.Type) reflect.Value

Should be implemented by any class which need special conversion like gtk.Application -> gio.Application

type IObject

type IObject interface {
	// contains filtered or unexported methods

IObject is an interface type implemented by Object and all types which embed an Object. It is meant to be used as a type for function arguments which require GObjects or any subclasses thereof.

type InitiallyUnowned

type InitiallyUnowned struct {
	// This must be a pointer so copies of the ref-sinked object
	// do not outlive the original object, causing an unref
	// finalizer to prematurely run.

InitiallyUnowned is a representation of GLib's GInitiallyUnowned.

func (*InitiallyUnowned) Native

func (v *InitiallyUnowned) Native() uintptr

Native returns a pointer to the underlying GObject. This is implemented here rather than calling Native on the embedded Object to prevent a nil pointer dereference.

type List

type List struct {
	// contains filtered or unexported fields

List is a representation of Glib's GList.

func WrapList

func WrapList(obj uintptr) *List

func (*List) Append

func (v *List) Append(data uintptr) *List

Append is a wrapper around g_list_append().

func (*List) Data

func (v *List) Data() interface{}

DataWrapped acts the same as data struct field, but passes retrieved value before returning through wrap function, set by DataWrapper(). If no wrap function is set, it returns raw unsafe.Pointer.

func (*List) DataWrapper

func (v *List) DataWrapper(fn func(unsafe.Pointer) interface{})

DataWapper sets wrap functions, which is called during NthDataWrapped() and DataWrapped(). It's used to cast raw C data into appropriate Go structures and types every time that data is retreived.

func (*List) Foreach

func (v *List) Foreach(fn func(item interface{}))

Foreach acts the same as g_list_foreach(). No user_data arguement is implemented because of Go clojure capabilities.

func (*List) Free

func (v *List) Free()

Free is a wrapper around g_list_free().

func (*List) FreeFull

func (v *List) FreeFull(fn func(item interface{}))

FreeFull acts the same as g_list_free_full(). Calling list.FreeFull(fn) is equivalent to calling list.Foreach(fn) and list.Free() sequentially.

func (*List) Insert

func (v *List) Insert(data uintptr, position int) *List

Insert is a wrapper around g_list_insert().

func (*List) Length

func (v *List) Length() uint

Length is a wrapper around g_list_length().

func (*List) Native

func (v *List) Native() uintptr

func (*List) Next

func (v *List) Next() *List

Next is a wrapper around the next struct field

func (*List) Nth

func (v *List) Nth(n uint) *List

Nth() is a wrapper around g_list_nth().

func (*List) NthData

func (v *List) NthData(n uint) interface{}

NthDataWrapped acts the same as g_list_nth_data(), but passes retrieved value before returning through wrap function, set by DataWrapper(). If no wrap function is set, it returns raw unsafe.Pointer.

func (*List) Prepend

func (v *List) Prepend(data uintptr) *List

Prepend is a wrapper around g_list_prepend().

func (*List) Previous

func (v *List) Previous() *List

Previous is a wrapper around the prev struct field

type MainContext

type MainContext C.GMainContext

func MainContextDefault

func MainContextDefault() *MainContext

MainContextDefault is a wrapper around g_main_context_default().

type Menu struct {

Menu is a representation of GMenu.

func MenuNew() *Menu

MenuNew is a wrapper around g_menu_new().

func (v *Menu) Append(label, detailed_action string)

Append is a wrapper around g_menu_append().

func (v *Menu) AppendItem(item *MenuItem)

AppendItem is a wrapper around g_menu_append_item().

func (v *Menu) AppendSection(label string, section *MenuModel)

AppendSection is a wrapper around g_menu_append_section().

func (v *Menu) AppendSubmenu(label string, submenu *MenuModel)

AppendSubmenu is a wrapper around g_menu_append_submenu().

func (v *Menu) Freeze()

Freeze is a wrapper around g_menu_freeze().

func (v *Menu) Insert(position int, label, detailed_action string)

Insert is a wrapper around g_menu_insert().

func (v *Menu) InsertItem(position int, item *MenuItem)

InsertItem is a wrapper around g_menu_insert_item().

func (v *Menu) InsertSection(position int, label string, section *MenuModel)

InsertSection is a wrapper around g_menu_insert_section().

func (v *Menu) InsertSubmenu(position int, label string, submenu *MenuModel)

InsertSubmenu is a wrapper around g_menu_insert_submenu().

func (v *Menu) Prepend(label, detailed_action string)

Prepend is a wrapper around g_menu_prepend().

func (v *Menu) PrependItem(item *MenuItem)

PrependItem is a wrapper around g_menu_prepend_item().

func (v *Menu) PrependSection(label string, section *MenuModel)

PrependSection is a wrapper around g_menu_prepend_section().

func (v *Menu) PrependSubmenu(label string, submenu *MenuModel)

PrependSubmenu is a wrapper around g_menu_prepend_submenu().

func (v *Menu) Remove(position int)

Remove is a wrapper around g_menu_remove().

func (v *Menu) RemoveAll()

RemoveAll is a wrapper around g_menu_remove_all().

type MenuItem struct {

MenuItem is a representation of GMenuItem.

func MenuItemNew(label, detailed_action string) *MenuItem

MenuItemNew is a wrapper around g_menu_item_new().

func MenuItemNewFromModel(model *MenuModel, index int) *MenuItem

MenuItemNewFromModel is a wrapper around g_menu_item_new_from_model().

func MenuItemNewSection(label string, section *MenuModel) *MenuItem

MenuItemNewSection is a wrapper around g_menu_item_new_section().

func MenuItemNewSubmenu(label string, submenu *MenuModel) *MenuItem

MenuItemNewSubmenu is a wrapper around g_menu_item_new_submenu().

func (v *MenuItem) GetLink(link string) *MenuModel

GetLink is a wrapper around g_menu_item_get_link().

func (v *MenuItem) SetDetailedAction(act string)

SetDetailedAction is a wrapper around g_menu_item_set_detailed_action().

func (v *MenuItem) SetLabel(label string)

SetLabel is a wrapper around g_menu_item_set_label().

func (v *MenuItem) SetLink(link string, model *MenuModel)

SetLink is a wrapper around g_menu_item_Set_link().

func (v *MenuItem) SetSection(section *MenuModel)

SetSection is a wrapper around g_menu_item_set_section().

func (v *MenuItem) SetSubmenu(submenu *MenuModel)

SetSubmenu is a wrapper around g_menu_item_set_submenu().

type MenuModel struct {

MenuModel is a representation of GMenuModel.

func (v *MenuModel) GetItemLink(index int, link string) *MenuModel

GetItemLink is a wrapper around g_menu_model_get_item_link().

func (v *MenuModel) GetNItems() int

GetNItems is a wrapper around g_menu_model_get_n_items().

func (v *MenuModel) IsMutable() bool

IsMutable is a wrapper around g_menu_model_is_mutable().

func (v *MenuModel) ItemsChanged(position, removed, added int)

ItemsChanged is a wrapper around g_menu_model_items_changed().

func (v *MenuModel) Native() uintptr

type Notification

type Notification struct {

Notification is a representation of GNotification.

func NotificationNew

func NotificationNew(title string) *Notification

NotificationNew is a wrapper around g_notification_new().

func (*Notification) AddButton

func (v *Notification) AddButton(label, detailedAction string)

AddButton is a wrapper around g_notification_add_button().

func (*Notification) Native

func (v *Notification) Native() uintptr

func (*Notification) SetBody

func (v *Notification) SetBody(body string)

SetBody is a wrapper around g_notification_set_body().

func (*Notification) SetDefaultAction

func (v *Notification) SetDefaultAction(detailedAction string)

SetDefaultAction is a wrapper around g_notification_set_default_action().

func (*Notification) SetTitle

func (v *Notification) SetTitle(title string)

SetTitle is a wrapper around g_notification_set_title().

type Object

type Object struct {
	GObject *C.GObject

Object is a representation of GLib's GObject.

func (*Object) Connect

func (v *Object) Connect(detailedSignal string, f interface{}, userData ...interface{}) (SignalHandle, error)

Connect is a wrapper around g_signal_connect_closure(). f must be a function with a signaure matching the callback signature for detailedSignal. userData must either 0 or 1 elements which can be optionally passed to f. If f takes less arguments than it is passed from the GLib runtime, the extra arguments are ignored.

Arguments for f must be a matching Go equivalent type for the C callback, or an interface type which the value may be packed in. If the type is not suitable, a runtime panic will occur when the signal is emitted.

func (*Object) ConnectAfter

func (v *Object) ConnectAfter(detailedSignal string, f interface{}, userData ...interface{}) (SignalHandle, error)

ConnectAfter is a wrapper around g_signal_connect_closure(). f must be a function with a signaure matching the callback signature for detailedSignal. userData must either 0 or 1 elements which can be optionally passed to f. If f takes less arguments than it is passed from the GLib runtime, the extra arguments are ignored.

Arguments for f must be a matching Go equivalent type for the C callback, or an interface type which the value may be packed in. If the type is not suitable, a runtime panic will occur when the signal is emitted.

The difference between Connect and ConnectAfter is that the latter will be invoked after the default handler, not before.

func (*Object) Emit

func (v *Object) Emit(s string, args ...interface{}) (interface{}, error)

Emit is a wrapper around g_signal_emitv() and emits the signal specified by the string s to an Object. Arguments to callback functions connected to this signal must be specified in args. Emit() returns an interface{} which must be type asserted as the Go equivalent type to the return value for native C callback.

Note that this code is unsafe in that the types of values in args are not checked against whether they are suitable for the callback.

func (*Object) ForceFloating

func (v *Object) ForceFloating()

ForceFloating is a wrapper around g_object_force_floating().

func (*Object) GetProperty

func (v *Object) GetProperty(name string) (interface{}, error)

GetProperty is a wrapper around g_object_get_property().

func (*Object) GetPropertyType

func (v *Object) GetPropertyType(name string) (Type, error)

GetPropertyType returns the Type of a property of the underlying GObject. If the property is missing it will return TYPE_INVALID and an error.

func (*Object) HandlerBlock

func (v *Object) HandlerBlock(handle SignalHandle)

HandlerBlock is a wrapper around g_signal_handler_block().

func (*Object) HandlerDisconnect

func (v *Object) HandlerDisconnect(handle SignalHandle)

HandlerDisconnect is a wrapper around g_signal_handler_disconnect().

func (*Object) HandlerUnblock

func (v *Object) HandlerUnblock(handle SignalHandle)

HandlerUnblock is a wrapper around g_signal_handler_unblock().

func (*Object) IsA

func (v *Object) IsA(typ Type) bool

IsA is a wrapper around g_type_is_a().

func (*Object) IsFloating

func (v *Object) IsFloating() bool

IsFloating is a wrapper around g_object_is_floating().

func (*Object) Native

func (v *Object) Native() uintptr

Native returns a pointer to the underlying GObject.

func (*Object) Ref

func (v *Object) Ref()

Ref is a wrapper around g_object_ref().

func (*Object) RefSink

func (v *Object) RefSink()

RefSink is a wrapper around g_object_ref_sink().

func (*Object) Set

func (v *Object) Set(name string, value interface{}) error

Set is a wrapper around g_object_set(). However, unlike g_object_set(), this function only sets one name value pair. Make multiple calls to this function to set multiple properties.

func (*Object) SetProperty

func (v *Object) SetProperty(name string, value interface{}) error

SetProperty is a wrapper around g_object_set_property().

func (*Object) StopEmission

func (v *Object) StopEmission(s string)

StopEmission is a wrapper around g_signal_stop_emission_by_name().

func (*Object) TypeFromInstance

func (v *Object) TypeFromInstance() Type

TypeFromInstance is a wrapper around g_type_from_instance().

func (*Object) Unref

func (v *Object) Unref()

Unref is a wrapper around g_object_unref().

type Quark

type Quark uint32

type SList

type SList struct {
	// contains filtered or unexported fields

SList is a representation of Glib's GSList.

func WrapSList

func WrapSList(obj uintptr) *SList

func (*SList) Append

func (v *SList) Append(data uintptr) *SList

func (*SList) Native

func (v *SList) Native() uintptr

type Settings

type Settings struct {

Settings is a representation of GSettings.

func SettingsNew

func SettingsNew(schemaID string) *Settings

SettingsNew is a wrapper around g_settings_new().

func SettingsNewFull

func SettingsNewFull(schema *SettingsSchema, backend *SettingsBackend, path string) *Settings

SettingsNewFull is a wrapper around g_settings_new_full().

func SettingsNewWithBackend

func SettingsNewWithBackend(schemaID string, backend *SettingsBackend) *Settings

SettingsNewWithBackend is a wrapper around g_settings_new_with_backend().

func SettingsNewWithBackendAndPath

func SettingsNewWithBackendAndPath(schemaID string, backend *SettingsBackend, path string) *Settings

SettingsNewWithBackendAndPath is a wrapper around g_settings_new_with_backend_and_path().

func SettingsNewWithPath

func SettingsNewWithPath(schemaID, path string) *Settings

SettingsNewWithPath is a wrapper around g_settings_new_with_path().

func (*Settings) Apply

func (v *Settings) Apply()

Apply is a wrapper around g_settings_apply().

func (*Settings) Delay

func (v *Settings) Delay()

Delay is a wrapper around g_settings_delay().

func (*Settings) GetBoolean

func (v *Settings) GetBoolean(name string) bool

GetBoolean is a wrapper around g_settings_get_boolean().

func (*Settings) GetChild

func (v *Settings) GetChild(name string) *Settings

GetChild is a wrapper around g_settings_get_child().

func (*Settings) GetDouble

func (v *Settings) GetDouble(name string) float64

GetDouble is a wrapper around g_settings_get_double().

func (*Settings) GetEnum

func (v *Settings) GetEnum(name string) int

GetEnum is a wrapper around g_settings_get_enum().

func (*Settings) GetFlags

func (v *Settings) GetFlags(name string) uint

GetFlags is a wrapper around g_settings_get_flags().

func (*Settings) GetHasUnapplied

func (v *Settings) GetHasUnapplied() bool

GetHasUnapplied is a wrapper around g_settings_get_has_unapplied().

func (*Settings) GetInt

func (v *Settings) GetInt(name string) int

GetInt is a wrapper around g_settings_get_int().

func (*Settings) GetString

func (v *Settings) GetString(name string) string

GetString is a wrapper around g_settings_get_string().

func (*Settings) GetUInt

func (v *Settings) GetUInt(name string) uint

GetUInt is a wrapper around g_settings_get_uint().

func (*Settings) IsWritable

func (v *Settings) IsWritable(name string) bool

IsWritable is a wrapper around g_settings_is_writable().

func (*Settings) ListChildren

func (v *Settings) ListChildren() []string

ListChildren is a wrapper around g_settings_list_children().

func (*Settings) Native

func (v *Settings) Native() uintptr

func (*Settings) Reset

func (v *Settings) Reset(name string)

Reset is a wrapper around g_settings_reset().

func (*Settings) Revert

func (v *Settings) Revert()

Revert is a wrapper around g_settings_revert().

func (*Settings) SetBoolean

func (v *Settings) SetBoolean(name string, value bool) bool

SetBoolean is a wrapper around g_settings_set_boolean().

func (*Settings) SetDouble

func (v *Settings) SetDouble(name string, value float64) bool

SetDouble is a wrapper around g_settings_set_double().

func (*Settings) SetEnum

func (v *Settings) SetEnum(name string, value int) bool

SetEnum is a wrapper around g_settings_set_enum().

func (*Settings) SetFlags

func (v *Settings) SetFlags(name string, value uint) bool

SetFlags is a wrapper around g_settings_set_flags().

func (*Settings) SetInt

func (v *Settings) SetInt(name string, value int) bool

SetInt is a wrapper around g_settings_set_int().

func (*Settings) SetString

func (v *Settings) SetString(name string, value string) bool

SetString is a wrapper around g_settings_set_string().

func (*Settings) SetUInt

func (v *Settings) SetUInt(name string, value uint) bool

SetUInt is a wrapper around g_settings_set_uint().

type SettingsBackend

type SettingsBackend struct {

SettingsBackend is a representation of GSettingsBackend.

func KeyfileSettingsBackendNew

func KeyfileSettingsBackendNew(filename, rootPath, rootGroup string) *SettingsBackend

KeyfileSettingsBackendNew is a wrapper around g_keyfile_settings_backend_new().

func MemorySettingsBackendNew

func MemorySettingsBackendNew() *SettingsBackend

MemorySettingsBackendNew is a wrapper around g_memory_settings_backend_new().

func NullSettingsBackendNew

func NullSettingsBackendNew() *SettingsBackend

NullSettingsBackendNew is a wrapper around g_null_settings_backend_new().

func SettingsBackendGetDefault

func SettingsBackendGetDefault() *SettingsBackend

SettingsBackendGetDefault is a wrapper around g_settings_backend_get_default().

func (*SettingsBackend) Native

func (v *SettingsBackend) Native() uintptr

type SettingsSchema

type SettingsSchema struct {
	// contains filtered or unexported fields

SettingsSchema is a representation of GSettingsSchema.

func (*SettingsSchema) GetID

func (v *SettingsSchema) GetID() string

GetID() is a wrapper around g_settings_schema_get_id().

func (*SettingsSchema) GetPath

func (v *SettingsSchema) GetPath() string

GetPath() is a wrapper around g_settings_schema_get_path().

func (*SettingsSchema) HasKey

func (v *SettingsSchema) HasKey(v1 string) bool

HasKey() is a wrapper around g_settings_schema_has_key().

func (*SettingsSchema) Native

func (v *SettingsSchema) Native() uintptr

func (*SettingsSchema) Ref

func (v *SettingsSchema) Ref() *SettingsSchema

Ref() is a wrapper around g_settings_schema_ref().

func (*SettingsSchema) Unref

func (v *SettingsSchema) Unref()

Unref() is a wrapper around g_settings_schema_unref().

type SettingsSchemaSource

type SettingsSchemaSource struct {
	// contains filtered or unexported fields

SettingsSchemaSource is a representation of GSettingsSchemaSource.

func SettingsSchemaSourceGetDefault

func SettingsSchemaSourceGetDefault() *SettingsSchemaSource

SettingsSchemaSourceGetDefault is a wrapper around g_settings_schema_source_get_default().

func SettingsSchemaSourceNewFromDirectory

func SettingsSchemaSourceNewFromDirectory(dir string, parent *SettingsSchemaSource, trusted bool) *SettingsSchemaSource

SettingsSchemaSourceNewFromDirectory() is a wrapper around g_settings_schema_source_new_from_directory().

func (*SettingsSchemaSource) Lookup

func (v *SettingsSchemaSource) Lookup(schema string, recursive bool) *SettingsSchema

Lookup() is a wrapper around g_settings_schema_source_lookup().

func (*SettingsSchemaSource) Native

func (v *SettingsSchemaSource) Native() uintptr

func (*SettingsSchemaSource) Ref

Ref() is a wrapper around g_settings_schema_source_ref().

func (*SettingsSchemaSource) Unref

func (v *SettingsSchemaSource) Unref()

Unref() is a wrapper around g_settings_schema_source_unref().

type Signal

type Signal struct {
	// contains filtered or unexported fields

func SignalNew

func SignalNew(s string) (*Signal, error)

func (*Signal) String

func (s *Signal) String() string

type SignalHandle

type SignalHandle uint

type Source

type Source C.GSource

func MainCurrentSource

func MainCurrentSource() *Source

MainCurrentSource is a wrapper around g_main_current_source().

type SourceHandle

type SourceHandle uint

func IdleAdd

func IdleAdd(f interface{}, args ...interface{}) (SourceHandle, error)

IdleAdd adds an idle source to the default main event loop context. After running once, the source func will be removed from the main event loop, unless f returns a single bool true.

This function will cause a panic when f eventually runs if the types of args do not match those of f.

func TimeoutAdd

func TimeoutAdd(timeout uint, f interface{}, args ...interface{}) (SourceHandle, error)

TimeoutAdd adds an timeout source to the default main event loop context. After running once, the source func will be removed from the main event loop, unless f returns a single bool true.

This function will cause a panic when f eventually runs if the types of args do not match those of f. timeout is in milliseconds

type Type

type Type uint

Type is a representation of GLib's GType.

const (
	TYPE_INT       Type = C.G_TYPE_INT
	TYPE_INT64     Type = C.G_TYPE_INT64
	TYPE_UINT64    Type = C.G_TYPE_UINT64

func (Type) Depth

func (t Type) Depth() uint

Depth is a wrapper around g_type_depth().

func (Type) Name

func (t Type) Name() string

Name is a wrapper around g_type_name().

func (Type) Parent

func (t Type) Parent() Type

Parent is a wrapper around g_type_parent().

type TypeMarshaler

type TypeMarshaler struct {
	T Type
	F GValueMarshaler

TypeMarshaler represents an actual type and it's associated marshaler.

type UserDirectory

type UserDirectory int

UserDirectory is a representation of GLib's GUserDirectory.

const (

type Value

type Value struct {
	GValue *C.GValue

Value is a representation of GLib's GValue.

Don't allocate Values on the stack or heap manually as they may not be properly unset when going out of scope. Instead, use ValueAlloc(), which will set the runtime finalizer to unset the Value after it has left scope.

func GValue

func GValue(v interface{}) (gvalue *Value, err error)

GValue converts a Go type to a comparable GValue. GValue() returns a non-nil error if the conversion was unsuccessful.

func ValueAlloc

func ValueAlloc() (*Value, error)

ValueAlloc allocates a Value and sets a runtime finalizer to call g_value_unset() on the underlying GValue after leaving scope. ValueAlloc() returns a non-nil error if the allocation failed.

func ValueFromNative

func ValueFromNative(l unsafe.Pointer) *Value

ValueFromNative returns a type-asserted pointer to the Value.

func ValueInit

func ValueInit(t Type) (*Value, error)

ValueInit is a wrapper around g_value_init() and allocates and initializes a new Value with the Type t. A runtime finalizer is set to call g_value_unset() on the underlying GValue after leaving scope. ValueInit() returns a non-nil error if the allocation failed.

func (*Value) GetPointer

func (v *Value) GetPointer() unsafe.Pointer

GetPointer is a wrapper around g_value_get_pointer().

func (*Value) GetString

func (v *Value) GetString() (string, error)

GetString is a wrapper around g_value_get_string(). GetString() returns a non-nil error if g_value_get_string() returned a NULL pointer to distinguish between returning a NULL pointer and returning an empty string.

func (*Value) GoValue

func (v *Value) GoValue() (interface{}, error)

GoValue converts a Value to comparable Go type. GoValue() returns a non-nil error if the conversion was unsuccessful. The returned interface{} must be type asserted as the actual Go representation of the Value.

This function is a wrapper around the many g_value_get_*() functions, depending on the type of the Value.

func (*Value) Native

func (v *Value) Native() unsafe.Pointer

Native returns a pointer to the underlying GValue.

func (*Value) SetBool

func (v *Value) SetBool(val bool)

SetBool is a wrapper around g_value_set_boolean().

func (*Value) SetDouble

func (v *Value) SetDouble(val float64)

SetDouble is a wrapper around g_value_set_double().

func (*Value) SetFloat

func (v *Value) SetFloat(val float32)

SetFloat is a wrapper around g_value_set_float().

func (*Value) SetInstance

func (v *Value) SetInstance(instance uintptr)

SetInstance is a wrapper around g_value_set_instance().

func (*Value) SetInt

func (v *Value) SetInt(val int)

SetInt is a wrapper around g_value_set_int().

func (*Value) SetInt64

func (v *Value) SetInt64(val int64)

SetInt64 is a wrapper around g_value_set_int64().

func (*Value) SetPointer

func (v *Value) SetPointer(p uintptr)

SetPointer is a wrapper around g_value_set_pointer().

func (*Value) SetSChar

func (v *Value) SetSChar(val int8)

SetSChar is a wrapper around g_value_set_schar().

func (*Value) SetString

func (v *Value) SetString(val string)

SetString is a wrapper around g_value_set_string().

func (*Value) SetUChar

func (v *Value) SetUChar(val uint8)

SetUChar is a wrapper around g_value_set_uchar().

func (*Value) SetUInt

func (v *Value) SetUInt(val uint)

SetUInt is a wrapper around g_value_set_uint().

func (*Value) SetUInt64

func (v *Value) SetUInt64(val uint64)

SetUInt64 is a wrapper around g_value_set_uint64().

func (*Value) Type

func (v *Value) Type() (actual Type, fundamental Type, err error)

Type is a wrapper around the G_VALUE_HOLDS_GTYPE() macro and the g_value_get_gtype() function. GetType() returns TYPE_INVALID if v does not hold a Type, or otherwise returns the Type of v.

type VariantClass

type VariantClass int
const (
	VARIANT_CLASS_BOOLEAN     VariantClass = C.G_VARIANT_CLASS_BOOLEAN     //The GVariant is a boolean.
	VARIANT_CLASS_BYTE        VariantClass = C.G_VARIANT_CLASS_BYTE        //The GVariant is a byte.
	VARIANT_CLASS_INT16       VariantClass = C.G_VARIANT_CLASS_INT16       //The GVariant is a signed 16 bit integer.
	VARIANT_CLASS_UINT16      VariantClass = C.G_VARIANT_CLASS_UINT16      //The GVariant is an unsigned 16 bit integer.
	VARIANT_CLASS_INT32       VariantClass = C.G_VARIANT_CLASS_INT32       //The GVariant is a signed 32 bit integer.
	VARIANT_CLASS_UINT32      VariantClass = C.G_VARIANT_CLASS_UINT32      //The GVariant is an unsigned 32 bit integer.
	VARIANT_CLASS_INT64       VariantClass = C.G_VARIANT_CLASS_INT64       //The GVariant is a signed 64 bit integer.
	VARIANT_CLASS_UINT64      VariantClass = C.G_VARIANT_CLASS_UINT64      //The GVariant is an unsigned 64 bit integer.
	VARIANT_CLASS_HANDLE      VariantClass = C.G_VARIANT_CLASS_HANDLE      //The GVariant is a file handle index.
	VARIANT_CLASS_DOUBLE      VariantClass = C.G_VARIANT_CLASS_DOUBLE      //The GVariant is a double precision floating point value.
	VARIANT_CLASS_STRING      VariantClass = C.G_VARIANT_CLASS_STRING      //The GVariant is a normal string.
	VARIANT_CLASS_OBJECT_PATH VariantClass = C.G_VARIANT_CLASS_OBJECT_PATH //The GVariant is a D-Bus object path string.
	VARIANT_CLASS_SIGNATURE   VariantClass = C.G_VARIANT_CLASS_SIGNATURE   //The GVariant is a D-Bus signature string.
	VARIANT_CLASS_VARIANT     VariantClass = C.G_VARIANT_CLASS_VARIANT     //The GVariant is a variant.
	VARIANT_CLASS_MAYBE       VariantClass = C.G_VARIANT_CLASS_MAYBE       //The GVariant is a maybe-typed value.
	VARIANT_CLASS_ARRAY       VariantClass = C.G_VARIANT_CLASS_ARRAY       //The GVariant is an array.
	VARIANT_CLASS_TUPLE       VariantClass = C.G_VARIANT_CLASS_TUPLE       //The GVariant is a tuple.
	VARIANT_CLASS_DICT_ENTRY  VariantClass = C.G_VARIANT_CLASS_DICT_ENTRY  //The GVariant is a dictionary entry.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL