From 51e326192b5cdef52d8db53e7cfa155e113f7446 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Fri, 28 Aug 1998 00:43:17 +0000 Subject: [PATCH] ... original commit: 2635fd9945cb6740b68347fe848f7802784f72be --- notes/mred/MrEd 100 Framework | 179 ++++++++++++---------------------- 1 file changed, 61 insertions(+), 118 deletions(-) diff --git a/notes/mred/MrEd 100 Framework b/notes/mred/MrEd 100 Framework index 6a0fd4df..4c287c55 100644 --- a/notes/mred/MrEd 100 Framework +++ b/notes/mred/MrEd 100 Framework @@ -1,8 +1,5 @@ MrEd 100 Framework revision -NOTE: some used but non-existant interfaces from mred engine: - frame<%>, - The framework is a streamlined version of the `mred:' names from MrEd version 53. @@ -10,7 +7,7 @@ Several of the old classes and proecedures are not longer in the framework. Some have been eliminated and some have been moved out into a separate application. -The eliminated classes and functions are: +The eliminated classes are: :: classes that used to improve the wx: toolbox :: interface and are no longer needed @@ -19,7 +16,6 @@ The eliminated classes and functions are: mred:check-box% mred:choice% mred:dialog-box% - mred:edit% (only the name alias is gone; mred:file-edit lives on) mred:frame% mred:gauge% mred:horizontal-panel% @@ -34,16 +30,35 @@ The eliminated classes and functions are: mred:text-window% mred:vertical-panel% mred:media-canvas% - + mred:connections-frame% + mred:connections-dialog-box% + mred:connections-media-edit% + mred:connections-media-pasteboard% + mred:connections-media-canvas% + mred:connections-panel% + mred:testable-button% + mred:testable-check-box% + mred:testable-choice% + mred:testable-dialog-box% + mred:testable-gauge% + mred:testable-list-box% + mred:testable-message% + mred:testable-multi-text% + mred:testable-panel% + mred:testable-radio-box% + mred:testable-slider% + mred:testable-text% + mred:testable-text-window% mred:menu% mred:menu-bar% mred:menu-frame% - - mred:media-text-edit% (use a text%) - mred:media-text-canvas% (use a text%) - mred:media-multi-text% (use a multi-text%) + mred:media-text-edit% (use a text-field%) + mred:media-text-canvas% (use a text-field%) + mred:media-multi-text% (use a text-field% with 'multiple style) mred:canvas-message% (use a message%) + mred:edit% (only the name alias is gone; mred:file-edit lives on) + :: modes have just become mixins mred:basic-mode% @@ -58,7 +73,6 @@ The eliminated classes and functions are: mred:editor-frame% mred:transparent-io-edit% - The moved functions and classes are: :: web browswer @@ -74,33 +88,20 @@ The moved functions and classes are: mred:graph-pasteboard% mred:node-snip% -The remaining existant functions and classes: +The remaining existant classes: - connections:frame% = (connections:make-top-level-window% testable-frame%) - connections:dialog-box% = (connections:make-top-level-window% dialog-bo%) - connections:text% = (connections:make-editor% edit%) - connections:pasteboard% = (connections:make-editor% pasteboard%) - connections:editor-canvas% = - (connections:make-editor-canvas% testable-media-canvas%) - connections:panel% = (connections:make-panel% testable-panel%) - connections:horizontal-panel% = - (connections:make-panel% testable-horizontal-panel%) - connections:vertical-panel% = - (connections:make-panel% testable-vertical-panel%) - connections:single-panel% = (connections:make-panel% testable-single-panel%) - frame:empty% = (frame:make-empty% frame%) frame:standard-menus% = (frame:make-standard-menus% frame:empty%) frame:simple-menu% = (frame:make-simple-menu% frame:standard-menus%) frame:searchable% = (frame:make-searchable% frame:simple-menu%) frame:info% = (frame:make-info% frame:searchable%) - frame:info-file% = (frame:make-info-file% frame:info%) + frame:info-file% = (frame:make-file% frame:info%) frame:pasteboard% = (frame:make-pasteboard% frame:simple-menu%) frame:pasteboard-info% = (frame:make-info% frame:pasteboard%) - frame:pasteboard-info-file% = (frame:make-info-file% frame:pasteboard-info%) + frame:pasteboard-info-file% = (frame:make-file% frame:pasteboard-info%) text:basic% = - (text:make-basic% (editor:make-basic% connections:text%)) + (text:make-basic% (editor:make-basic% text%)) text:return% = (text:make-return% text:basic%) text:searching% = (text:make-searching% text:basic%) text:info% = @@ -114,22 +115,18 @@ The remaining existant functions and classes: text:scheme% = (text:make-scheme% text:backup-autosave%) - pasteboard:basic% = (editor:make-basic% connections:pasteboard%) + pasteboard:basic% = (editor:make-basic% pasteboard%) pasteboard:info% = (editor:make-info% pasteboard:basic%) pasteboard:file% = (editor:make-file% pasteboard:info%) pasteboard:backup-autosave% = (editor:make-backup-autosave% pasteboard:info%) - editor-canvas:one-line% = - (editor-canvas:make-one-line% connections:editor-canvas%) - editor-canvas:wrapping% = - (editor-canvas:make-wrapping% connections:editor-canvas%) editor-canvas:frame-title% = - (editor-canvas:make-frame-title% editor-canvas:wrapping%) + (editor-canvas:make-frame-title% editor-canvas%) editor-canvas:wide-snip% = (editor-canvas:make-wide-snip% editor-canvas:frame-title%) - panel:vertical-edit% = (panel:make-edit% testable:vertical-panel%) - panel:horizontal-edit% = (panel:make-edit% testable:horizontal-panel%) + panel:vertical-edit% = (panel:make-edit% vertical-panel%) + panel:horizontal-edit% = (panel:make-edit% horizontal-panel%) snip:basic-style% = (snip:make-basic-style% snip%) snip:basic-style-media% = (snip:make-basic-style% media-snip%) @@ -140,18 +137,6 @@ The remaining existant functions and classes: Old to new name mapping: - mred:connections-frame% -> connections:frame% - mred:connections-dialog-box% -> connections:dialog-box% - mred:connections-media-edit% -> connections:text% - mred:connections-media-pasteboard% -> connections:pasteboard% - mred:connections-media-canvas% -> connections:editor-canvas% - - mred:connections-panel% -> connections:panel% - ; this class used to be a superclass of mred:panel%; now it is a derived - ; class. So, the functionality is now in four different classes: - ; mred:connections-panel%, mred:connections-horizontal-panel%, - ; mred:connections-vertical-panel%, and mred:connections-single-panel%) - mred:empty-frame% -> frame:empty% mred:standard-menus-frame% -> frame:standard-menus% mred:simple-menu-frame% -> frame:simple-menu% @@ -195,87 +180,45 @@ Old to new name mapping: Mixins: - connections:make-top-level-window% : top-level-window<%> -> - connections-top-level-window<%> - connections:make-editor% : editor<%> -> connections:editor<%> - connections:make-editor-canvas% : editor-canvas<%> -> - connections:editor-canvas<%> - connections:make-panel% : panel<%> -> connections:panel<%> - +NOTE: some used but non-existant interfaces from mred engine: + frame<%>, panel<%>, editor-canvas<%>, and text<%>. + For now, these will use some "class derived from" predicate, + with the corresponding engine classes. Perhaps later those + interfaces will be added. + frame:make-empty% : frame<%> -> frame:empty<%> frame:make-standard-menus% : frame<%> -> frame:standard-menus<%> frame:make-simple-menu% : (interface (frame:standard-menus<%> frame:empty<%>)) -> frame:simple-menu<%> - frame:make-searchable% : - frame:make-info% - frame:make-info-file% - frame:make-pasteboard% - frame:make-info% - frame:make-info-file% + frame:make-searchable% : frame:simple-menu<%> -> frame:searchable<%> + frame:make-pasteboard% : frame:simple-menu<%> -> frame:pasteboard<%> + frame:make-info% : frame:simple-menu<%> -> frame:info<%> + frame:make-file% : frame:simple-menu<%> -> frame:info-file<%> - editor:make-basic% - editor:make-info% - editor:make-file% - editor:make-backup-autosave% - - text:make-basic% - text:make-return% - text:make-searching% - text:make-info% - text:make-clever-file-format% - text:make-scheme% - - editor-canvas:make-one-line% - editor-canvas:make-wrapping% - editor-canvas:make-frame-title% - editor-canvas:make-wide-snip% - - panel:make-edit% - - snip:make-basic-style% - - ; make-basic-editor% adds keymap support, error checking on load-file + ; editor:make-basic% adds keymap support, error checking on load-file ; run-after-edit-sequence, locked?, get-edit-snip, ; get-pasteboard-snip, sets up parents for get-file and put-file + editor:make-basic% : editor<%> -> editor:basic<%> + editor:make-info% : editor:basic<%> -> editor:info<%> + editor:make-file% : editor:basic<%> -> editor:basic<%> + editor:make-backup-autosave% : editor:basic<%> -> editor:autosave<%> - ; make-basic-text% adds ranges, wrapping, move/copy-to-edit + ; text:make-basic% adds ranges, wrapping, move/copy-to-edit + text:make-basic% : (interface (editor:basic<%> text<%>)) -> text:basic<%> + text:make-return% : text<%> -> editor:basic<%> + text:make-searching% : (interface (editor:basic<%> text<%>)) -> text:searching<%> + text:make-clever-file-format% : text<%> -> editor<%> + text:make-scheme% : (interface (editor:basic<%> text<%>)) -> editor:scheme<%> + + editor-canvas:make-frame-title% : editor-canvas<%> -> editor-canvas<%> + editor-canvas:make-wide-snip% : editor-canvas<%> -> editor-canvas:wide-snip<%> + + panel:make-edit% : panel<%> -> panel:edit<%> + + snip:make-basic-style% : snip<%> -> snip<%> Interfaces: - testable:get-active<%> = (interface () get-focused-window - set-focused-window - get-active?) - testable:get-focus<%> = (interface ()) - - connections:top-level-window<%> = - (interface () - shown - active-edit - active-canvas - on-frame-active) - connections:editor-canvas<%> = - (interface () - shown - edit-renamed - edit-modified) - connections:panel<%> = - (interface () - frame)) - connections:editor<%> =ss - (interface () - on-set-focus - on-kill-focus - - get-canvas - get-frame - - active-canvas - set-active-canvas - - canvases - add-canvas - - ; adds keymap handling frame:empty<%> = (interface () get-panel%