Fix for a fix
parent
4d6325a199
commit
f62277f8ba
|
@ -3,8 +3,8 @@
|
|||
- windows port from erg
|
||||
- editor:
|
||||
- scroll to caret
|
||||
- clicking input doesn't resize editor gadget
|
||||
- better listener multi-line expression handling
|
||||
- history doesn't work in a good way if you ^K the input
|
||||
- inference bug
|
||||
|
||||
- httpd search tools
|
||||
|
@ -21,6 +21,13 @@
|
|||
|
||||
+ ui:
|
||||
|
||||
- shortcuts:
|
||||
- find a listener
|
||||
- find a browser
|
||||
- find a help window
|
||||
- they'll either focus such a window, or if the current window is of
|
||||
that type, cycle
|
||||
- thumb min size
|
||||
- support x11's large selections, if needed
|
||||
- own-selection violates ICCCM
|
||||
- one-column table doesn't need borders...?
|
||||
|
@ -36,6 +43,7 @@
|
|||
- search and replace
|
||||
- only redraw visible lines
|
||||
- more efficient multi-line inserts
|
||||
- editor should support stream output protocol
|
||||
- finish gui stepper
|
||||
- cocoa: windows are not updated while resizing
|
||||
- graphical module manager tool
|
||||
|
|
|
@ -43,6 +43,9 @@ USING: arrays gadgets kernel math objc sequences ;
|
|||
-> contentRectForFrameRect:styleMask: ;
|
||||
|
||||
"NSObject" "FactorWindowDelegate" {
|
||||
! Doesn't work on Intel since we don't support struct
|
||||
! returns yet
|
||||
|
||||
! {
|
||||
! "windowWillUseStandardFrame:defaultFrame:" "NSRect"
|
||||
! { "id" "SEL" "id" "NSRect" }
|
||||
|
|
|
@ -4,7 +4,9 @@ USING: errors generic hashtables kernel math
|
|||
namespaces queues sequences ;
|
||||
IN: gadgets
|
||||
|
||||
: invalidate ( gadget state -- ) swap set-gadget-state ;
|
||||
DEFER: relayout-1
|
||||
|
||||
: invalidate ( gadget -- ) \ relayout-1 swap set-gadget-state ;
|
||||
|
||||
: forget-pref-dim ( gadget -- ) f swap set-gadget-pref-dim ;
|
||||
|
||||
|
@ -14,8 +16,8 @@ IN: gadgets
|
|||
|
||||
DEFER: relayout
|
||||
|
||||
: invalidate* ( gadget state -- )
|
||||
dupd invalidate
|
||||
: invalidate* ( gadget -- )
|
||||
\ relayout over set-gadget-state
|
||||
dup forget-pref-dim
|
||||
dup gadget-root?
|
||||
[ add-invalid ] [ gadget-parent [ relayout ] when* ] if ;
|
||||
|
@ -25,7 +27,7 @@ DEFER: relayout
|
|||
#! next iteration of the event loop. Should be used when the
|
||||
#! gadget's size has potentially changed. See relayout-1.
|
||||
dup gadget-state \ relayout eq?
|
||||
[ drop ] [ \ relayout invalidate* ] if ;
|
||||
[ drop ] [ invalidate* ] if ;
|
||||
|
||||
: relayout-1 ( gadget -- )
|
||||
#! Relayout and redraw a gadget before th next iteration of
|
||||
|
@ -33,7 +35,7 @@ DEFER: relayout
|
|||
#! repainted, or if its internal layout changed, but its
|
||||
#! preferred size did not change.
|
||||
dup gadget-state
|
||||
[ drop ] [ dup \ relayout-1 invalidate add-invalid ] if ;
|
||||
[ drop ] [ dup invalidate add-invalid ] if ;
|
||||
|
||||
: show-gadget t over set-gadget-visible? relayout-1 ;
|
||||
|
||||
|
|
Loading…
Reference in New Issue