Next
Previous Contents
GTK Tutorial
Ian Main
<imain@gtk.org>
, Tony Gale
<gale@gtk.org>
September 2nd, 1998
1.
Introduction
2.
Getting Started
2.1 Hello World in GTK
2.2 Compiling Hello World
2.3 Theory of Signals and Callbacks
2.4 Events
2.5 Stepping Through Hello World
3.
Moving On
3.1 Data Types
3.2 More on Signal Handlers
3.3 An Upgraded Hello World
4.
Packing Widgets
4.1 Theory of Packing Boxes
4.2 Details of Boxes
4.3 Packing Demonstration Program
4.4 Packing Using Tables
4.5 Table Packing Example
5.
Widget Overview
5.1 Casting
5.2 Widget Hierarchy
5.3 Widgets Without Windows
6.
The Button Widget
6.1 Normal Buttons
6.2 Toggle Buttons
6.3 Check Buttons
6.4 Radio Buttons
7.
Adjustments
7.1 Creating an Adjustment
7.2 Using Adjustments the Easy Way
7.3 Adjustment Internals
8.
Range Widgets
8.1 Scrollbar Widgets
8.2 Scale Widgets
8.3 Common Functions
8.4 Key and Mouse bindings
8.5 Example
9.
Miscellaneous Widgets
9.1 Labels
9.2 The Tooltips Widget
9.3 Progress Bars
9.4 Dialogs
9.5 Pixmaps
9.6 Rulers
9.7 Statusbars
9.8 Text Entries
9.9 Color Selection
9.10 File Selections
10.
Container Widgets
10.1 Notebooks
10.2 Scrolled Windows
10.3 Paned Window Widgets
10.4 Toolbar
10.5 Aspect Frames
11.
CList Widget
11.1 Creating a GtkCList widget
11.2 Modes of operation
11.3 Working with titles
11.4 Manipulating the list itself
11.5 Adding rows to the list
11.6 Setting text and pixmaps in the cells
11.7 Storing data pointers
11.8 Working with selections
11.9 The signals that bring it together
11.10 A GtkCList example
12.
List Widget
12.1 Signals
12.2 Functions
12.3 Example
12.4 List Item Widget
12.5 Signals
12.6 Functions
12.7 Example
13.
Tree Widget
13.1 Creating a Tree
13.2 Adding a Subtree
13.3 Handling the Selection List
13.4 Tree Widget Internals
13.5 Tree Item Widget
13.6 Tree Example
14.
Menu Widget
14.1 Manual Menu Creation
14.2 Manual Menu Example
14.3 Using GtkMenuFactory
14.4 Menu Factory Example
15.
Text Widget
15.1 Creating and Configuring a Text box
15.2 Text Manipulation
15.3 Keyboard Shortcuts
15.4 A GtkText Example
16.
Undocumented Widgets
16.1 Fixed Container
16.2 Curves
16.3 Previews
17.
The EventBox Widget
18.
Setting Widget Attributes
19.
Timeouts, IO and Idle Functions
19.1 Timeouts
19.2 Monitoring IO
19.3 Idle Functions
20.
Advanced Event and Signal Handling
20.1 Signal Functions
20.2 Signal Emission and Propagation
21.
Managing Selections
21.1 Overview
21.2 Retrieving the selection
21.3 Supplying the selection
22.
glib
22.1 Definitions
22.2 Doubly Linked Lists
22.3 Singly Linked Lists
22.4 Memory Management
22.5 Timers
22.6 String Handling
22.7 Utility and Error Functions
23.
GTK's rc Files
23.1 Functions For rc Files
23.2 GTK's rc File Format
23.3 Example rc file
24.
Writing Your Own Widgets
24.1 Overview
24.2 The Anatomy Of A Widget
24.3 Creating a Composite widget
24.4 Creating a widget from scratch.
24.5 Learning More
25.
Scribble, A Simple Example Drawing Program
25.1 Overview
25.2 Event Handling
25.3 The DrawingArea Widget, And Drawing
25.4 Adding XInput support
26.
Tips For Writing GTK Applications
27.
Contributing
28.
Credits
29.
Tutorial Copyright and Permissions Notice
Appendix
30.
GDK Event Types
31.
Code Examples
31.1 Tictactoe
31.2 GtkDial
31.3 Scribble
Next
Previous Contents