# Glossary

## A

- Alert (Requester) - A requester that contains text and an "OK" button, and is designed to give users short messages.
- Amiga - A home computer popular in the 80s and 90s.

## B

- Bitmap Button (Gadget) - A clickable UI component that contains a bitmap image instead of a label.
- BOOPSI - Basic Object Oriented Programming System, an object-orientated enhancement to Intuition.
- Border - The border around a gadget. Can be a simple bevel box, in the case of buttons, or a complex border containing other gadgets, as in windows.
- Button (Gadget) - A clickable UI component that contains a single line of text as a label.

## C

- Child - A gadget that is a sub-object of another gadget. A window is the child of the screen that contains it, for example.
- Close (Command) - Erase a gadget from a screen and either hide it or delete it.
- Close (Gadget) - A gadget that closes its parent gadget.

## D

- Debug (Class) - Simple debugging system that outputs text to the top screen.
- Depth - A gadget's depth determines its position on the screen's z-sorting order. Gadgets at the highest depth are "above" other gadgets. Gadgets at the lowest depth are "below" other gadgets.
- Depth (Gadget) - A gadget that adjusts its parent gadget's depth.

## E

- Event - Any "interesting" action that takes place within a gadget fires an event, which notifies the programmer that something has happened that may need his attention.
- Event Args (Struct) - A struct that is sent by a gadget as part of an event to the event handler. Contains further information about the event.
- Event Handler (Class) - A class that can receive and process events from gadgets.

## F

- Font - A typeface for text output, implemented as a combination of a class containing metadata and a bitmap containing the individual glyphs.
- Font (Class) - Provides font bitmap manipulation functions.

## G

- Gadget - The basic component of a Woopsi interface; all UI components are gadgets.
- Gadget Space - Co-ordinates that are relative to the top-left corner of the gadget.
- Glyph - An individual character's image in a font.
- Graphical User Interface (GUI) - A user interface based on a graphical display, as opposed to a more primitive text-based display.

## H

- Hide (Command) - Make a gadget invisible.

## I

- Intuition - The engine that drives the Amiga's windowing system.

## J

## K

## L

- LibNDS - A library for Nintendo DS development that provides access to the hardware.

## M

## N

## O

## P

- PALib - A library for Nintendo DS development that abstracts away the complexities of the hardware.
- Parent - A gadget that contains another gadget. A screen is the parent of any windows it contains, for example.

## Q

## R

- Requester - A window with a pre-defined set of gadgets designed to perform a specific function, such as show a file list or show "OK" and "Cancel" buttons.

## S

- Screen (Gadget) - A workspace in which windows can be mainpulated.
- Screen Space - Co-ordinates that are relative to the top-left corner of the screen.
- Show (Command) - Make a hidden gadget visible.
- SuperBitmap (Gadget) - A UI component that provides a canvas on which developers can draw.

## T

- Text (Class) - A class that provides text manipulation functionality.
- Textbox (Gadget) - A UI component that shows a single line of text.
- TextViewer (Gadget) - A UI component that can scroll multiple lines of text.
- TextWriter (Gadget) - A utility class that outputs strings of text to the DS' framebuffer.
- Tree - A recursive data structure in which a object can contain multiple instances of its own class.

## U

- User Interface (UI) - The interface through which a user interacts with a software application.

## V

- Vector (Class) - A linked-list class in the STL, extensively used in Woopsi.

## W

- Window (Gadget) - A container for user interface components such as textboxes.
- Workbench - The Amiga's windowing system.
- Woopsi - The first GUI library for the Nintendo DS that follows the windowing interface paradigm.

## X

## Y

## Z