Core LGI functionality is accessible through lgi
module, loaded by
require 'lgi'
command. LGI does not install itself into global
namespace, caller has to use the return value from require
call.
lgi.'module'
module
string with module name, e.g.'Gtk' or 'WebKit'.Loads requested module of the latest version found into the repository.
lgi.require(module, version)
module
string with module name, e.g. 'Gtk' or 'WebKit'.version
string with exact required version of the moduleLoads requested module with specified version into the repository.
lgi.log.domain(name)
name
is string denoting logging area name, usually identifying
the application or the libraryreturn
table containingmessage
warning
critical
error
debug
methods for logging messages. These methods accept format
string and inserts, which are formatted according to Lua's
string.format
conventions.
lgi.yield()
when called, unlocks LGI state lock, for a while, thus
allowing potentially blocked callbacks or signals to enter the Lua
state. When using LGI with GLib's MainLoop, this call is not needed
at all.
NONE
, INTERFACE
, CHAR
, UCHAR
, BOOLEAN
,
INT
, UINT
, LONG
, ULONG
, INT64
, UINT64
,
ENUM
, FLAGS
, FLOAT
, DOUBLE
, STRING
,
POINTER
, BOXED
, PARAM
, OBJECT
, VARIANT
Constants containing type names of fundamental GObject types.
parent
, depth
, next_base
, is_a
, children
, interfaces
,
query
, fundamental_next
, fundamental
Functions for manipulating and querying GType
. THey are direct
mappings of g_type_xxx()
APIs, e.g. GObject.Type.parent()
behaves in the same way as g_type_parent()
in C.
GObject.Value([gtype [, val]])
gtype
type of the vlue to create, if not specified, defaults
to GObject.Type.NONE
.val
Lua value to initialize GValue with.Creates new GObject.Value of specified type, optionally assigns
Lua value to it. For example, local val =
GObject.Value(GObject.Type.INT, 42)
creates GValue of type
G_TYPE_INT
and initializes it to value 42
.
GObject.Value.gtype
g_value_transform
is
called to attempt to convert value to target type.GObject.Value.value
GObject.Glosure(func)
target
is Lua function or anything Lua-callable.Creates new GClosure instance wrapping given Lua callable. When
the closure is emitted, target
function is invoked, getting
GObject.Value instances as arguments, and expecting single
GObject.Value to be returned.