comparison lisp/term/pc-win.el @ 25211:a1527fde7766

(msdos-bg-mode): Remove. Call frame-set-background-mode instead. All callers changed. (msdos-face-setup): Don't force color display parameter, it is set by frame-set-background-mode. (make-msdos-frame): Call x-handle-reverse-video and face-set-after-frame-default. Delete frame if creation failed.
author Eli Zaretskii <eliz@gnu.org>
date Tue, 10 Aug 1999 10:21:18 +0000
parents 2ed76ce5608e
children 577683f84100
comparison
equal deleted inserted replaced
25210:b145fd152286 25211:a1527fde7766
291 ;; --------------------------------------------------------------------------- 291 ;; ---------------------------------------------------------------------------
292 ;; We want to delay setting frame parameters until the faces are setup 292 ;; We want to delay setting frame parameters until the faces are setup
293 (defvar default-frame-alist nil) 293 (defvar default-frame-alist nil)
294 (modify-frame-parameters terminal-frame default-frame-alist) 294 (modify-frame-parameters terminal-frame default-frame-alist)
295 295
296 (defun msdos-bg-mode (&optional frame)
297 (let* ((frame (or frame (selected-frame)))
298 (params (frame-parameters frame))
299 (bg (cdr (assq 'background-color params))))
300 ;; The list of ``dark'' colors should be consistent with
301 ;; `x-color-values' (below) and the dark/light color
302 ;; decisions `frame-set-background-mode' in lisp/faces.el.
303 (if (member bg
304 '("black" "blue" "green" "red" "magenta" "brown" "darkgray"))
305 'dark
306 'light)))
307
308 (defun msdos-face-setup () 296 (defun msdos-face-setup ()
309 (modify-frame-parameters terminal-frame default-frame-alist) 297 (modify-frame-parameters terminal-frame default-frame-alist)
310 (face-clear-tty-colors) 298 (face-clear-tty-colors)
311 (let ((colors msdos-color-values) 299 (let ((colors msdos-color-values)
312 (i 0)) 300 (i 0))
313 (while colors 301 (while colors
314 (face-register-tty-color (car (car colors)) i) 302 (face-register-tty-color (car (car colors)) i)
315 (setq colors (cdr colors) i (1+ i)))) 303 (setq colors (cdr colors) i (1+ i))))
316 304
317 (modify-frame-parameters terminal-frame 305 (frame-set-background-mode terminal-frame)
318 (list (cons 'background-mode
319 (msdos-bg-mode terminal-frame))
320 (cons 'display-type 'color)))
321 (face-set-after-frame-default terminal-frame) 306 (face-set-after-frame-default terminal-frame)
322 307
323 (set-face-foreground 'bold "yellow" terminal-frame) 308 (set-face-foreground 'bold "yellow" terminal-frame)
324 (set-face-foreground 'italic "red" terminal-frame) 309 (set-face-foreground 'italic "red" terminal-frame)
325 (set-face-foreground 'bold-italic "lightred" terminal-frame) 310 (set-face-foreground 'bold-italic "lightred" terminal-frame)
339 324
340 ;; We create frames as if we were a terminal, but with a twist. 325 ;; We create frames as if we were a terminal, but with a twist.
341 (defun make-msdos-frame (&optional parameters) 326 (defun make-msdos-frame (&optional parameters)
342 (let* ((parms 327 (let* ((parms
343 (append initial-frame-alist default-frame-alist parameters nil)) 328 (append initial-frame-alist default-frame-alist parameters nil))
344 (frame (make-terminal-frame parms))) 329 (frame (make-terminal-frame parms))
345 (modify-frame-parameters frame 330 success)
346 (list (cons 'background-mode 331 (unwind-protect
347 (msdos-bg-mode frame)) 332 (progn
348 (cons 'display-type 'color))) 333 (x-handle-reverse-video frame parms)
334 (frame-set-background-mode frame)
335 (face-set-after-frame-default frame)
336 (setq success t))
337 (unless success (delete-frame frame)))
349 frame)) 338 frame))
350 339
351 (setq frame-creation-function 'make-msdos-frame) 340 (setq frame-creation-function 'make-msdos-frame)
352 341
353 ;; --------------------------------------------------------------------------- 342 ;; ---------------------------------------------------------------------------