.
original commit: 48d3ebbd4d44b21dbf518418ccff71f726ca6c56
This commit is contained in:
parent
0b4f4c0b1a
commit
e5c95e163f
|
@ -37,7 +37,8 @@ MrEd 53 comprised two parts:
|
||||||
For MrEd 100, we moved the boundary between the core toolbox and the
|
For MrEd 100, we moved the boundary between the core toolbox and the
|
||||||
application framework. "MrEd" now refers to only the core toolbox,
|
application framework. "MrEd" now refers to only the core toolbox,
|
||||||
which now includes the most useful `mred:' classes from the old
|
which now includes the most useful `mred:' classes from the old
|
||||||
application framework. We eliminated the `wx:' and `mred:' prefixes.
|
application framework. We collapsed the `wx:' and `mred:' classes and
|
||||||
|
eliminated the prefixes.
|
||||||
|
|
||||||
All of the core toolbox classes are built into the MrEd executable.
|
All of the core toolbox classes are built into the MrEd executable.
|
||||||
The old `mred:' classes that are not part of the core toolbox have
|
The old `mred:' classes that are not part of the core toolbox have
|
||||||
|
@ -48,11 +49,11 @@ Running MrEd and Developing MrEd Applications
|
||||||
---------------------------------------------
|
---------------------------------------------
|
||||||
|
|
||||||
MrEd 100 is more consistent with MzScheme than previous releases. The
|
MrEd 100 is more consistent with MzScheme than previous releases. The
|
||||||
default language for MrEd 100 is the MzScheme's default language,
|
default language for MrEd 100 is the same as MzScheme's default
|
||||||
whereas MrEd 53's language had different case-sensitivity and
|
language, whereas MrEd 53's language had different case-sensitivity
|
||||||
cond-fallthrough behavior. Command-line handling for MrEd 100 is the
|
and cond-fallthrough behavior. Command-line handling for MrEd 100 is
|
||||||
same as for MzScheme; the only difference is that MrEd executes
|
nearly the same as for MzScheme; the only difference is that MrEd
|
||||||
`(graphical-read-eval-print-loop)' on startup instead of
|
executes `(graphical-read-eval-print-loop)' on startup instead of
|
||||||
`(read-eval-print-loop)'. Programmers no longer need to understand
|
`(read-eval-print-loop)'. Programmers no longer need to understand
|
||||||
units and collections to implement a simple MrEd application.
|
units and collections to implement a simple MrEd application.
|
||||||
|
|
||||||
|
@ -73,9 +74,9 @@ toolbox. Section 2 lists all the methods of the new interfaces and
|
||||||
classes. Section 3 lists the complete, new set of MrEd procedures,
|
classes. Section 3 lists the complete, new set of MrEd procedures,
|
||||||
showing the arguments for selected new procedures. Section 4 provides
|
showing the arguments for selected new procedures. Section 4 provides
|
||||||
a mapping from the old `wx:const-XXX' constants to the new
|
a mapping from the old `wx:const-XXX' constants to the new
|
||||||
symbols. Finally, Section 5 lists some of the small and relatively
|
symbols. Finally, Section 5 lists some of the small, relatively
|
||||||
subtle changes in MrEd 100 (similar to changes listed in the HISTORY
|
subtle, and potentially confusing changes in MrEd 100 (similar to
|
||||||
notes for an average MrEd release).
|
changes listed in the HISTORY notes for an average MrEd release).
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
0. Highlights of the New MrEd Toolbox
|
0. Highlights of the New MrEd Toolbox
|
||||||
|
@ -90,34 +91,32 @@ notes for an average MrEd release).
|
||||||
longer a subclass of panel%, which is itself no longer a subclass
|
longer a subclass of panel%, which is itself no longer a subclass
|
||||||
of canvas%.
|
of canvas%.
|
||||||
|
|
||||||
* Interfaces are widely used in the toolbox. The old toolbox had
|
Interfaces are widely used in the toolbox. The old toolbox provided
|
||||||
"classes" like wx:window% that could not be instantiated. The new
|
many "classes" like wx:window% that could not be instantiated. The
|
||||||
toolbox has a window<%> interface ("<%>" is the conventional suffix
|
new toolbox has a window<%> interface ("<%>" is the conventional
|
||||||
for interfaces).
|
suffix for interfaces).
|
||||||
|
|
||||||
* Instead of null, #f is used for the "no appropriate value" value,
|
* Instead of null, #f is used for the "no appropriate value" value,
|
||||||
such as the parent argument for a frame that does not have a parent
|
such as the parent argument for a frame that does not have a parent
|
||||||
window, or the result for get-label when the window does not have a
|
window, or the result for get-label when the window does not have a
|
||||||
label.
|
label.
|
||||||
|
|
||||||
* There are no wx:const-... values. Instead, methods that used to
|
There are no wx:const-... values. Instead, a method that used to
|
||||||
take a single (numerical) wx:const- flag now take a symbol, and
|
take a single (numerical) wx:const- flag now takes a symbol, and a
|
||||||
methods that used to take bitwise-ior'd wx:const- integers now take
|
method that used to take bitwise-ior'd wx:const- integers now takes
|
||||||
a list of symbols. For example, wx:const-horizontal was replaced by
|
a list of symbols. For example, wx:const-horizontal was replaced by
|
||||||
'horizontal, and wx:const-bitmap-type-gif was replaced with 'gif.
|
'horizontal, and wx:const-bitmap-type-gif was replaced with 'gif.
|
||||||
|
|
||||||
* The old documentation described certain methods as consuming "small
|
* The old documentation described certain methods as consuming "small
|
||||||
integer" values; the implementation actually accepted any sort of
|
integer" values; the implementation actually accepted any sort of
|
||||||
number and coerced it to a machine-word integer.
|
number and coerced it to a machine-word integer. Methods now
|
||||||
|
consume a precisely defined class of numbers. For example, most
|
||||||
Methods now consume an explicitly defined class of numbers. For
|
windowing methods that formerly consumed "small integers" now
|
||||||
example, most windowing methods that formerly consumed "small
|
consume "exact integers in [0, 10000]". The implementation signals
|
||||||
integers" now consume "exact integers in [0,10000]". The
|
an exception when provided an inexact number, a non-integer, or an
|
||||||
implementation signals an exception when provided an inexact
|
integer outside the range [0, 10000]. A few methods consume
|
||||||
number, a non-integer, or an integer outside the range [0,10000]. A
|
arbitrary exact non-negative integers; those methods behave
|
||||||
few methods consume arbitrary exact non-negative integers; those
|
correctly when provided an integer represented as a bignum.
|
||||||
methods behave correctly when provided an integer represented as a
|
|
||||||
bignum.
|
|
||||||
|
|
||||||
In the windowing toolbox, object-specific out-of-range errors are
|
In the windowing toolbox, object-specific out-of-range errors are
|
||||||
now signalled by a mismatch exception. (In previous versions of
|
now signalled by a mismatch exception. (In previous versions of
|
||||||
|
@ -133,19 +132,11 @@ notes for an average MrEd release).
|
||||||
menu is created by supplying the parent menu bar as an
|
menu is created by supplying the parent menu bar as an
|
||||||
initialization argument (or a parent menu to create a submenu). A
|
initialization argument (or a parent menu to create a submenu). A
|
||||||
menu item is created by instantiating menu-item% or
|
menu item is created by instantiating menu-item% or
|
||||||
checkable-menu-item% with a menu argument. There are no integer
|
checkable-menu-item% with a menu argument. Integer menu IDs have
|
||||||
menu IDs anywhere; when a menu item is selected, a callback
|
been eliminated; when a menu item is selected, a callback
|
||||||
associated with the menu item is executed, just as when a button is
|
associated with the menu item is executed, just as when a button is
|
||||||
clicked.
|
clicked.
|
||||||
|
|
||||||
* Initialization arguments for creating windows have been re-ordered.
|
|
||||||
In general, the order is as follows:
|
|
||||||
|
|
||||||
label [sub-labels] callback parent [init-value] style
|
|
||||||
^- e.g., items in a radio box
|
|
||||||
|
|
||||||
where style is a list of symbols.
|
|
||||||
|
|
||||||
* The "media" names have changed. Roughly, we replaced "media" with
|
* The "media" names have changed. Roughly, we replaced "media" with
|
||||||
"editor", or dropped "media" it when "editor" is not useful. The
|
"editor", or dropped "media" it when "editor" is not useful. The
|
||||||
following is the name mapping for some commonly used classes:
|
following is the name mapping for some commonly used classes:
|
||||||
|
@ -184,7 +175,7 @@ notes for an average MrEd release).
|
||||||
keyboard focus.
|
keyboard focus.
|
||||||
|
|
||||||
* The text-field% control (formerly wx:text% and wx:multi-text%)
|
* The text-field% control (formerly wx:text% and wx:multi-text%)
|
||||||
works well on all platforms because it is implemented using the
|
works well on all platforms, because it is implemented using the
|
||||||
editor classes. (The equivalent of a wx:multi-text% is created via
|
editor classes. (The equivalent of a wx:multi-text% is created via
|
||||||
a style flag for text-field%.)
|
a style flag for text-field%.)
|
||||||
|
|
||||||
|
@ -227,7 +218,13 @@ notes for an average MrEd release).
|
||||||
canvas drawing must use get-dc to get a drawing context (which
|
canvas drawing must use get-dc to get a drawing context (which
|
||||||
always had a more complete set of methods, anyway).
|
always had a more complete set of methods, anyway).
|
||||||
|
|
||||||
* Some methods have been renamed to be either more (accurately)
|
* Initialization arguments for creating windows have been re-ordered.
|
||||||
|
In general, the order is as follows:
|
||||||
|
label [sub-labels] callback parent [init-value] style
|
||||||
|
^- e.g., items in a radio box
|
||||||
|
where style is a list of symbols.
|
||||||
|
|
||||||
|
Some methods have been renamed to be either more (accurately)
|
||||||
descriptive or more consistent with other method names. American
|
descriptive or more consistent with other method names. American
|
||||||
spelling is used everywhere: colour -> color, centre -> center,
|
spelling is used everywhere: colour -> color, centre -> center,
|
||||||
grey -> gray.
|
grey -> gray.
|
||||||
|
@ -1006,10 +1003,11 @@ get-the-buffer-data-class-list
|
||||||
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
5. Relatively subtle changes
|
5. Relatively subtle and potentially confusing changes
|
||||||
======================================================================
|
======================================================================
|
||||||
|
|
||||||
Added queue-callback: (queue-callback proc [hi-priority?])
|
Added queue-callback: (queue-callback proc [hi-priority?])
|
||||||
|
and removed MzScheme's semaphore-callback
|
||||||
|
|
||||||
key-event%'s key-code method was removed
|
key-event%'s key-code method was removed
|
||||||
|
|
||||||
|
@ -1019,20 +1017,9 @@ key-event%'s get-key-code returns a character or a symbol
|
||||||
window<%>'s set-cursor no longer returns the cursor; added get-cursor,
|
window<%>'s set-cursor no longer returns the cursor; added get-cursor,
|
||||||
instead
|
instead
|
||||||
|
|
||||||
editor-snip%'s resize method no longer calls the embedded buffer's
|
key-event% for a numpad Enter key in Xt reports 'numpad-enter for the
|
||||||
set-max-size and set-min-size; now it calls on-display-size
|
|
||||||
|
|
||||||
media-buffer%'s do-edit changed to editor<%>'s do-edit-operation,
|
|
||||||
takes a symbol instead of a number
|
|
||||||
|
|
||||||
pasteboard%'s {on,after}-interactive-move takes a mouse-event% object
|
|
||||||
|
|
||||||
Xt: key-event% for a numpad Enter key reports 'numpad-enter for the
|
|
||||||
key code instead of #\return
|
key code instead of #\return
|
||||||
|
|
||||||
An editor's selection caret now blinks; added a blink-caret method to
|
|
||||||
editor<%> and snip%
|
|
||||||
|
|
||||||
Added 'unknown image kind for bitmap%'s load-file, etc., which
|
Added 'unknown image kind for bitmap%'s load-file, etc., which
|
||||||
examines the file to determine the type automatically.
|
examines the file to determine the type automatically.
|
||||||
|
|
||||||
|
@ -1043,21 +1030,32 @@ canvas%'s get-view-start returns values in pixels, not scroll units
|
||||||
For canvas%'s set-scrollbars, #f indicates a disabled scrollbar rather
|
For canvas%'s set-scrollbars, #f indicates a disabled scrollbar rather
|
||||||
than a non-positive number
|
than a non-positive number
|
||||||
|
|
||||||
editor-wordbreak-map%'s get-map and set-map now work on characters
|
A text editor's selection caret now blinks; added a blink-caret method
|
||||||
instead of integers
|
to editor<%> and snip%
|
||||||
|
|
||||||
text%'s find-string and find-string-all use symbols to specify the
|
|
||||||
direction, 'forward or 'backward instead of -1 or 1.
|
|
||||||
|
|
||||||
In editor<%>'s scroll-to, text%'s scroll-to-position and
|
In editor<%>'s scroll-to, text%'s scroll-to-position and
|
||||||
set-position-bias-scroll, editor-admin%'s scroll-to, and
|
set-position-bias-scroll, editor-admin%'s scroll-to, and
|
||||||
snip-admin%'s scroll-to, bias changed from an integer to a symbol
|
snip-admin%'s scroll-to, bias changed from an integer to a symbol
|
||||||
(see the docs for details)
|
(see the docs for details)
|
||||||
|
|
||||||
|
media-buffer%'s do-edit changed to editor<%>'s do-edit-operation,
|
||||||
|
which takes a symbol instead of a number
|
||||||
|
|
||||||
|
Changed editor<%>'s modified? to is-modified?, added is-locked?
|
||||||
|
|
||||||
|
editor-wordbreak-map%'s get-map and set-map now work on characters
|
||||||
|
instead of integers
|
||||||
|
|
||||||
|
text%'s find-string and find-string-all use symbols to specify the
|
||||||
|
direction, 'forward or 'backward instead of -1 or 1.
|
||||||
|
|
||||||
Changed arguments and default value of fit-on-page? for print in
|
Changed arguments and default value of fit-on-page? for print in
|
||||||
editor<%>
|
editor<%>
|
||||||
|
|
||||||
Changed editor<%>'s modified? to is-modified?, added is-locked?
|
pasteboard%'s {on,after}-interactive-move takes a mouse-event% object
|
||||||
|
|
||||||
|
editor-snip%'s resize method no longer calls the embedded buffer's
|
||||||
|
set-max-size and set-min-size; now it calls on-display-size
|
||||||
|
|
||||||
clipboard% changed to clipboard<%> and font-name-directory% changed to
|
clipboard% changed to clipboard<%> and font-name-directory% changed to
|
||||||
font-name-directory<%>; there is just once instance, the-clipboard
|
font-name-directory<%>; there is just once instance, the-clipboard
|
||||||
|
@ -1072,6 +1070,8 @@ the-color-database only has a find-color method; the others were
|
||||||
TODO: Miscellaneous Cleanup
|
TODO: Miscellaneous Cleanup
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
|
||||||
Fix pen stipples
|
Fix pen stipples under Windows
|
||||||
|
|
||||||
|
Enter/leave under Windows
|
||||||
|
|
||||||
Move the editor margin settings into ps-setup%?
|
Move the editor margin settings into ps-setup%?
|
||||||
|
|
Loading…
Reference in New Issue
Block a user