racket/collects/scribblings/gui/brush-list-class.scrbl
Eli Barzilay 264af9a6d0 improved scribble syntax use
svn: r8720
2008-02-19 12:22:45 +00:00

41 lines
1.6 KiB
Racket

#lang scribble/doc
@(require "common.ss")
@defclass/title[brush-list% object% ()]{
A @scheme[brush-list%] object maintains a list of @scheme[brush%]
objects to avoid creating brushes repeatedly. A @scheme[brush%]
object in a brush list cannot be mutated.
A global brush list, @scheme[the-brush-list], is created
automatically.
@defconstructor/make[()]{
Creates an empty brush list.
}
@defmethod*[([(find-or-create-brush [color (is-a?/c color%)]
[style (one-of/c 'transparent 'solid 'opaque
'xor 'hilite 'panel
'bdiagonal-hatch 'crossdiag-hatch
'fdiagonal-hatch 'cross-hatch
'horizontal-hatch 'vertical-hatch)])
(is-a?/c brush%)]
[(find-or-create-brush [color-name string?]
[style (one-of/c 'transparent 'solid 'opaque
'xor 'hilite 'panel
'bdiagonal-hatch 'crossdiag-hatch
'fdiagonal-hatch 'cross-hatch
'horizontal-hatch 'vertical-hatch)])
(or/c (is-a?/c brush%) false/c)])]{
Finds a brush of the given specification, or creates one and adds it
to the list. See @scheme[brush%] for a further explanation of the
arguments, which are the same as @scheme[brush%]'s initialization
arguments.
}}