summaryrefslogtreecommitdiff
path: root/lisp/term
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1997-07-13 20:52:08 +0000
committerRichard M. Stallman <rms@gnu.org>1997-07-13 20:52:08 +0000
commit1307d0590e524d087cfa16e0ee910f4a4c8ad4db (patch)
tree12403c76d6b8ac76cf0254eece2ee76257721461 /lisp/term
parentf417d42baea0dd873c01ef8a1c37eea258ae6314 (diff)
downloademacs-1307d0590e524d087cfa16e0ee910f4a4c8ad4db.tar.gz
(msdos-bg-mode): New function.
(msdos-face-setup, make-msdos-frame): Set background-mode and display-type properties for created frames.
Diffstat (limited to 'lisp/term')
-rw-r--r--lisp/term/pc-win.el27
1 files changed, 22 insertions, 5 deletions
diff --git a/lisp/term/pc-win.el b/lisp/term/pc-win.el
index 332952bc42b..fccb693c452 100644
--- a/lisp/term/pc-win.el
+++ b/lisp/term/pc-win.el
@@ -1,6 +1,6 @@
;;; pc-win.el --- setup support for `PC windows' (whatever that is).
-;; Copyright (C) 1994, 1996 Free Software Foundation, Inc.
+;; Copyright (C) 1994, 1996, 1997 Free Software Foundation, Inc.
;; Author: Morten Welinder <terra@diku.dk>
;; Maintainer: FSF
@@ -206,6 +206,14 @@
(defvar default-frame-alist nil)
(modify-frame-parameters terminal-frame default-frame-alist)
+(defun msdos-bg-mode (&optional frame)
+ (let* ((frame (or frame (selected-frame)))
+ (params (frame-parameters frame))
+ (bg (cdr (assq 'background-color params))))
+ (if (member bg '("black" "blue" "darkgray" "green"))
+ 'dark
+ 'light)))
+
(defun msdos-face-setup ()
(modify-frame-parameters terminal-frame default-frame-alist)
@@ -222,16 +230,25 @@
(set-face-foreground 'msdos-menu-passive-face "lightgray" terminal-frame)
(set-face-background 'msdos-menu-active-face "blue" terminal-frame)
(set-face-background 'msdos-menu-passive-face "blue" terminal-frame)
- (set-face-background 'msdos-menu-select-face "red" terminal-frame))
+ (set-face-background 'msdos-menu-select-face "red" terminal-frame)
+ (modify-frame-parameters terminal-frame
+ (list (cons 'background-mode
+ (msdos-bg-mode terminal-frame))
+ (cons 'display-type 'color))))
;; We have only one font, so...
(add-hook 'before-init-hook 'msdos-face-setup)
;; We create frames as if we were a terminal, but with a twist.
(defun make-msdos-frame (&optional parameters)
- (let ((parms
- (append initial-frame-alist default-frame-alist parameters nil)))
- (make-terminal-frame parms)))
+ (let* ((parms
+ (append initial-frame-alist default-frame-alist parameters nil))
+ (frame (make-terminal-frame parms)))
+ (modify-frame-parameters frame
+ (list (cons 'background-mode
+ (msdos-bg-mode frame))
+ (cons 'display-type 'color)))
+ frame))
(setq frame-creation-function 'make-msdos-frame)