save define-class-doc approach before trying to get rid of a lyer of bindings

svn: r7281
This commit is contained in:
Matthew Flatt 2007-09-05 14:18:44 +00:00
parent 39eb8bec5a
commit 7e085ae75f
109 changed files with 313 additions and 220 deletions

View File

@ -159,7 +159,7 @@
[(italic) (wrap e "textit" #f)]
[(bold) (wrap e "textbf" #f)]
[(tt) (wrap e "mytexttt" #t)]
[(nobreak) (super render-element e part ri)]
[(no-break) (super render-element e part ri)]
[(sf) (wrap e "textsf" #f)]
[(subscript) (wrap e "textsub" #f)]
[(superscript) (wrap e "textsuper" #f)]

View File

@ -1322,7 +1322,9 @@
;; ----------------------------------------
(provide defclass
define-class-doc
definterface
define-interface-doc
defconstructor
defconstructor/make
defconstructor*/make
@ -1332,6 +1334,7 @@
methspec
methimpl
this-obj
include-class-section
include-class)
(define-syntax-parameter current-class #f)
@ -1426,7 +1429,7 @@
ht))
ht)))
(define (*include-class decl)
(define (*include-class-section decl)
(make-splice
(cons (section #:style 'hidden (to-element (decl-name decl)))
(map (lambda (i)
@ -1439,11 +1442,32 @@
((decl-mk-head decl) #t)
(decl-body decl))))))
(define (*include-class decl)
(make-splice
(append
((decl-mk-head decl) #f)
(list
(make-blockquote
"leftindent"
(flow-paragraphs
(decode-flow
(map (lambda (i)
(cond
[(constructor? i) ((constructor-def i))]
[(meth? i)
((meth-def i) (meth-desc i))]
[else i]))
(decl-body decl)))))))))
(define-syntax include-class-section
(syntax-rules ()
[(_ id) (*include-class-section (class-doc-info id))]))
(define-syntax include-class
(syntax-rules ()
[(_ id) (*include-class (class-doc-info id))]))
(define (*defclass stx-id super intfs whole-page?)
(define (*define-class-doc stx-id super intfs whole-page?)
(let ([spacer (hspace 1)])
(make-table
'boxed
@ -1497,7 +1521,7 @@
(make-flow (list (make-paragraph (list (to-element i)))))))
(cdr intfs)))))))))))))
(define-syntax defclass
(define-syntax define-class-doc
(syntax-rules ()
[(_ name super (intf ...) body ...)
(define-class-doc-info name
@ -1507,13 +1531,20 @@
(list (class-doc-info intf) ...)
(lambda (whole-page?)
(list
(*defclass (quote-syntax/loc name)
(quote-syntax super)
(list (quote-syntax intf) ...)
whole-page?)))
(*define-class-doc (quote-syntax/loc name)
(quote-syntax super)
(list (quote-syntax intf) ...)
whole-page?)))
(list body ...))))]))
(define-syntax definterface
(define-syntax defclass
(syntax-rules ()
[(_ name . rest)
(begin
(define-class-doc name . rest)
(include-class name))]))
(define-syntax define-interface-doc
(syntax-rules ()
[(_ name (intf ...) body ...)
(define-class-doc-info name
@ -1523,12 +1554,19 @@
(list (class-doc-info intf) ...)
(lambda (whole-page?)
(list
(*defclass (quote-syntax/loc name)
#f
(list (quote-syntax intf) ...)
whole-page?)))
(*define-class-doc (quote-syntax/loc name)
#f
(list (quote-syntax intf) ...)
whole-page?)))
(list body ...))))]))
(define-syntax definterface
(syntax-rules ()
[(_ name . rest)
(begin
(define-interface-doc name . rest)
(include-class name))]))
(define-syntax (defconstructor*/* stx)
(syntax-case stx ()
[(_ mode ((arg ...) ...) desc ...)

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[add-color<%> ()]{
@define-interface-doc[add-color<%> ()]{
An @scheme[add-color<%>] object is used to additively change the RGB
values of a @scheme[color%] object. An @scheme[add-color<%>] object

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["area-intf.scrbl"]
@definterface[area-container<%> (area<%>)]{
@define-interface-doc[area-container<%> (area<%>)]{
An @scheme[area-container<%>] is a container @scheme[area<%>].

View File

@ -3,7 +3,7 @@
@require["area-container-intf.scrbl"]
@require["window-intf.scrbl"]
@definterface[area-container-window<%> (area-container<%> window<%>)]{
@define-interface-doc[area-container-window<%> (area-container<%> window<%>)]{
Combines two interfaces.

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[area<%> ()]{
@define-interface-doc[area<%> ()]{
An @scheme[area<%>] object is either a window or a windowless
container for managing the position and size of other areas. An

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[bitmap% object% ()]{
@define-class-doc[bitmap% object% ()]{
A @scheme[bitmap%] object is a pixel-based image, either
monochrome or color.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["dc-intf.scrbl"]
@defclass[bitmap-dc% object% (dc<%>)]{
@define-class-doc[bitmap-dc% object% (dc<%>)]{
A @scheme[bitmap-dc%] object allows drawing directly into a bitmap. A
@scheme[bitmap%] object must be supplied at initialization or

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[brush% object% ()]{
@define-class-doc[brush% object% ()]{
A brush is a drawing tool with a color and a style that is used for
filling in areas, such as the interior of a rectangle or ellipse. On

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[brush-list% object% ()]{
@define-class-doc[brush-list% object% ()]{
A @scheme[brush-list%] object maintains a list of @scheme[brush%]
objects to avoid creating brushes repeatedly. A @scheme[brush%]

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["control-intf.scrbl"]
@defclass[button% object% (control<%>)]{
@define-class-doc[button% object% (control<%>)]{
Whenever a button is clicked by the user, the buttons's callback
procedure is invoked. A callback procedure is provided as an

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["canvas-intf.scrbl"]
@defclass[canvas% object% (canvas<%>)]{
@define-class-doc[canvas% object% (canvas<%>)]{
A @scheme[canvas%] object is a general-purpose window for drawing
and handling events.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["subwindow-intf.scrbl"]
@definterface[canvas<%> (subwindow<%>)]{
@define-interface-doc[canvas<%> (subwindow<%>)]{
A canvas is a subwindow onto which graphics and text can be drawn. Canvases also
receive mouse and keyboard events.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["control-intf.scrbl"]
@defclass[check-box% object% (control<%>)]{
@define-class-doc[check-box% object% (control<%>)]{
A check box is a labeled box which is either checked or unchecked.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["selectable-menu-item-intf.scrbl"]
@defclass[checkable-menu-item% object% (selectable-menu-item<%>)]{
@define-class-doc[checkable-menu-item% object% (selectable-menu-item<%>)]{
A @scheme[checkable-menu-item%] is a string-labelled menu item that
maintains a check mark. Its parent must be a @scheme[menu%] or

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["list-control-intf.scrbl"]
@defclass[choice% object% (list-control<%>)]{
@define-class-doc[choice% object% (list-control<%>)]{
A choice item allows the user to select one string item from a pop-up
list of items. Unlike a list box, only the currently selection is

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[clipboard-client% object% ()]{
@define-class-doc[clipboard-client% object% ()]{
A @scheme[clipboard-client%] object allows a program to take over
the clipboard and service requests for clipboard data. See

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[clipboard<%> ()]{
@define-interface-doc[clipboard<%> ()]{
A single @scheme[clipboard<%>] object, @indexed-scheme[the-clipboard],
manages the content of the system-wide clipboard for cut and paste.

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[color% object% ()]{
@define-class-doc[color% object% ()]{
A color is an object representing a red-green-blue (RGB) combination
of primary colors, and is used to determine drawing colors. Each red,

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[color-database<%> ()]{
@define-interface-doc[color-database<%> ()]{
The global @indexed-scheme[the-color-database] object is an instance of
@scheme[color-database<%>]. It maintains a database of standard RGB

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["text-field-class.scrbl"]
@defclass[combo-field% text-field% ()]{
@define-class-doc[combo-field% text-field% ()]{
A @scheme[combo-field%] object is a @scheme[text-field%]
object that also resembles a @scheme[choice%] object, because it

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["event-class.scrbl"]
@defclass[control-event% event% ()]{
@define-class-doc[control-event% event% ()]{
A @scheme[control-event%] object contains information about a
control event. An instance of @scheme[control-event%] is always

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["subwindow-intf.scrbl"]
@definterface[control<%> (subwindow<%>)]{
@define-interface-doc[control<%> (subwindow<%>)]{
The @scheme[control<%>] interface is implemented by the built-in
control window classes:

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[cursor% object% ()]{
@define-class-doc[cursor% object% ()]{
A cursor is a small icon that indicates the location of the mouse
pointer. The bitmap image typically indicates the current mode or

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[dc<%> ()]{
@define-interface-doc[dc<%> ()]{
A @scheme[dc<%>] object is a drawing context for drawing graphics and
text. It represents output devices in a generic way; e.g., a canvas

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[dc-path% object% ()]{
@define-class-doc[dc-path% object% ()]{
A path is a set of figures defined by curves. A path can be used with
the @method[dc<%> draw-path] method of a @scheme[dc<%>] object to draw

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["top-level-window-intf.scrbl"]
@defclass[dialog% object% (top-level-window<%>)]{
@define-class-doc[dialog% object% (top-level-window<%>)]{
A dialog is a top-level window that is @defterm{modal}: while the
dialog is shown, all other top-level windows in the dialog's

View File

@ -7,23 +7,23 @@
@local-table-of-contents[]
@include-class[bitmap%]
@include-class[bitmap-dc%]
@include-class[brush%]
@include-class[brush-list%]
@include-class[color%]
@include-class[color-database<%>]
@include-class[dc<%>]
@include-class[dc-path%]
@include-class[font%]
@include-class[font-list%]
@include-class[font-name-directory<%>]
@include-class[gl-config%]
@include-class[gl-context<%>]
@include-class[pen%]
@include-class[pen-list%]
@include-class[point%]
@include-class[post-script-dc%]
@include-class[printer-dc%]
@include-class[ps-setup%]
@include-class[region%]
@include-class-section[bitmap%]
@include-class-section[bitmap-dc%]
@include-class-section[brush%]
@include-class-section[brush-list%]
@include-class-section[color%]
@include-class-section[color-database<%>]
@include-class-section[dc<%>]
@include-class-section[dc-path%]
@include-class-section[font%]
@include-class-section[font-list%]
@include-class-section[font-name-directory<%>]
@include-class-section[gl-config%]
@include-class-section[gl-context<%>]
@include-class-section[pen%]
@include-class-section[pen-list%]
@include-class-section[point%]
@include-class-section[post-script-dc%]
@include-class-section[printer-dc%]
@include-class-section[ps-setup%]
@include-class-section[region%]

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-admin% object% ()]{
@define-class-doc[editor-admin% object% ()]{
See @|admindiscuss| for information about the role of administrators.
The @scheme[editor-admin%] class is never instantiated directly. It

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["canvas-intf.scrbl"]
@defclass[editor-canvas% object% (canvas<%>)]{
@define-class-doc[editor-canvas% object% (canvas<%>)]{
An @scheme[editor-canvas%] object manages and displays a
@scheme[text%] or @scheme[pasteboard%] object.

View File

@ -29,34 +29,34 @@ Alphabetical:
@local-table-of-contents[]
@include-class[add-color<%>]
@include-class[editor<%>]
@include-class[editor-admin%]
@include-class[editor-canvas%]
@include-class[editor-data%]
@include-class[editor-data-class%]
@include-class[editor-data-class-list<%>]
@include-class[editor-snip-editor-admin<%>]
@include-class[editor-snip%]
@include-class[editor-stream-in%]
@include-class[editor-stream-in-base%]
@include-class[editor-stream-in-bytes-base%]
@include-class[editor-stream-out%]
@include-class[editor-stream-out-base%]
@include-class[editor-stream-out-bytes-base%]
@include-class[editor-wordbreak-map%]
@include-class[image-snip%]
@include-class[keymap%]
@include-class[mult-color<%>]
@include-class[pasteboard%]
@include-class[readable-snip<%>]
@include-class[snip%]
@include-class[snip-admin%]
@include-class[snip-class%]
@include-class[snip-class-list<%>]
@include-class[string-snip%]
@include-class[style<%>]
@include-class[style-delta%]
@include-class[style-list%]
@include-class[tab-snip%]
@include-class[text%]
@include-class-section[add-color<%>]
@include-class-section[editor<%>]
@include-class-section[editor-admin%]
@include-class-section[editor-canvas%]
@include-class-section[editor-data%]
@include-class-section[editor-data-class%]
@include-class-section[editor-data-class-list<%>]
@include-class-section[editor-snip-editor-admin<%>]
@include-class-section[editor-snip%]
@include-class-section[editor-stream-in%]
@include-class-section[editor-stream-in-base%]
@include-class-section[editor-stream-in-bytes-base%]
@include-class-section[editor-stream-out%]
@include-class-section[editor-stream-out-base%]
@include-class-section[editor-stream-out-bytes-base%]
@include-class-section[editor-wordbreak-map%]
@include-class-section[image-snip%]
@include-class-section[keymap%]
@include-class-section[mult-color<%>]
@include-class-section[pasteboard%]
@include-class-section[readable-snip<%>]
@include-class-section[snip%]
@include-class-section[snip-admin%]
@include-class-section[snip-class%]
@include-class-section[snip-class-list<%>]
@include-class-section[string-snip%]
@include-class-section[style<%>]
@include-class-section[style-delta%]
@include-class-section[style-list%]
@include-class-section[tab-snip%]
@include-class-section[text%]

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-data-class% object% ()]{
@define-class-doc[editor-data-class% object% ()]{
An @scheme[editor-data-class%] object defines a type for
@scheme[editor-data%] objects. See also @|editordatadiscuss|.

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[editor-data-class-list<%> ()]{
@define-interface-doc[editor-data-class-list<%> ()]{
Each eventspace has an instance of @scheme[editor-data-class-list<%>],
obtained with @scheme[(get-the-editor-data-class-list)]. New

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-data% object% ()]{
@define-class-doc[editor-data% object% ()]{
An @scheme[editor-data%] object contains extra data associated to a
snip or region in an editor. See also @|editordatadiscuss|.

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[editor<%> ()]{
@define-interface-doc[editor<%> ()]{
The @scheme[editor<%>] interface is implemented by @scheme[text%] and
@scheme[pasteboard%].

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["snip-class.scrbl"]
@defclass[editor-snip% snip% ()]{
@define-class-doc[editor-snip% snip% ()]{
An @scheme[editor-snip%] object is a @scheme[snip%] object that
contains and displays an @scheme[editor<%>] object. This snip class

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[editor-snip-editor-admin<%> ()]{
@define-interface-doc[editor-snip-editor-admin<%> ()]{
An instance of this administrator interface is created with each
@scheme[editor-snip%] object; new instances cannot be

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-stream-in-base% object% ()]{
@define-class-doc[editor-stream-in-base% object% ()]{
An @scheme[editor-stream-in-base%] object is used by an
@scheme[editor-stream-in%] object to perform low-level reading of

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["editor-stream-in-base-class.scrbl"]
@defclass[editor-stream-in-bytes-base% editor-stream-in-base% ()]{
@define-class-doc[editor-stream-in-bytes-base% editor-stream-in-base% ()]{
An @scheme[editor-stream-in-bytes-base%] object can be used to
read editor data from a byte string.

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-stream-in% object% ()]{
@define-class-doc[editor-stream-in% object% ()]{
An @scheme[editor-stream-in%] object is used to read editor
information from a file or other input stream (such as the

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-stream-out-base% object% ()]{
@define-class-doc[editor-stream-out-base% object% ()]{
An @scheme[editor-stream-out-base%] object is used by an
@scheme[editor-stream-out%] object to perform low-level writing of

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["editor-stream-out-base-class.scrbl"]
@defclass[editor-stream-out-bytes-base% editor-stream-out-base% ()]{
@define-class-doc[editor-stream-out-bytes-base% editor-stream-out-base% ()]{
An @scheme[editor-stream-out-bytes-base%] object can be used to write
editor data into a byte string.

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-stream-out% object% ()]{
@define-class-doc[editor-stream-out% object% ()]{
An @scheme[editor-stream-out%] object is used to write editor
information to a file or other output stream (such as the

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[editor-wordbreak-map% object% ()]{
@define-class-doc[editor-wordbreak-map% object% ()]{
An @scheme[editor-wordbreak-map%] objects is used with a
@scheme[text%] objects to specify word-breaking criteria for the

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[event% object% ()]{
@define-class-doc[event% object% ()]{
An @scheme[event%] object contains information about a control,
keyboard, mouse, or scroll event. See also

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[font% object% ()]{
@define-class-doc[font% object% ()]{
A @defterm{font} is an object which determines the appearance of text,
primarily when drawing text to a device context. A font is determined

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[font-list% object% ()]{
@define-class-doc[font-list% object% ()]{
A @scheme[font-list%] object maintains a list of @scheme[font%]
objects to avoid repeatedly creating fonts.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require[(lib "bnf.ss" "scribble")]
@definterface[font-name-directory<%> ()]{
@define-interface-doc[font-name-directory<%> ()]{
There is one @scheme[font-name-directory<%>] object:
@scheme[the-font-name-directory]. It implements the mapping from font

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["top-level-window-intf.scrbl"]
@defclass[frame% object% (top-level-window<%>)]{
@define-class-doc[frame% object% (top-level-window<%>)]{
A frame is a top-level container window. It has a title bar (which
displays the frame's label), an optional menu bar, and an optional

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["control-intf.scrbl"]
@defclass[gauge% object% (control<%>)]{
@define-class-doc[gauge% object% (control<%>)]{
A gauge is a horizontal or vertical bar for displaying the output
value of a bounded integer quantity. Each gauge has an adjustable

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[gl-config% object% ()]{
@define-class-doc[gl-config% object% ()]{
A @scheme[gl-config%] object encapsulates configuration information
for an OpenGL drawing context. Use a @scheme[gl-config%] object as an

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[gl-context<%> ()]{
@define-interface-doc[gl-context<%> ()]{
A @scheme[gl-context<%>] object represents a context for drawing with
@as-index{OpenGL} to a specific @scheme[dc<%>] instance. To obtain a

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["vertical-panel-class.scrbl"]
@defclass[group-box-panel% vertical-panel% ()]{
@define-class-doc[group-box-panel% vertical-panel% ()]{
A group-box panel arranges its subwindows in a single column, but also
draws an optional label at the top of the panel and a border around

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["pane-class.scrbl"]
@defclass[grow-box-spacer-pane% pane% ()]{
@define-class-doc[grow-box-spacer-pane% pane% ()]{
A @scheme[grow-box-spacer-pane%] object is intended for use as a
lightweight spacer in the bottom-right corner of a frame, rather than

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["pane-class.scrbl"]
@defclass[horizontal-pane% pane% ()]{
@define-class-doc[horizontal-pane% pane% ()]{
A horizontal pane arranges its subwindows in a single row. See also
@scheme[pane%].

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["panel-class.scrbl"]
@defclass[horizontal-panel% panel% ()]{
@define-class-doc[horizontal-panel% panel% ()]{
A horizontal panel arranges its subwindows in a single row. See also
@scheme[panel%].

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["snip-class.scrbl"]
@defclass[image-snip% snip% ()]{
@define-class-doc[image-snip% snip% ()]{
An @scheme[image-snip%] is a snip that can display bitmap images
(usually loaded from a file). When the image file cannot be found, a

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["event-class.scrbl"]
@defclass[key-event% event% ()]{
@define-class-doc[key-event% event% ()]{
A @scheme[key-event%] object contains information about a key press
or release event. Key events are primarily processed by

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[keymap% object% ()]{
@define-class-doc[keymap% object% ()]{
A @scheme[keymap%] object is used by @scheme[editor<%>] objects to
map keyboard and mouse sequences to arbitrary functions in an

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["menu-item-intf.scrbl"]
@definterface[labelled-menu-item<%> (menu-item<%>)]{
@define-interface-doc[labelled-menu-item<%> (menu-item<%>)]{
A @scheme[labelled-menu-item<%>] object is a @scheme[menu-item<%>] with
a string label (i.e., any menu item other than a separator). More

View File

@ -5,7 +5,7 @@
@define[lbnumnote @elem{List box items are indexed from @scheme[0].}]
@defclass[list-box% object% (list-control<%>)]{
@define-class-doc[list-box% object% (list-control<%>)]{
A list box allows the user to select one or more string items from a
scrolling list. A list box is either a single-selection control (if

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["control-intf.scrbl"]
@definterface[list-control<%> (control<%>)]{
@define-interface-doc[list-control<%> (control<%>)]{
A list control gives the user a list of string items to choose from.
There are two built-in classes that implement

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["menu-item-container-intf.scrbl"]
@defclass[menu-bar% object% (menu-item-container<%>)]{
@define-class-doc[menu-bar% object% (menu-item-container<%>)]{
A @scheme[menu-bar%] object is created for a particular
@scheme[frame%] object. A frame can have at most one menu bar;

View File

@ -3,7 +3,7 @@
@require["labelled-menu-item-intf.scrbl"]
@require["menu-item-container-intf.scrbl"]
@defclass[menu% object% (menu-item-container<%> labelled-menu-item<%>)]{
@define-class-doc[menu% object% (menu-item-container<%> labelled-menu-item<%>)]{
A @scheme[menu%] object is a submenu within a @scheme[menu%] or
@scheme[popup-menu%], or as a top-level menu in a

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["selectable-menu-item-intf.scrbl"]
@defclass[menu-item% object% (selectable-menu-item<%>)]{
@define-class-doc[menu-item% object% (selectable-menu-item<%>)]{
A @scheme[menu-item%] is a plain string-labelled menu item. Its
parent must be a @scheme[menu%] or @scheme[popup-menu%]. When the

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[menu-item-container<%> ()]{
@define-interface-doc[menu-item-container<%> ()]{
A @scheme[menu-item-container<%>] object is a @scheme[menu%],
@scheme[popup-menu%], or @scheme[menu-bar%].

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[menu-item<%> ()]{
@define-interface-doc[menu-item<%> ()]{
A @scheme[menu-item<%>] object is an element within a @scheme[menu%],
@scheme[popup-menu%], or @scheme[menu-bar%]. Operations that affect

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["control-intf.scrbl"]
@defclass[message% object% (control<%>)]{
@define-class-doc[message% object% (control<%>)]{
A message control is a static line of text or a static bitmap. The
text or bitmap corresponds to the message's label (see

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["event-class.scrbl"]
@defclass[mouse-event% event% ()]{
@define-class-doc[mouse-event% event% ()]{
A @scheme[mouse-event%] object encapsulates a mouse event.
Mouse events are primarily processed by

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[mult-color<%> ()]{
@define-interface-doc[mult-color<%> ()]{
A @scheme[mult-color<%>] object is used to scale the RGB values of a
@scheme[color%] object. A @scheme[mult-color<%>] object exist only

View File

@ -3,7 +3,7 @@
@require["area-container-intf.scrbl"]
@require["subarea-intf.scrbl"]
@defclass[pane% object% (area-container<%> subarea<%>)]{
@define-class-doc[pane% object% (area-container<%> subarea<%>)]{
A pane is a both a container and a containee area. It serves only
as a geometry management device. A @scheme[pane%]

View File

@ -3,7 +3,7 @@
@require["subwindow-intf.scrbl"]
@require["area-container-window-intf.scrbl"]
@defclass[panel% object% (area-container-window<%> subwindow<%>)]{
@define-class-doc[panel% object% (area-container-window<%> subwindow<%>)]{
A panel is a both a container and a containee window. It serves mainly
as a geometry management device, but the @scheme['border] creates a

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["editor-intf.scrbl"]
@defclass[pasteboard% object% (editor<%>)]{
@define-class-doc[pasteboard% object% (editor<%>)]{
A @scheme[pasteboard%] object is an editor for displaying snips with
arbitrary @techlink{location}s.

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[pen% object% ()]{
@define-class-doc[pen% object% ()]{
A pen is a drawing tool with a color, width, and style. A pen draws
lines and outlines, such as the outline of a rectangle. On a

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[pen-list% object% ()]{
@define-class-doc[pen-list% object% ()]{
A @scheme[pen-list%] object maintains a list of @scheme[pen%]
objects to avoid repeatedly creating pen objects. A @scheme[pen%]

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[point% object% ()]{
@define-class-doc[point% object% ()]{
A @scheme[point%] is used for certain drawing commands. It
encapsulates two real numbers.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["menu-item-container-intf.scrbl"]
@defclass[popup-menu% object% (menu-item-container<%>)]{
@define-class-doc[popup-menu% object% (menu-item-container<%>)]{
A @scheme[popup-menu%] object is created without a parent. Dynamically
display a @scheme[popup-menu%] with @xmethod[window<%> popup-menu]

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["dc-intf.scrbl"]
@defclass[post-script-dc% object% (dc<%>)]{
@define-class-doc[post-script-dc% object% (dc<%>)]{
A @scheme[post-script-dc%] object is a PostScript device context, that
can write PostScript files on any platform. See also

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["dc-intf.scrbl"]
@defclass[printer-dc% object% (dc<%>)]{
@define-class-doc[printer-dc% object% (dc<%>)]{
A @scheme[printer-dc%] object is a Windows or Mac OS X printer
device context. The class cannot be instantiated under X (an

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[ps-setup% object% ()]{
@define-class-doc[ps-setup% object% ()]{
A @scheme[ps-setup%] object contains configuration information for
producing PostScript files using a @scheme[post-script-dc%] object.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["control-intf.scrbl"]
@defclass[radio-box% object% (control<%>)]{
@define-class-doc[radio-box% object% (control<%>)]{
A @scheme[radio-box%] control allows the user to select one of

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[readable-snip<%> ()]{
@define-interface-doc[readable-snip<%> ()]{
A @scheme[readable-snip<%>] object is treated specially by the port
generated by @scheme[open-input-text-editor]. When a

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[region% object% ()]{
@define-class-doc[region% object% ()]{
A @scheme[region%] object specifies a portion of a drawing area
(possibly discontinuous). It is normally used for clipping drawing

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["event-class.scrbl"]
@defclass[scroll-event% event% ()]{
@define-class-doc[scroll-event% event% ()]{
A @scheme[scroll-event%] object contains information about a scroll
event. An instance of @scheme[scroll-event%] is always provided to

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["labelled-menu-item-intf.scrbl"]
@definterface[selectable-menu-item<%> (labelled-menu-item<%>)]{
@define-interface-doc[selectable-menu-item<%> (labelled-menu-item<%>)]{
A @scheme[selectable-menu-item<%>] object is a
@scheme[labelled-menu-item<%>] that the user can select. It may also

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["menu-item-intf.scrbl"]
@defclass[separator-menu-item% object% (menu-item<%>)]{
@define-class-doc[separator-menu-item% object% (menu-item<%>)]{
A separator is an unselectable line in a menu. Its parent must be a
@scheme[menu%] or @scheme[popup-menu%].

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["control-intf.scrbl"]
@defclass[slider% object% (control<%>)]{
@define-class-doc[slider% object% (control<%>)]{
A @scheme[slider] object is a panel item with a handle that the user can
drag to change the control's value. Each slider has a fixed minimum

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[snip-admin% object% ()]{
@define-class-doc[snip-admin% object% ()]{
See @|admindiscuss| for information about the role of administrators.
The @scheme[snip-admin%] class is never instantiated directly. It

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[snip-class% object% ()]{
@define-class-doc[snip-class% object% ()]{
Useful snip classes are defined by instantiating derived subclasses of
@scheme[snip-class%]. A class derived from @scheme[snip-class%]

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[snip-class-list<%> ()]{
@define-interface-doc[snip-class-list<%> ()]{
Each eventspace has its own instance of @scheme[snip-class-list<%>],
obtained with @scheme[(get-the-snip-class-list)]. New instances

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[snip% object% ()]{
@define-class-doc[snip% object% ()]{
A direct instance of @scheme[snip%] is uninteresting. Useful snips are
defined by instantiating derived subclasses, but this class defines

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["snip-class.scrbl"]
@defclass[string-snip% snip% ()]{
@define-class-doc[string-snip% snip% ()]{
An instance of @scheme[string-snip%] is created automatically when
text is inserted into a text editor. See also @xmethod[text%

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[style-delta% object% ()]{
@define-class-doc[style-delta% object% ()]{
A @scheme[style-delta%] object encapsulates a style change. The changes expressible
by a delta include:

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@definterface[style<%> ()]{
@define-interface-doc[style<%> ()]{
A @scheme[style<%>] object encapsulates drawing information (font,
color, alignment, etc.) in a hierarchical manner. A @scheme[style<%>]

View File

@ -1,7 +1,7 @@
#reader(lib "defreader.ss" "scribble")
@require["common.ss"]
@defclass[style-list% object% ()]{
@define-class-doc[style-list% object% ()]{
A @scheme[style-list%] object contains a set of @scheme[style<%>]
objects and maintains the hierarchical relationships between them. A

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["area-intf.scrbl"]
@definterface[subarea<%> (area<%>)]{
@define-interface-doc[subarea<%> (area<%>)]{
A @scheme[subarea<%>] is a containee @scheme[area<%>].

View File

@ -3,7 +3,7 @@
@require["window-intf.scrbl"]
@require["subarea-intf.scrbl"]
@definterface[subwindow<%> (subarea<%> window<%>)]{
@define-interface-doc[subwindow<%> (subarea<%> window<%>)]{
A @scheme[subwindow<%>] is a containee window.

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["vertical-panel-class.scrbl"]
@defclass[tab-panel% vertical-panel% ()]{
@define-class-doc[tab-panel% vertical-panel% ()]{
A tab panel arranges its subwindows in a single column, but also
includes a horizontal row of tabs at the top of the panel. See

View File

@ -2,7 +2,7 @@
@require["common.ss"]
@require["string-snip-class.scrbl"]
@defclass[tab-snip% string-snip% ()]{
@define-class-doc[tab-snip% string-snip% ()]{
An instance of @scheme[tab-snip%] is created automatically when a
tab is inserted into an editor.

View File

@ -3,7 +3,7 @@
@require["editor-intf.scrbl"]
@defclass[text% object% (editor<%>)]{
@define-class-doc[text% object% (editor<%>)]{
A @scheme[text%] object is a standard text editor. A text editor is
displayed on the screen through an @scheme[editor-canvas%] object or

Some files were not shown because too many files have changed in this diff Show More