- Editing always takes place on the same line, the edit line, whose
location is user-definable e.g. as the 20th line from the topmost
visible line or x pixels from the top or bottom of the editor canvas.
- Scrolling up: the cursor stays on the edit line and the text around it
scrolls down a line. (So part of the text might show up below the edit
line.)
- Scrolling down: the cursor stays on the edit line and the text around
it moves up a line (if there is more text below the edit line.)
- Editing: like scroll-with-bottom-base but on the user-defined edit
line (usually somewhere in the middle of third half of the canvas, but
must be definable somehow)
Is this possible? Any ideas how? Are there some internal classes I could
modify?
Best,
Erich
_________________________________________________
For list-related administrative tasks:
http://lists.racket-lang.org/listinfo/users
It may be possible to implement this with the existing `editor-canvas%'
class, but probably not. If `scroll-to' in `editor-canvas%' could
really be overridden, for example, that might get close; the layer at
which you can override `scroll-to', however, is not the layer where the
canvas's editor admin calls `scroll-to' (i.e., there's a layer of
indirection in the implementation).
If you'd like to try changing the `editor-canvas%' implementation, the
code is in "collects/mred/private/wxme". You may also need to change
something in the `editor-canvas%' wrapper layer, which is
"collects/mred/mrcanvas.rkt".