work on guide, and fix problems with scribble/eval
svn: r8250 original commit: 343308481a82f6999e3d84842babdfd471a3af93
This commit is contained in:
parent
e34d8e3b66
commit
0cb9be88c6
|
@ -313,7 +313,7 @@ can be read using these methods or written using
|
||||||
@scheme[write-editor-global-header] and
|
@scheme[write-editor-global-header] and
|
||||||
@scheme[write-editor-global-footer].
|
@scheme[write-editor-global-footer].
|
||||||
|
|
||||||
When reading from streams that span MrEd versions, use
|
When reading from streams that span PLT Scheme versions, use
|
||||||
@scheme[read-editor-version] before this procedure.
|
@scheme[read-editor-version] before this procedure.
|
||||||
|
|
||||||
|
|
||||||
|
@ -349,10 +349,10 @@ If @scheme[raise-errors?] is true, then an error in reading triggers an
|
||||||
|
|
||||||
This procedure is a load handler for use with @scheme[current-load].
|
This procedure is a load handler for use with @scheme[current-load].
|
||||||
|
|
||||||
The handler recognizes MrEd editor-format files (see
|
The handler recognizes PLT Scheme editor-format files (see
|
||||||
@secref["editorfileformat"]) and decodes them for loading. It is
|
@secref["editorfileformat"]) and decodes them for loading. It is
|
||||||
normally installed as MrEd starts (see
|
normally installed as MrEd starts (see @secref[#:doc reference-doc
|
||||||
@secref[#:doc reference-doc "running-sa"]).
|
"running-sa"]).
|
||||||
|
|
||||||
The handler recognizes editor files by the first twelve characters of
|
The handler recognizes editor files by the first twelve characters of
|
||||||
the file: @litchar{WXME01}@nonterm{digit}@nonterm{digit}@litchar{ ## }.
|
the file: @litchar{WXME01}@nonterm{digit}@nonterm{digit}@litchar{ ## }.
|
||||||
|
@ -409,7 +409,7 @@ One or more editors can be written to the stream by calling the
|
||||||
@scheme[read-editor-global-header] and
|
@scheme[read-editor-global-header] and
|
||||||
@scheme[read-editor-global-footer].
|
@scheme[read-editor-global-footer].
|
||||||
|
|
||||||
To support streams that span MrEd versions, use
|
To support streams that span PLT Scheme versions, use
|
||||||
@scheme[write-editor-version] before this procedure.
|
@scheme[write-editor-version] before this procedure.
|
||||||
|
|
||||||
See also @secref["editorfileformat"].
|
See also @secref["editorfileformat"].
|
||||||
|
|
|
@ -1696,11 +1696,11 @@ If @scheme[fit-on-page?] is a true value, then during printing for a
|
||||||
@scheme[text%] editor, the editor's maximum width is set to the width
|
@scheme[text%] editor, the editor's maximum width is set to the width
|
||||||
of the page (less margins) and the autowrapping bitmap is removed.
|
of the page (less margins) and the autowrapping bitmap is removed.
|
||||||
|
|
||||||
The @scheme[output-mode] setting is used for Windows and
|
The @scheme[output-mode] setting is used for Windows and Mac OS X. It
|
||||||
Mac OS X. It determines whether the output is generated
|
determines whether the output is generated directly as a PostScript
|
||||||
directly as a PostScript file (using MrEd's built-in PostScript
|
file (using PLT Scheme's built-in PostScript system) or generated
|
||||||
system) or generated using the platform-specific standard printing
|
using the platform-specific standard printing mechanism. The possible
|
||||||
mechanism. The possible values are
|
values are
|
||||||
|
|
||||||
@itemize{
|
@itemize{
|
||||||
|
|
||||||
|
|
|
@ -23,8 +23,9 @@ The editor toolbox provides a foundation for two common kinds of
|
||||||
|
|
||||||
Both kinds of applications need an extensible editor that can handle
|
Both kinds of applications need an extensible editor that can handle
|
||||||
text, images, programmer-defined items, and even embedded
|
text, images, programmer-defined items, and even embedded
|
||||||
editors. The difference between them is the layout of items. MrEd
|
editors. The difference between them is the layout of items. The
|
||||||
therefore provides two kinds of editors via two classes:
|
editor toolbox therefore provides two kinds of editors via two
|
||||||
|
classes:
|
||||||
|
|
||||||
@itemize{
|
@itemize{
|
||||||
|
|
||||||
|
@ -36,7 +37,7 @@ Both kinds of applications need an extensible editor that can handle
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MrEd's editor architecture addresses the full range of real-world
|
This editor architecture addresses the full range of real-world
|
||||||
issues for an editor---including cut-and-paste, extensible file
|
issues for an editor---including cut-and-paste, extensible file
|
||||||
formats, and layered text styles---while supporting a high level of
|
formats, and layered text styles---while supporting a high level of
|
||||||
extensibility. Unfortunately, the system is fairly complex as a
|
extensibility. Unfortunately, the system is fairly complex as a
|
||||||
|
@ -46,7 +47,7 @@ MrEd's editor architecture addresses the full range of real-world
|
||||||
descriptions above to justify the depth and complexity of the toolbox
|
descriptions above to justify the depth and complexity of the toolbox
|
||||||
and the learning investment required to use it.
|
and the learning investment required to use it.
|
||||||
|
|
||||||
A brief example illustrates how MrEd editors work. To start, an editor
|
A brief example illustrates how editors work. To start, an editor
|
||||||
needs an @scheme[editor-canvas%] to display its contents. Then, we
|
needs an @scheme[editor-canvas%] to display its contents. Then, we
|
||||||
can create a text editor and install it into the canvas:
|
can create a text editor and install it into the canvas:
|
||||||
|
|
||||||
|
@ -156,8 +157,8 @@ Applications that use the editor classes typically derive new versions
|
||||||
|
|
||||||
@section[#:tag "tb:miaoverview"]{Editor Structure and Terminology}
|
@section[#:tag "tb:miaoverview"]{Editor Structure and Terminology}
|
||||||
|
|
||||||
MrEd supports extensible and nestable editors by decomposing an editor
|
The editor toolbox supports extensible and nestable editors by
|
||||||
assembly into three functional parts:
|
decomposing an editor assembly into three functional parts:
|
||||||
|
|
||||||
@itemize{
|
@itemize{
|
||||||
|
|
||||||
|
@ -359,7 +360,7 @@ Editor data is read and written using @scheme[editor-stream-in%] and
|
||||||
@scheme[write-editor-global-footer]. Similarly, reading editors from
|
@scheme[write-editor-global-footer]. Similarly, reading editors from
|
||||||
a stream is initialized with @scheme[read-editor-global-header] and
|
a stream is initialized with @scheme[read-editor-global-header] and
|
||||||
finalized with @scheme[read-editor-global-footer]. Optionally, to
|
finalized with @scheme[read-editor-global-footer]. Optionally, to
|
||||||
support streams that span versions of MrEd, use
|
support streams that span versions of PLT Scheme, use
|
||||||
@scheme[write-editor-version] and @scheme[read-editor-version] before
|
@scheme[write-editor-version] and @scheme[read-editor-version] before
|
||||||
the header operations.
|
the header operations.
|
||||||
|
|
||||||
|
|
|
@ -186,7 +186,7 @@ If @scheme[v] is an event in MzScheme's sense (not to be confused with
|
||||||
multiple times (but it will complete a @scheme[sync] on @scheme[v] at
|
multiple times (but it will complete a @scheme[sync] on @scheme[v] at
|
||||||
most one time). If the current thread is the current eventspace's
|
most one time). If the current thread is the current eventspace's
|
||||||
handler thread, events are dispatched until a @scheme[v] sync
|
handler thread, events are dispatched until a @scheme[v] sync
|
||||||
succeeds on a MrEd event boundary. For other threads, calling
|
succeeds on an event boundary. For other threads, calling
|
||||||
@scheme[yield] with a MzScheme event is equivalent to calling
|
@scheme[yield] with a MzScheme event is equivalent to calling
|
||||||
@scheme[sync]. In either case, the result is the same that of
|
@scheme[sync]. In either case, the result is the same that of
|
||||||
@scheme[sync]; however, if a wrapper procedure is associated with
|
@scheme[sync]; however, if a wrapper procedure is associated with
|
||||||
|
|
|
@ -6,14 +6,14 @@
|
||||||
|
|
||||||
@declare-exporting[scheme/gui/base scheme/gui]
|
@declare-exporting[scheme/gui/base scheme/gui]
|
||||||
|
|
||||||
This reference manual describes the MrEd GUI toolbox that is part of
|
This reference manual describes the GUI toolbox that is part of PLT
|
||||||
PLT Scheme. See @secref[#:doc '(lib "scribblings/guide/guide.scrbl")
|
Scheme and whose core is implemented by the MrEd executable.
|
||||||
"mred"] in @italic{@link["../guide/index.html"]{A Guide to PLT
|
|
||||||
Scheme}} for an introduction to MrEd.
|
|
||||||
|
|
||||||
@defmodule*/no-declare[(scheme/gui/base)]{The
|
@defmodule*/no-declare[(scheme/gui/base)]{The
|
||||||
@schememodname[scheme/gui/base] module provides all of the class,
|
@schememodname[scheme/gui/base] library provides all of the class,
|
||||||
interface, and procedure bindings defined in this manual.}
|
interface, and procedure bindings defined in this manual. At run time,
|
||||||
|
this library needs primitive graphics support that the MrEd executable
|
||||||
|
provides; this library cannot run in MzScheme.}
|
||||||
|
|
||||||
@defmodulelang*/no-declare[(scheme/gui)]{The
|
@defmodulelang*/no-declare[(scheme/gui)]{The
|
||||||
@schememodname[scheme/gui] language combines all bindings of the
|
@schememodname[scheme/gui] language combines all bindings of the
|
||||||
|
|
|
@ -3,8 +3,8 @@
|
||||||
|
|
||||||
@title[#:style '(toc reveal)]{Overview}
|
@title[#:style '(toc reveal)]{Overview}
|
||||||
|
|
||||||
For documentation purposes, the MrEd toolbox is organized into three
|
For documentation purposes, the graphics toolbox is organized into
|
||||||
parts:
|
three parts:
|
||||||
|
|
||||||
@itemize{
|
@itemize{
|
||||||
|
|
||||||
|
|
|
@ -118,8 +118,8 @@ Hides the cursor until the user moves the mouse or clicks the mouse
|
||||||
this function calls the window's @method[top-level-window<%>
|
this function calls the window's @method[top-level-window<%>
|
||||||
on-message] method, providing @scheme[message] as the method's
|
on-message] method, providing @scheme[message] as the method's
|
||||||
argument; the result of the function call is the result returned by
|
argument; the result of the function call is the result returned by
|
||||||
the method. If no MrEd window is at the given coordinates, or if it
|
the method. If no Scheme window is at the given coordinates, or if it
|
||||||
is covered by a non-MrEd window at (@scheme[x], @scheme[y]),
|
is covered by a non-Scheme window at (@scheme[x], @scheme[y]),
|
||||||
@scheme[#f] is returned.
|
@scheme[#f] is returned.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -5,9 +5,7 @@
|
||||||
|
|
||||||
@title[#:tag "windowing-overview"]{Windowing}
|
@title[#:tag "windowing-overview"]{Windowing}
|
||||||
|
|
||||||
@section{Basic GUI Building Blocks}
|
The PLT Scheme windowing toolbox provides the basic building blocks of GUI
|
||||||
|
|
||||||
MrEd's windowing toolbox provides the basic building blocks of GUI
|
|
||||||
programs, including frames (top-level windows), modal dialogs, menus,
|
programs, including frames (top-level windows), modal dialogs, menus,
|
||||||
buttons, check boxes, text fields, and radio buttons. The toolbox
|
buttons, check boxes, text fields, and radio buttons. The toolbox
|
||||||
provides these building blocks via built-in classes, such as the
|
provides these building blocks via built-in classes, such as the
|
||||||
|
@ -132,7 +130,7 @@ For more information about window layout and containers, see
|
||||||
|
|
||||||
@section{Core Windowing Classes}
|
@section{Core Windowing Classes}
|
||||||
|
|
||||||
The fundamental graphical element in MrEd's windowing toolbox is an
|
The fundamental graphical element in the windowing toolbox is an
|
||||||
@deftech{area}. The following classes implement the different types
|
@deftech{area}. The following classes implement the different types
|
||||||
of areas in the windowing toolbox:
|
of areas in the windowing toolbox:
|
||||||
|
|
||||||
|
@ -320,7 +318,7 @@ system:
|
||||||
|
|
||||||
@section[#:tag "containeroverview"]{Geometry Management}
|
@section[#:tag "containeroverview"]{Geometry Management}
|
||||||
|
|
||||||
MrEd's geometry management makes it easy to design windows that look
|
The windowing toolbox's geometry management makes it easy to design windows that look
|
||||||
right on all platforms, despite different graphical representations
|
right on all platforms, despite different graphical representations
|
||||||
of GUI elements. Geometry management is based on containers; each
|
of GUI elements. Geometry management is based on containers; each
|
||||||
container arranges its children based on simple constraints, such as
|
container arranges its children based on simple constraints, such as
|
||||||
|
@ -742,7 +740,7 @@ Despite the programming convenience provided by a purely sequential
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
In MrEd, an @deftech{eventspace} is a context for processing GUI
|
An @deftech{eventspace} is a context for processing GUI
|
||||||
events. Each eventspace maintains its own queue of events, and events
|
events. Each eventspace maintains its own queue of events, and events
|
||||||
in a single eventspace are dispatched sequentially by a designated
|
in a single eventspace are dispatched sequentially by a designated
|
||||||
@deftech{handler thread}. An event-handling procedure running in this
|
@deftech{handler thread}. An event-handling procedure running in this
|
||||||
|
|
Loading…
Reference in New Issue
Block a user