GTK+ Reference Manual

for GTK+ 2.4.14

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+
  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
  Accelerator Groups - Groups of global keyboard accelerators for an entire GtkWindow
  Accelerator Maps - Loadable keyboard accelerator specifications
  Clipboards - Storing data on clipboards
  Drag and Drop - Functions for controlling drag and drop handling
  GtkIconTheme - Looking up icons by name
  Stock Items - Prebuilt common menu/toolbar items and corresponding icons
  Themeable Stock Images - Manipulating stock icons
  Resource Files - Routines for handling resource files
  Settings - Sharing settings between applications
  Bindings - Key bindings for individual widgets
  Standard Enumerations - Public enumerated types used throughout GTK+
  Graphics Contexts - A shared pool of GdkGC objects
  Styles - Functions for drawing widget parts
  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 - a widget which is not displayed.
    GtkMessageDialog - convenient message window
    GtkWindow - Toplevel which can contain other widgets
    GtkWindowGroup - Limit the effect of grabs
  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.
    GtkEntryCompletion - completion functionality for GtkEntry
    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.
    GtkEditable - Interface for text-editing widgets.
  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 - Interfaces for drag-and-drop support in GtkTreeView
    GtkTreeSortable - The interface for sortable models used by GtkTreeView
    GtkTreeModelSort - A GtkTreeModel which makes an underlying tree model sortable
    GtkTreeModelFilter - A GtkTreeModel which hides parts of an underlying tree model
    GtkCellLayout - An interface for packing cells
    GtkCellRenderer - An object for rendering a single cell on a GdkDrawable
    GtkCellEditable - Interface for widgets which can are used for editing cells
    GtkCellRendererPixbuf - Renders a pixbuf in a cell
    GtkCellRendererText - Renders text in a cell
    GtkCellRendererToggle - Renders a toggle button in a cell
    GtkListStore - A list-like data structure that can be used with the GtkTreeView
    GtkTreeStore - A tree-like data structure that can be used with the GtkTreeView
  Menus, Combo Box, Toolbar
    GtkComboBox - a widget used to choose from a list of items.
    GtkComboBoxEntry - a text entry field with a dropdown list
    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.
    GtkImageMenuItem - a menu item with an icon.
    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.
    GtkToolItem - GtkToolItem is the base class of widgets that can be added to GtkToolbar.
    GtkSeparatorToolItem - A toolbar item that separates groups of other toolbar items.
    GtkToolButton - A GtkToolItem subclass that displays buttons
    GtkToggleToolButton - A GtkToolItem containing a toggle button.
    GtkRadioToolButton - A toolbar item that contains a radio button.
  Action-based menus and toolbars
    GtkUIManager - constructing menus and toolbars from an XML description
    GtkActionGroup - a group of actions
    GtkAction - an action which can be triggered by a menu or toolbar item
    GtkToggleAction - an action which can be toggled between two states
    GtkRadioAction - an action of which only one in a group can be active
  Selectors (File/Font/Color/Input Devices)
    GtkColorButton - A button to launch a color selection dialog
    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.
    GtkFileChooser - File chooser interface used by GtkFileChooserWidget and GtkFileChooserDialog.
    GtkFileChooserDialog - A file chooser dialog, suitable for "File/Open" or "File/Save" commands.
    GtkFileChooserWidget - File chooser widget that can be embedded in other widgets.
    GtkFileFilter - A filter for selecting a file subset
    GtkFontButton - A button to launch a font selection dialog
    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 buttons 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.
    GtkExpander - A container which can hide its child
  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.
    GtkIMContextSimple - An input method context supporting table-based input methods
    GtkIMMulticontext - An input method context supporting multiple, loadable input methods
    GtkSizeGroup - Grouping widgets so they request the same size
    GtkTooltips - Add tips to your widgets.
    GtkViewport - An adapter which makes widgets scrollable
    GtkAccessible - Accessibility support for widgets
  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 - Base class for widgets which contain other 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 - Base class for widgets which visualize an adjustment
    GtkScale - a base class for GtkHScale and GtkVScale.
    GtkScrollbar - base class for GtkHScrollbar and GtkVScrollbar.
    GtkSeparator - a base class for GtkHSeparator and GtkVSeparator.
    GtkWidget - Base class for all widgets
    GtkIMContext - Base class for input method contexts
  Cross-process Embedding
    GtkPlug - Toplevel for embedding into other processes.
    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.
    GtkCombo - a text entry field with a dropdown list.
    GtkItemFactory - A factory for menus
    GtkList - Widget for packing a list of selectable items.
    GtkListItem - an item in a GtkList.
    GtkOldEditable - Base class for text-editing widgets
    GtkOptionMenu - a widget used to choose from a list of valid choices.
    GtkPixmap - a widget displaying a graphical image or icon.
    GtkPreview - widget to display RGB or grayscale data.
    GtkProgress - the base class for GtkProgressBar.
    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.
IV. Migrating from Previous Versions of GTK+
  Migration Checklist
    Implement GtkWidget::popup_menu
    Use GdkEventExpose.region
    Test for modifier keys correctly
  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
  Migrating from GtkFileSelection to GtkFileChooser
    Creating a GtkFileChooserDialog
    Selection Modes
    Installing a Preview widget
    Installing Extra Widgets
    New features
  Migrating from old menu and toolbar systems to GtkAction
    Actions and Action Groups
    User Interface Manager Object
    Migrating from GnomeUIInfo
  Migrating from GtkOptionMenu and GtkCombo to GtkComboBox and GtkComboBoxEntry
    Migrating from GtkOptionMenu to GtkComboBox
    Migrating from GtkCombo to GtkComboBoxEntry
    New features
V. GTK+ Tools
  gtk-query-immodules-2.0 - Input method module registration utility
Glossary
Index

| Part I. GTK+ Overview >>