Missing file, oops
parent
79848ac511
commit
df67fe464e
|
@ -1,3 +1,18 @@
|
||||||
|
+ 0.83:
|
||||||
|
|
||||||
|
- windows port from erg
|
||||||
|
- why aren't some cocoa words compiled?
|
||||||
|
- editor:
|
||||||
|
- delegation issue with fields and interactors
|
||||||
|
- multi-line inserts
|
||||||
|
- scroll to caret
|
||||||
|
- only redraw visible lines
|
||||||
|
- bug after removing all lines
|
||||||
|
- word-at-a-time commands
|
||||||
|
- deleting words, lines
|
||||||
|
- shift modifier not delivered
|
||||||
|
- x11 copy to clipboard
|
||||||
|
|
||||||
- httpd search tools
|
- httpd search tools
|
||||||
- remaining HTML issues need fixing
|
- remaining HTML issues need fixing
|
||||||
|
|
||||||
|
@ -16,22 +31,12 @@
|
||||||
[2:48pm] tathi: it appears to be using the font metrics from the sprite tuple, but re-using the texture from the previous letter
|
[2:48pm] tathi: it appears to be using the font metrics from the sprite tuple, but re-using the texture from the previous letter
|
||||||
[2:59pm] tathi: hmm...and it looks like it's only be happening the first time you use a given character (from a given font face)
|
[2:59pm] tathi: hmm...and it looks like it's only be happening the first time you use a given character (from a given font face)
|
||||||
- make-frame should compile
|
- make-frame should compile
|
||||||
- why aren't some cocoa words compiled?
|
|
||||||
- editor:
|
- editor:
|
||||||
- delegation issue with fields and interactors
|
|
||||||
- multi-line inserts
|
|
||||||
- scroll to caret
|
|
||||||
- only redraw visible lines
|
|
||||||
- bug after removing all lines
|
|
||||||
- word-at-a-time commands
|
|
||||||
- deleting words, lines
|
|
||||||
- undo and redo
|
- undo and redo
|
||||||
- transpose char/word/line
|
- transpose char/word/line
|
||||||
- autoscroll
|
- autoscroll
|
||||||
- page up/down
|
- page up/down
|
||||||
- search and replace
|
- search and replace
|
||||||
- shift modifier not delivered
|
|
||||||
- x11 copy to clipboard
|
|
||||||
- finish gui stepper
|
- finish gui stepper
|
||||||
- windows are not updated while resizing
|
- windows are not updated while resizing
|
||||||
- graphical module manager tool
|
- graphical module manager tool
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
! Copyright (C) 2006 Slava Pestov
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
IN: gadgets-text
|
||||||
|
USING: gadgets kernel models namespaces sequences ;
|
||||||
|
|
||||||
|
: editor-mouse-down ( editor -- )
|
||||||
|
dup request-focus
|
||||||
|
dup
|
||||||
|
dup editor-caret click-loc
|
||||||
|
dup editor-mark click-loc ;
|
||||||
|
|
||||||
|
: editor-mouse-drag ( editor -- )
|
||||||
|
dup editor-caret click-loc ;
|
||||||
|
|
||||||
|
: editor-copy ( editor clipboard -- )
|
||||||
|
over editor-selection? [
|
||||||
|
>r editor-selection r> set-clipboard-contents
|
||||||
|
] [
|
||||||
|
2drop
|
||||||
|
] if ;
|
||||||
|
|
||||||
|
: editor-cut ( editor clipboard -- )
|
||||||
|
dupd editor-copy remove-editor-selection ;
|
||||||
|
|
||||||
|
: remove-at-caret ( editor quot -- | quot: caret editor -- from to )
|
||||||
|
over >r >r dup editor-caret* swap editor-document
|
||||||
|
r> call r> editor-document remove-doc-range ; inline
|
||||||
|
|
||||||
|
: editor-delete ( editor -- )
|
||||||
|
dup editor-selection? [
|
||||||
|
remove-editor-selection
|
||||||
|
] [
|
||||||
|
[ dupd T{ char-elt } next-elt ] remove-at-caret
|
||||||
|
] if ;
|
||||||
|
|
||||||
|
: editor-backspace ( editor -- )
|
||||||
|
dup editor-selection? [
|
||||||
|
remove-editor-selection
|
||||||
|
] [
|
||||||
|
[ dupd T{ char-elt } prev-elt swap ] remove-at-caret
|
||||||
|
] if ;
|
||||||
|
|
||||||
|
: editor-select-prev ( editor elt -- )
|
||||||
|
swap [ rot prev-elt ] change-caret ;
|
||||||
|
|
||||||
|
: editor-prev ( editor elt -- )
|
||||||
|
dupd editor-select-prev mark>caret ;
|
||||||
|
|
||||||
|
: editor-select-next ( editor elt -- )
|
||||||
|
swap [ rot next-elt ] change-caret ;
|
||||||
|
|
||||||
|
: editor-next ( editor elt -- )
|
||||||
|
dupd editor-select-next mark>caret ;
|
||||||
|
|
||||||
|
: editor-select-home ( editor -- )
|
||||||
|
[ drop 0 swap =col ] change-caret ;
|
||||||
|
|
||||||
|
: editor-home ( editor -- )
|
||||||
|
dup editor-select-home mark>caret ;
|
||||||
|
|
||||||
|
: editor-select-doc-home ( editor -- )
|
||||||
|
{ 0 0 } swap editor-caret set-model ;
|
||||||
|
|
||||||
|
: editor-doc-home ( editor -- )
|
||||||
|
editor-select-doc-home mark>caret ;
|
||||||
|
|
||||||
|
: editor-select-end ( editor -- )
|
||||||
|
[ >r first r> line-end ] change-caret ;
|
||||||
|
|
||||||
|
: editor-end ( editor -- )
|
||||||
|
dup editor-select-end mark>caret ;
|
||||||
|
|
||||||
|
: editor-select-doc-end ( editor -- )
|
||||||
|
dup editor-document doc-end swap editor-caret set-model ;
|
||||||
|
|
||||||
|
: editor-doc-end ( editor -- )
|
||||||
|
editor-select-doc-end mark>caret ;
|
||||||
|
|
||||||
|
: editor-select-all ( editor -- )
|
||||||
|
{ 0 0 } over editor-caret set-model
|
||||||
|
dup editor-document doc-end swap editor-mark set-model ;
|
||||||
|
|
||||||
|
editor H{
|
||||||
|
{ T{ button-down } [ editor-mouse-down ] }
|
||||||
|
{ T{ drag } [ editor-mouse-drag ] }
|
||||||
|
{ T{ gain-focus } [ focus-editor ] }
|
||||||
|
{ T{ lose-focus } [ unfocus-editor ] }
|
||||||
|
{ T{ paste-action } [ clipboard get paste-clipboard ] }
|
||||||
|
{ T{ button-up f 2 } [ selection get paste-clipboard ] }
|
||||||
|
{ T{ copy-action } [ clipboard get editor-copy ] }
|
||||||
|
{ T{ button-up } [ selection get editor-copy ] }
|
||||||
|
{ T{ cut-action } [ clipboard get editor-cut ] }
|
||||||
|
{ T{ delete-action } [ remove-editor-selection ] }
|
||||||
|
{ T{ select-all-action } [ editor-select-all ] }
|
||||||
|
{ T{ key-down f f "LEFT" } [ T{ char-elt } editor-prev ] }
|
||||||
|
{ T{ key-down f f "RIGHT" } [ T{ char-elt } editor-next ] }
|
||||||
|
{ T{ key-down f f "UP" } [ T{ line-elt } editor-prev ] }
|
||||||
|
{ T{ key-down f f "DOWN" } [ T{ line-elt } editor-next ] }
|
||||||
|
{ T{ key-down f { S+ } "LEFT" } [ T{ char-elt } editor-select-prev ] }
|
||||||
|
{ T{ key-down f { S+ } "RIGHT" } [ T{ char-elt } editor-select-next ] }
|
||||||
|
{ T{ key-down f { S+ } "UP" } [ T{ line-elt } editor-select-prev ] }
|
||||||
|
{ T{ key-down f { S+ } "DOWN" } [ T{ line-elt } editor-select-next ] }
|
||||||
|
{ T{ key-down f f "HOME" } [ editor-home ] }
|
||||||
|
{ T{ key-down f f "END" } [ editor-end ] }
|
||||||
|
{ T{ key-down f { S+ } "HOME" } [ editor-select-home ] }
|
||||||
|
{ T{ key-down f { S+ } "END" } [ editor-select-end ] }
|
||||||
|
{ T{ key-down f { S+ } "HOME" } [ editor-select-home ] }
|
||||||
|
{ T{ key-down f { S+ } "END" } [ editor-select-end ] }
|
||||||
|
{ T{ key-down f { C+ } "HOME" } [ editor-doc-home ] }
|
||||||
|
{ T{ key-down f { C+ } "END" } [ editor-doc-end ] }
|
||||||
|
{ T{ key-down f { C+ S+ } "HOME" } [ editor-select-doc-home ] }
|
||||||
|
{ T{ key-down f { C+ S+ } "END" } [ editor-select-doc-end ] }
|
||||||
|
{ T{ key-down f f "DELETE" } [ editor-delete ] }
|
||||||
|
{ T{ key-down f f "BACKSPACE" } [ editor-backspace ] }
|
||||||
|
} set-gestures
|
Loading…
Reference in New Issue