added info edits
added info edits original commit: 210021ce55a13dae18e925b1e07217fe1db8b2da
This commit is contained in:
parent
9ac720b229
commit
0b8688bde5
|
@ -614,6 +614,56 @@
|
|||
|
||||
(define return-edit% (make-return-edit% edit%))
|
||||
|
||||
(define make-info-edit%
|
||||
(lambda (super-info-edit%)
|
||||
(class-asi super-info-edit%
|
||||
(inherit get-frame get-start-position get-end-position
|
||||
position-line line-start-position)
|
||||
(rename [super-after-set-position after-set-position]
|
||||
[super-after-edit-sequence after-edit-sequence]
|
||||
[super-on-edit-sequence on-edit-sequence]
|
||||
[super-after-insert after-insert]
|
||||
[super-after-delete after-delete])
|
||||
(private
|
||||
[edit-sequence-depth 0]
|
||||
[needs-updating #f]
|
||||
[maybe-update-position-edit
|
||||
(lambda ()
|
||||
(if (= edit-sequence-depth 0)
|
||||
(update-position-edit)
|
||||
(set! needs-updating #t)))]
|
||||
[update-position-edit
|
||||
(lambda ()
|
||||
(send (get-frame) edit-position-changed))])
|
||||
|
||||
(public
|
||||
[after-set-position
|
||||
(lambda ()
|
||||
(maybe-update-position-edit)
|
||||
(super-after-set-position))]
|
||||
[after-insert
|
||||
(lambda (start len)
|
||||
(maybe-update-position-edit)
|
||||
(super-after-insert start len))]
|
||||
[after-delete
|
||||
(lambda (start len)
|
||||
(maybe-update-position-edit)
|
||||
(super-after-delete start len))]
|
||||
[after-edit-sequence
|
||||
(lambda ()
|
||||
(set! edit-sequence-depth (sub1 edit-sequence-depth))
|
||||
(when (and (= 0 edit-sequence-depth)
|
||||
needs-updating)
|
||||
(set! needs-updating #f)
|
||||
(update-position-edit))
|
||||
(super-after-edit-sequence))]
|
||||
[on-edit-sequence
|
||||
(lambda ()
|
||||
(set! edit-sequence-depth (add1 edit-sequence-depth))
|
||||
(super-on-edit-sequence))]))))
|
||||
|
||||
(define info-edit% (make-info-edit% edit%))
|
||||
|
||||
(define make-backup-autosave-buffer%
|
||||
(lambda (super-edit%)
|
||||
(class super-edit% args
|
||||
|
@ -693,7 +743,7 @@
|
|||
(apply super-init args)
|
||||
(mred:autosave:register-autosave this)))))
|
||||
|
||||
(define backup-autosave-edit% (make-backup-autosave-buffer% edit%))
|
||||
(define backup-autosave-edit% (make-backup-autosave-buffer% info-edit%))
|
||||
|
||||
(define make-pasteboard% make-std-buffer%)
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user