From f6c35dc04f37d49528990fa4986646e606a478ac Mon Sep 17 00:00:00 2001 From: "Guillermo J. Rozas" Date: Wed, 1 Sep 1993 18:06:16 +0000 Subject: [PATCH] Add resize-screen. --- v7/src/edwin/tterm.scm | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/v7/src/edwin/tterm.scm b/v7/src/edwin/tterm.scm index 54e57c982..96504443f 100644 --- a/v7/src/edwin/tterm.scm +++ b/v7/src/edwin/tterm.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Id: tterm.scm,v 1.22 1993/08/02 04:22:51 cph Exp $ +$Id: tterm.scm,v 1.23 1993/09/01 18:06:16 gjr Exp $ Copyright (c) 1990-1993 Massachusetts Institute of Technology @@ -1079,4 +1079,20 @@ Note that the multiply factors are in tenths of characters. |# (let ((n (fix:- n factor-n))) (vector-set! overhead y (fix:quotient (fix:+ o n) 10)) (loop (fix:1+ y) (fix:- o factor-1) n))))) - (values overhead factor))) \ No newline at end of file + (values overhead factor))) + +(define (resize-screen) + (let* ((screen (selected-screen)) + (state (screen-state screen))) + (if (not (terminal-state? state)) + (editor-error "Not a terminal screen") + (let ((port console-output-port) + (desc (terminal-state/description state))) + (let ((x-size (output-port/x-size port)) + (y-size (output-port/y-size port))) + (without-interrupts + (lambda () + (set-tn-x-size! desc x-size) + (set-tn-y-size! desc y-size) + (set-screen-size! screen x-size y-size))) + (update-screen! screen #t)))))) \ No newline at end of file -- 2.25.1