► |  | GUI: Racket Graphics Toolkit

1 | Overview
2 | Reference
3 | Configuration
4 | Dynamic Loading
| Bibliography
| Index

▼ | 1 | Overview

1.1 | Windowing
1.2 | Drawing
1.3 | Editor

top ← prev up next →

### 1`` Overview

For documentation purposes, the graphics toolbox is organized into three parts:

- The windowing toolbox, for implementing form-filling GUI programs (such as a database query window) using buttons, menus, text fields, and events. The windowing toolbox is described in Windowing.

- The drawing toolbox, for drawing pictures or implementing dynamic GUI programs (such as a video game) using drawing canvases, pens, and brushes. The drawing toolbox is described in Drawing.

- The editor toolbox, for developing traditional text editors, editors that mix text and graphics, or free-form layout editors (such as a word processor, HTML editor, or icon-based file browser). The editor toolbox is described in Editor.

These three parts roughly represent layers of increasing sophistication. Simple GUI programs access only the windowing toolbox directly, more complex programs use both the windowing and drawing toolboxes, and large-scale applications rely on all three toolboxes.

1.1 Windowing
1.1.1 Core Windowing Classes
1.1.2 Geometry Management
1.1.2.1 Containees
1.1.2.2 Containers
1.1.2.3 Defining New Types of Containers
1.1.3 Mouse and Keyboard Events
1.1.4 Event Dispatching and Eventspaces
1.1.4.1 Event Types and Priorities
1.1.4.2 Eventspaces and Threads
1.1.4.3 Creating and Setting the Eventspace
1.1.4.4 Exceptions and Continuation Jumps
1.2 Drawing
1.3 Editor
1.3.1 Editor Structure and Terminology
1.3.1.1 Administrators
1.3.1.2 Styles
1.3.2 File Format
1.3.2.1 Encoding Snips
1.3.2.1.1 Snip Classes
1.3.2.1.2 Editor Data
1.3.2.2 Global Data: Headers and Footers
1.3.3 End of Line Ambiguity
1.3.4 Flattened Text
1.3.5 Caret Ownership
1.3.6 Cut and Paste Time Stamps
1.3.7 Clickbacks
1.3.8 Internal Editor Locks
1.3.9 Editors and Threads

top ← prev up next →