GTK Tutorial
Ian Main,
slow@intergate.bc.ca
September 17, 1997
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 Stepping Through Hello World
3.
The Next Step
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.
The Tooltips Widget
8.
Container Widgets
8.1 Notebooks
8.2 Scrolled Windows
9.
The EventBox Widget
10.
Miscallaneous Widgets
10.1 Labels
10.2 Progress Bars
10.3 Dialogs
10.4 Pixmaps
10.5 Images
10.6 File Selections
11.
File Selections
12.
List Widgets
12.1 Signals
12.2 Functions
12.3 Example
12.4 List Item Widget
12.5 Signals
12.6 Functions
12.7 Example
13.
Undocumented Widgets
13.1 Text Entries
13.2 Color Selections
13.3 Range Controls
13.4 Rulers
13.5 Text Boxes
13.6 Previews
13.7 Curves
14.
Menu Widgets
14.1 Manual Menu Creation
14.2 Manual Menu Example
14.3 Using GtkMenuFactory
14.4 Menu Factory Example
15.
Timeouts, IO and Idle Functions
15.1 Timeouts
15.2 Monitoring IO
15.3 Idle Functions
16.
Managing Selections
16.1 Overview
16.2 Retrieving the selection
16.3 Supplying the selection
17.
glib
17.1 Definitions
17.2 Doubly Linked Lists
17.3 Singly Linked Lists
17.4 Memory Management
17.5 Timers
17.6 String Handling
17.7 Utility and Error Functions
18.
Setting Widget Attributes
19.
GTK's rc Files
19.1 Functions For rc Files
19.2 GTK's rc File Format
19.3 Example rc file
20.
Writing Your Own Widgets
20.1 Overview
20.2 The anatomy of a widget
20.3 Creating a Composite widget
20.4 Creating a widget from scratch.
20.5 Learning More
20.6 Copying
21.
Tips For Writing GTK Applications
22.
Contributing
23.
Credits
24.
Copying