
CLIM 2.0 User's Guide
-
- Copyright and Trademarks
-
- Preface
-
- About the User's Guide
-
- Notational Conventions
-
- Chapter 1 - Using CLIM
-
- 1.1 - Conceptual Overview
-
- 1.2 - Highlights of Tools and Techniques
-
- 1.3 - How CLIM Helps You Achieve a Portable User Interface
-
- 1.4 - What Is CLIM?
-
- 1.4.1 - The Core of CLIM
-
- 1.4.1.1 - Application Frames
-
- 1.4.1.2 - Panes
-
- 1.4.1.3 - Sheets
-
- 1.4.1.4 - Enabling Input and Output
-
- 1.4.1.5 - Graphics
-
- 1.4.1.6 - Text
-
- 1.4.1.7 - Events
-
- 1.4.1.8 - Mediums
-
- 1.4.2 - CLIM Facilities
-
- 1.4.2.1 - Look and Feel
-
- 1.4.2.2 - Controlling Look and Feel
-
- 1.4.2.3 - Streams
-
- 1.4.2.4 - Extended Input and Output
-
- 1.4.2.5 - Presentations
-
- 1.4.2.6 - Command Loop
-
- 1.4.3 - Summary
-
- 1.5 - Testing Code Examples in Liquid CLIM
-
- Chapter 2 - Drawing Graphics
-
- 2.1 - Conceptual Overview of Drawing Graphics
-
- 2.1.1 - Drawing Functions and Options
-
- 2.1.2 - The Drawing Plane
-
- 2.1.3 - Coordinates
-
- 2.1.4 - Mediums, Sheets, and Streams
-
- 2.2 - Examples of Using CLIM Drawing Functions
-
- 2.3 - CLIM Drawing Functions
-
- 2.3.1 - Arguments
-
- 2.3.2 - Compound Drawing Functions
-
- 2.3.3 - Patterns and Stencils
-
- 2.3.4 - Pixmaps
-
- 2.4 - Graphics Protocols
-
- 2.4.1 - Arguments
-
- 2.4.2 - General Behavior of Drawing Functions
-
- 2.4.3 - Medium-Specific Drawing Functions
-
- 2.5 - General Geometric Objects in CLIM
-
- 2.5.1 - Regions in CLIM
-
- 2.5.1.1 - Region Predicates in CLIM
-
- 2.5.1.2 - Composition of CLIM Regions
-
- 2.5.2 - CLIM Point Objects
-
- 2.5.3 - Polygons and Polylines in CLIM
-
- 2.5.3.1 - Constructors for CLIM Polygons and Polylines
-
- 2.5.3.2 - Accessors for CLIM Polygons and Polylines
-
- 2.5.4 - Lines in CLIM
-
- 2.5.5 - Rectangles in CLIM
-
- 2.5.6 - Ellipses and Elliptical Arcs in CLIM
-
- 2.5.6.1 - Constructor Functions for Ellipses and Elliptical Arcs in CLIM
-
- 2.5.6.2 - Accessors for CLIM Elliptical Objects
-
- 2.5.7 - Bounding Rectangles
-
- 2.5.7.1 - The Bounding Rectangle Protocol
-
- 2.5.7.2 - Bounding Rectangle Convenience Functions
-
- Chapter 3 - The CLIM Drawing Environment
-
- 3.1 - CLIM Mediums
-
- 3.2 - Using CLIM Drawing Options
-
- 3.2.1 - Set of CLIM Drawing Options
-
- 3.2.2 - Using the :filled Option
-
- 3.3 - CLIM Line Styles
-
- 3.4 - Transformations in CLIM
-
- 3.5 - The Transformations Used by CLIM
-
- 3.5.1 - CLIM Transformation Constructors
-
- 3.5.2 - CLIM Transformation Protocol
-
- 3.5.3 - CLIM Transformation Predicates
-
- 3.5.4 - CLIM Transformation Functions
-
- 3.5.5 - Applying CLIM Transformations
-
- Chapter 4 - Text Styles
-
- 4.1 - Conceptual Overview of Text Styles
-
- 4.2 - CLIM Text Style Objects
-
- 4.3 - CLIM Text Style Functions
-
- 4.4 - Text Style Binding Forms
-
- 4.5 - Controlling Text Style Mappings
-
- Chapter 5 - Drawing in Color
-
- 5.1 - Conceptual Overview of Drawing With Color
-
- 5.1.1 - Color Objects
-
- 5.1.2 - Rendering
-
- 5.2 - CLIM Operators for Drawing in Color
-
- 5.3 - Predefined Color Names in LispWorks CLIM
-
- 5.4 - Predefined Color Names in Liquid CLIM
-
- 5.5 - Indirect Inks
-
- 5.6 - Flipping Ink
-
- 5.7 - Examples of Simple Drawing Effects
-
- 5.7.1 - Using Flipping Ink
-
- Chapter 6 - Presentation Types
-
- 6.1 - Conceptual Overview of CLIM Presentation Types
-
- 6.1.1 - User Interaction With Application Objects
-
- 6.1.2 - Presentations and Presentation Types
-
- 6.1.3 - Output With Its Semantics Attached
-
- 6.1.4 - Input Context
-
- 6.1.5 - Inheritance
-
- 6.1.6 - Presentation Translators
-
- 6.1.7 - What the Application Programmer Does
-
- 6.2 - How to Specify a CLIM Presentation Type
-
- 6.3 - Using CLIM Presentation Types for Output
-
- 6.3.1 - CLOS Operators
-
- 6.3.2 - Additional Functions for Operating on Presentations in CLIM
-
- 6.4 - Using CLIM Presentation Types for Input
-
- 6.5 - Predefined Presentation Types
-
- 6.5.1 - Basic Presentation Types
-
- 6.5.2 - Numeric Presentation Types
-
- 6.5.3 - Character and String Presentation Types
-
- 6.5.4 - Pathname Presentation Types
-
- 6.5.5 - One-Of and Some-Of Presentation Types
-
- 6.5.6 - Sequence Presentation Types
-
- 6.5.7 - Constructor Presentation Types
-
- 6.5.8 - Compound Presentation Types
-
- 6.5.9 - Command and Form Presentation Types
-
- 6.6 - Functions That Operate on CLIM Presentation Types
-
- Chapter 7 - Defining a New Presentation Type
-
- 7.1 - Conceptual Overview of Defining a New Presentation Type
-
- 7.1.1 - CLIM Presentation Type Inheritance
-
- 7.1.2 - Defining an Accept for a Structure With Several Fields
-
- 7.2 - CLIM Operators for Defining New Presentation Types
-
- 7.2.1 - Presentation Methods in CLIM
-
- 7.2.2 - CLIM Operators for Defining Presentation Type Abbreviations
-
- 7.3 - Using Views With CLIM Presentation Types
-
- 7.4 - Advanced Topics
-
- Chapter 8 - Presentation Translators in CLIM
-
- 8.1 - Conceptual Overview of Presentation Translators
-
- 8.2 - Applicability of CLIM Presentation Translators
-
- 8.2.1 - Input Contexts in CLIM
-
- 8.2.2 - Nested Presentations in CLIM
-
- 8.3 - Pointer Gestures in CLIM
-
- 8.4 - CLIM Operators for Defining Presentation Translators
-
- 8.5 - Examples of Defining Presentation Translators in CLIM
-
- 8.5.1 - Defining a Translation from Floating Point Number to Integer
-
- 8.5.2 - Defining a Presentation-to-Command Translator
-
- 8.5.3 - Defining Presentation Translators for the Blank Area
-
- 8.5.4 - Defining a Presentation Action
-
- 8.6 - Advanced Topics
-
- Chapter 9 - Defining Application Frames
-
- 9.1 - Conceptual Overview of CLIM Application Frames
-
- 9.2 - Defining CLIM Application Frames
-
- 9.2.1 - The Application Frame Protocol
-
- 9.2.2 - Using the :pane Option
-
- 9.2.3 - Using the :panes and :layouts Options
-
- 9.2.4 - Example of the :pane Option to define-application-frame
-
- 9.2.5 - Examples of the :panes and :layout Options to define-application-frame
-
- 9.2.6 - Using an :accept-values Pane in a CLIM Application Frame
-
- 9.3 - Initializing CLIM Application Frames
-
- 9.4 - Accessing Slots and Components of CLIM Application Frames
-
- 9.5 - Running a CLIM Application
-
- 9.6 - Exiting a CLIM Application
-
- 9.7 - Examples of CLIM Application Frames
-
- 9.7.1 - Defining a CLIM Application Frame
-
- 9.7.2 - Constructing a Function as Part of Running an Application
-
- 9.8 - Application Frame Operators and Accessors
-
- 9.8.1 - CLIM Application Frame Accessors
-
- 9.8.2 - Operators for Running CLIM Applications
-
- 9.9 - Frame Managers
-
- 9.9.1 - Finding Frame Managers
-
- 9.9.2 - Frame Manager Operators
-
- 9.10 - Advanced Topics
-
- Chapter 10 - Panes and Gadgets
-
- 10.1 - Panes
-
- 10.1.1 - Basic Pane Construction
-
- 10.1.2 - Pane Initialization Options
-
- 10.1.3 - Pane Properties
-
- 10.2 - Layout Panes
-
- 10.2.1 - Layout Pane Options
-
- 10.2.2 - Layout Pane Classes
-
- 10.2.3 - Composite Pane Generic Functions
-
- 10.2.4 - The Layout Protocol
-
- 10.3 - Extended Stream Panes
-
- 10.3.1 - Extended Stream Pane Options
-
- 10.3.2 - Extended Stream Pane Classes
-
- 10.3.3 - Making CLIM Extended Stream Panes
-
- 10.4 - Defining A New Pane Type: Leaf Panes
-
- 10.5 - Gadgets
-
- 10.5.1 - Abstract Gadgets
-
- 10.5.1.1 - Using Gadgets
-
- 10.5.1.2 - Implementing Gadgets
-
- 10.5.2 - Basic Gadget Classes
-
- 10.5.3 - Abstract Gadget Classes
-
- 10.5.3.1 - The Label Gadget
-
- 10.5.3.2 - The List-Pane and Option-Pane Gadgets
-
- 10.5.3.3 - The Menu-Button Gadget
-
- 10.5.3.4 - The Push-Button Gadget
-
- 10.5.3.5 - The Radio-Box and Check-Box Gadgets
-
- 10.5.3.6 - The Scroll-Bar Gadget
-
- 10.5.3.7 - The Slider Gadget
-
- 10.5.3.8 - The Text-Field and Text-Editor Gadgets
-
- 10.5.3.9 - The Toggle-Button Gadget
-
- 10.5.4 - Integrating Gadgets and Output Records
-
- Chapter 11 - Commands
-
- 11.1 - Introduction to CLIM Commands
-
- 11.2 - Defining Commands the Easy Way
-
- 11.2.1 - Command Names and Command Line Names
-
- 11.2.2 - The Command-Defining Macro
-
- 11.3 - Command Objects
-
- 11.4 - CLIM Command Tables
-
- 11.5 - CLIM Predefined Command Tables
-
- 11.6 - Conditions Relating to CLIM Command Tables
-
- 11.7 - Styles of Interaction Supported by CLIM
-
- 11.8 - Command-Related Presentation Types
-
- 11.9 - The CLIM Command Processor
-
- 11.10 - Advanced Topics
-
- 11.10.1 - CLIM Command Tables
-
- 11.10.2 - CLIM Command Menu Interaction Style
-
- 11.10.3 - Mouse Interaction Via Presentation Translators
-
- 11.10.4 - CLIM Command Line Interaction Style
-
- 11.10.5 - CLIM Keystroke Interaction Style
-
- 11.10.6 - The CLIM Command Processor
-
- Chapter 12 - Menus and Dialogs
-
- 12.1 - Conceptual Overview of Menus and Dialogs
-
- 12.2 - CLIM Menu Operators
-
- 12.3 - CLIM Dialog Operators
-
- 12.4 - Examples of Menus and Dialogs in CLIM
-
- 12.4.1 - Using accepting-values
-
- 12.4.2 - Using accept-values-command-button
-
- 12.4.3 - Using :resynchronize-every-pass in accepting-values
-
- 12.4.4 - Using the third value from accept in accepting-values
-
- 12.4.5 - Using menu-choose
-
- 12.4.6 - Using menu-choose-from-drawer
-
- Chapter 13 - Extended Stream Output Facilities
-
- 13.1 - Basic Output Streams
-
- 13.2 - Extended Output Streams
-
- 13.3 - The Text Cursor
-
- 13.3.1 - The Text Cursor Protocol
-
- 13.3.2 - The Stream Text Cursor Protocol
-
- 13.4 - Text
-
- 13.4.1 - The Text Protocol
-
- 13.4.2 - Mixing Text and Graphics
-
- 13.4.3 - Wrapping Text Lines
-
- 13.5 - Attracting the User's Attention
-
- 13.6 - Buffering Output
-
- 13.7 - CLIM Window Stream Pane Functions
-
- Chapter 14 - Output Recording and Redisplay
-
- 14.1 - Conceptual Overview of Output Recording
-
- 14.2 - CLIM Operators for Output Recording
-
- 14.2.1 - The Basic Output Record Protocol
-
- 14.2.2 - The Output Record "Database" Protocol
-
- 14.2.3 - Types of Output Records
-
- 14.2.3.1 - Standard Output Record Classes
-
- 14.2.3.2 - Graphics Displayed Output Records
-
- 14.2.3.3 - Text Displayed Output Records
-
- 14.2.3.4 - Top-Level Output Records
-
- 14.2.4 - Output Recording Streams
-
- 14.2.4.1 - The Output Recording Stream Protocol
-
- 14.2.4.2 - Graphics Output Recording
-
- 14.2.4.3 - Text Output Recording
-
- 14.2.4.4 - Output Recording Utilities
-
- 14.3 - Conceptual Overview of Incremental Redisplay
-
- 14.4 - CLIM Operators for Incremental Redisplay
-
- 14.5 - Using updating-output
-
- 14.6 - Example of Incremental Redisplay in CLIM
-
- Chapter 15 - Extended Stream Input Facilities
-
- 15.1 - Basic Input Streams
-
- 15.2 - Extended Input Streams
-
- 15.2.1 - The Extended Input Stream Protocol
-
- 15.2.2 - Extended Input Stream Conditions
-
- 15.3 - Gestures and Gesture Names
-
- 15.4 - The Pointer Protocol
-
- 15.5 - Pointer Tracking
-
- Chapter 16 - Input Editing and Completion Facilities
-
- 16.1 - Input Editing
-
- 16.1.1 - Operators for Input Editing
-
- 16.1.2 - Input Editor Commands
-
- 16.2 - Activation and Delimiter Gestures
-
- 16.3 - Signalling Errors Inside accept Methods
-
- 16.4 - Reading and Writing Tokens
-
- 16.5 - Completion
-
- 16.6 - Using with-accept-help: some examples
-
- 16.7 - Advanced Topics
-
- Chapter 17 - Formatted Output
-
- 17.1 - Formatting Tables in CLIM
-
- 17.1.1 - Conceptual Overview of Formatting Tables
-
- 17.1.2 - CLIM Operators for Formatting Tables
-
- 17.1.3 - Examples of Formatting Tables
-
- 17.1.3.1 - Formatting a Table From a List
-
- 17.1.3.2 - Formatting a Table Representing a Calendar Month
-
- 17.1.3.3 - Formatting a Table With Regular Graphic Elements
-
- 17.1.3.4 - Formatting a Table With Irregular Graphics in the Cells
-
- 17.1.3.5 - Formatting a Table of a Sequence of Items
-
- 17.2 - Formatting Graphs in CLIM
-
- 17.2.1 - Conceptual Overview of Formatting Graphs
-
- 17.2.2 - CLIM Operators for Graph Formatting
-
- 17.2.3 - Examples of CLIM Graph Formatting
-
- 17.3 - Formatting Text in CLIM
-
- 17.4 - Bordered Output in CLIM
-
- 17.5 - Advanced Topics
-
- 17.5.1 - The Table Formatting Protocol
-
- 17.5.1.1 - The Row and Column Formatting Protocol
-
- 17.5.1.2 - The Cell Formatting Protocol
-
- 17.5.2 - The Item List Formatting Protocol
-
- 17.5.3 - The Graph Formatting Protocol
-
- Chapter 18 - Sheets
-
- 18.1 - Overview of Window Facilities
-
- 18.1.1 - Properties of Sheets
-
- 18.1.2 - Sheet Protocols
-
- 18.2 - Basic Sheet Classes
-
- 18.3 - Relationships Between Sheets
-
- 18.3.1 - Sheet Relationship Functions
-
- 18.3.2 - Sheet Genealogy Classes
-
- 18.4 - Sheet Geometry
-
- 18.4.1 - Sheet Geometry Functions
-
- 18.4.2 - Sheet Geometry Classes
-
- 18.5 - Sheet Protocols: Input
-
- 18.5.1 - Input Protocol Functions
-
- 18.5.2 - Input Protocol Classes
-
- 18.6 - Standard Device Events
-
- 18.7 - Sheet Protocols: Output
-
- 18.7.1 - Mediums and Output Properties
-
- 18.7.2 - Output Protocol Functions
-
- 18.7.3 - Output Protocol Classes
-
- 18.7.4 - Associating a Medium With a Sheet
-
- 18.8 - Repaint Protocol
-
- 18.8.1 - Repaint Protocol Functions
-
- 18.8.2 - Repaint Protocol Classes
-
- 18.9 - Sheet Notification Protocol
-
- 18.9.1 - Relationship to Window System Change Notifications
-
- 18.9.2 - Sheet Geometry Notifications
-
- Chapter 19 - Ports, Grafts, and Mirrored Sheets
-
- 19.1 - Introduction
-
- 19.2 - Ports
-
- 19.3 - Grafts
-
- 19.4 - Mirrors and Mirrored Sheets
-
- 19.4.1 - Mirror Functions
-
- 19.4.2 - Internal Interfaces for Native Coordinates
-
- Appendix A - Glossary
-
- Appendix B - Implementation Specifics
-
- B.1 - Setting Up Your Packages to Use CLIM
-
- B.2 - CLIM Packages
-
- B.3 - Liquid CLIM Specifics
-
- Appendix C - The CLIM-SYS Package
-
- C.1 - Resources
-
- C.2 - Multi-Processing
-
- C.3 - Locks
-
- C.4 - Multiple-Value Setf
-
- Appendix D - LispWorks CLIM and CAPI
-
- Appendix E - Liquid CLIM and Motif
-
- Appendix F - Common Lisp Streams
-
- F.1 - Stream Classes
-
- F.2 - Basic Stream Functions
-
- F.3 - Character Input
-
- F.4 - Character Output
-
- F.5 - Binary Streams
-
- F.6 - Hardcopy Streams in CLIM
-
- Appendix G - Windows
-
- G.1 - Window Stream Operations in CLIM
-
- G.1.1 - Clearing and Refreshing the Drawing Plane
-
- G.1.2 - The Viewport and Scrolling
-
- G.1.3 - Viewport and Scrolling Operators
-
- G.2 - Functions for Operating on Windows Directly
-
- Index
-
CLIM 2.0 User's Guide - OCT 1998

Generated with Harlequin WebMaker