for GObject 2.54.2 The latest version of this documentation can be found on-line at https://developer.gnome.org/gobject/unstable/.


Introduction
I. Concepts
Background
Data types and programming
Exporting a C API
The GLib Dynamic Type System
Copy functions
Conventions
Non-instantiable non-classed fundamental types
Instantiable classed types: objects
Initialization and Destruction
Non-instantiable classed types: interfaces
Interface Initialization
Interface Destruction
The GObject base class
Object instantiation
Object memory management
Reference count
Weak References
Reference counts and cycles
Object properties
Accessing multiple properties at once
The GObject messaging system
Closures
C Closures
Non-C closures (for the fearless)
Signals
Signal registration
Signal connection
Signal emission
The detail argument
II. API Reference
Type Information — The GLib Runtime type identification and management system
GTypePlugin — An interface for dynamically loadable types
GTypeModule — Type loading modules
GObject — The base object type
Enumeration and Flag Types — Enumeration and flags types
Boxed Types — A mechanism to wrap opaque C structures registered by the type system
Generic values — A polymorphic type that can hold values of any other type
Parameters and Values — Standard Parameter and Value Types
GParamSpec — Metadata for parameter specifications
Varargs Value Collection — Converting varargs to generic values
Signals — A means for customization of object behaviour and a general purpose notification mechanism
Closures — Functions as first-class objects
Value arrays — A container structure to maintain an array of generic values
GBinding — Bind two object properties
III. Tools Reference
glib-mkenums — C language enum description generation utility
glib-genmarshal — C code marshaller generation utility for GLib closures
gobject-query — display a tree of types
IV. Tutorial
How to define and implement a new GObject
Boilerplate header code
Boilerplate code
Object construction
Object destruction
Object methods
Non-virtual public methods
Virtual public methods
Virtual private Methods
Chaining up
How to define and implement interfaces
Defining interfaces
Implementing interfaces
Interface definition prerequisites
Interface properties
Overriding interface methods
How to create and use signals
Simple use of signals
V. Related Tools
Vala
GObject builder
Graphical inspection of GObjects
Debugging reference count problems
Writing API docs
Index
Annotation Glossary