GTK+ Reference Manual

Table of Contents
I. GTK+ Overview
Compiling the GTK+ libraries --  How to compile GTK+ itself
Compiling GTK+ Applications --  How to compile your GTK+ application
Running GTK+ Applications --  How to run and debug your GTK+ application
Using GTK+ on Windows --  Windows-specific aspects of using GTK+
Using GTK+ on the Framebuffer --  Linux framebuffer aspects of using GTK+
Using GTK+ on the X Window System --  X11 aspects of using GTK+
Changes from 1.0 to 1.2 --  Incompatible changes made between version 1.0 and version 1.2
Changes from 1.2 to 2.0 --  Incompatible changes made between version 1.2 and version 2.0
Mailing lists and bug reports --  Getting help with GTK+
Common Questions --  Find answers to common questions in the GTK+ manual
II. GTK+ Core Reference
Main loop and Events -- Library initialization, main event loop, and events
Keyboard Accelerator Groups --  Groups of global keyboard accelerators for an entire GtkWindow
Accelerator Maps -- 
Clipboards -- Storing data on clipboards.
Drag and Drop -- Functions for controlling drag and drop handling.
Stock Items --  Prebuilt common menu/toolbar items and corresponding icons
Themeable Stock Images --  Manipulating stock icons
Resource Files -- Routines for handling resource files
GtkSettings -- 
Bindings -- 
Standard Enumerations -- Public enumerated types used throughout GTK+.
Graphics Contexts -- provides access to a shared pool of GdkGC objects.
Styles -- 
Selections -- Functions for handling inter-process communication via selections.
Version Information -- variables and functions to check the GTK+ version.
Signals -- Object methods and callbacks.
Types -- Handle run-time type creation.
III. GTK+ Widgets and Objects
Object Hierarchy
Windows
GtkDialog --  create popup windows.
GtkInvisible -- internally-used widget which is not displayed.
GtkMessageDialog --  convenient message window
GtkPlug -- Toplevel for embedding into other processes.
GtkWindow -- 
GtkWindowGroup -- 
Display Widgets
GtkAccelLabel -- a label which displays an accelerator key on the right of the text.
GtkImage -- A widget displaying an image
GtkLabel -- A widget that displays a small to medium amount of text.
GtkProgressBar -- a widget which indicates progress visually.
GtkStatusbar -- report messages of minor importance to the user.
Buttons and Toggles
GtkButton -- A widget that creates a signal when clicked on.
GtkCheckButton -- create widgets with a discrete toggle button.
GtkRadioButton -- A choice from multiple check buttons.
GtkToggleButton -- create buttons which retain their state.
Numeric/Text Data Entry
GtkEntry -- a single line text entry field.
GtkHScale -- a horizontal slider widget for selecting a value from a range.
GtkVScale -- a vertical slider widget for selecting a value from a range.
GtkSpinButton -- retrieve an integer or floating-point number from the user.
Multiline Text Editor
Text Widget Overview -- Overview of GtkTextBuffer, GtkTextView, and friends
GtkTextIter -- Text buffer iterator
GtkTextMark --  A position in the buffer preserved across buffer modifications
GtkTextBuffer --  Stores attributed text for display in a GtkTextView
GtkTextTag --  A tag that can be applied to text in a GtkTextBuffer
GtkTextTagTable --  Collection of tags that can be used together
GtkTextView -- Widget that displays a GtkTextBuffer
Tree and List Widget
Tree and List Widget Overview -- Overview of GtkTreeModel, GtkTreeView, and other associated widgets
GtkTreeModel -- The tree interface used by GtkTreeView
GtkTreeSelection -- The selection object for GtkTreeView
GtkTreeViewColumn -- A visible column in a GtkTreeView widget
GtkTreeView -- A widget for displaying both trees and lists.
GtkTreeView drag-and-drop -- 
GtkTreeSortable -- 
GtkTreeModelSort -- 
GtkCellRenderer -- 
GtkCellEditable -- 
GtkCellRendererPixbuf -- 
GtkCellRendererText -- 
GtkCellRendererToggle -- 
GtkListStore -- 
GtkTreeStore -- 
Menus, Combo Box, Toolbar
GtkCombo -- a text entry field with a dropdown list.
GtkItemFactory -- 
GtkMenu -- a drop down menu widget.
GtkMenuBar -- A subclass widget for GtkMenuShell which holds GtkMenuItem widgets
GtkMenuItem -- the widget used for item in menus
GtkMenuShell -- a base class for menu objects.
GtkOptionMenu -- a widget used to choose from a list of valid choices.
GtkImageMenuItem -- 
GtkRadioMenuItem -- A choice from multiple check menu items.
GtkCheckMenuItem -- a menu item with a check box.
GtkSeparatorMenuItem -- a separator used in menus.
GtkTearoffMenuItem -- a menu item used to tear off and reattach its menu.
GtkToolbar -- create bars of buttons and other widgets.
Selectors (File/Font/Color/Input Devices)
GtkColorSelection -- a widget used to select a color.
GtkColorSelectionDialog -- a standard dialog box for selecting a color.
GtkFileSelection -- prompt the user for a file or directory name.
GtkFontSelection -- a widget for selecting fonts.
GtkFontSelectionDialog -- a dialog box for selecting fonts.
GtkInputDialog -- Configure devices for the XInput extension.
Layout Containers
GtkAlignment -- a widget which controls the alignment and size of its child.
GtkAspectFrame -- A frame that constrains its child to a particular aspect ratio.
GtkHBox -- horizontal container box
GtkVBox -- vertical container box
GtkHButtonBox -- a container for arranging button horizontally.
GtkVButtonBox -- a container for arranging buttons vertically.
GtkFixed -- a container which allows you to position widgets at fixed coordinates
GtkHPaned -- A container with two panes arranged horizontally.
GtkVPaned -- A container with two panes arranged vertically.
GtkLayout --  Infinite scrollable area containing child widgets and/or custom drawing
GtkNotebook -- A tabbed notebook container.
GtkTable -- Pack widgets in regular patterns.
Ornaments
GtkFrame -- A bin with a decorative frame and optional label.
GtkHSeparator -- a horizontal separator.
GtkVSeparator -- a vertical separator.
Scrolling
GtkHScrollbar -- A horizontal scrollbar
GtkVScrollbar -- A vertical scrollbar
GtkScrolledWindow --  Adds scrollbars to its child widget.
Miscellaneous
GtkAdjustment -- a GtkObject representing an adjustable bounded value.
GtkArrow -- produces an arrow pointing in one of the four cardinal directions.
GtkCalendar -- display a calendar and/or allow the user to select a date.
GtkDrawingArea -- a widget for custom user interface elements.
GtkEventBox -- a widget used to catch events for widgets which do not have their own window.
GtkHandleBox -- a widget for detachable window portions.
GtkIMContext -- 
GtkIMContextSimple -- 
GtkIMMulticontext -- 
GtkSizeGroup -- Grouping widgets so they request the same size
GtkTooltips -- Add tips to your widgets.
GtkViewport -- 
GtkAccessible -- 
Abstract Base Classes
GtkBin -- a container with just one child.
GtkBox -- a base class for box containers
GtkButtonBox -- Base class for GtkHButtonBox and GtkVButtonBox
GtkContainer -- 
GtkEditable -- Base class for text-editing widgets.
GtkItem -- abstract base class for GtkMenuItem, GtkListItem and GtkTreeItem.
GtkMisc -- a base class for widgets with alignments and padding.
GtkObject -- The base class of the GTK+ type hierarchy.
GtkPaned -- Base class for widgets with two adjustable panes
GtkRange -- 
GtkScale -- a base class for GtkHScale and GtkVScale.
GtkScrollbar -- base class for GtkHScrollbar and GtkVScrollbar.
GtkSeparator -- a base class for GtkHSeparator and GtkVSeparator.
GtkWidget -- 
Cross-process Embedding
GtkSocket -- Container for widgets from other processes.
Special-purpose features
GtkCurve -- allows direct editing of a curve.
GtkGammaCurve -- a subclass of GtkCurve for editing gamma curves.
GtkRuler -- Base class for horizontal or vertical rulers
GtkHRuler -- A horizontal ruler.
GtkVRuler -- A vertical ruler.
Deprecated
GtkCList -- A multi-columned scrolling list widget.
GtkCTree -- a widget displaying a hierarchical tree.
GtkList -- Widget for packing a list of selectable items.
GtkListItem -- an item in a GtkList.
GtkPixmap -- a widget displaying a graphical image or icon.
GtkProgress -- the base class for GtkProgressBar.
GtkPreview -- widget to display RGB or grayscale data.
GtkOldEditable -- 
GtkText -- a text widget.
GtkTipsQuery -- displays help about widgets in the user interface.
GtkTree -- a tree widget.
GtkTreeItem -- The widget used for items in a GtkTree.