[climacs-cvs] CVS update: climacs/gui.lisp
Dwight Holman
dholman at common-lisp.net
Sun Jan 8 09:08:22 UTC 2006
Update of /project/climacs/cvsroot/climacs
In directory common-lisp.net:/tmp/cvs-serv18686
Modified Files:
gui.lisp
Log Message:
Adds basic color customization and an example of its use.
See (climacs-gui::climacs-rv) for climacs in reverse video.
(Similar to `emacs -rv`)
Date: Sun Jan 8 10:08:18 2006
Author: dholman
Index: climacs/gui.lisp
diff -u climacs/gui.lisp:1.198 climacs/gui.lisp:1.199
--- climacs/gui.lisp:1.198 Mon Nov 14 17:30:13 2005
+++ climacs/gui.lisp Sun Jan 8 10:08:17 2006
@@ -98,9 +98,18 @@
;;; windows
(make-command-table 'window-table :errorp nil)
+(defvar *bg-color* +white+)
+(defvar *fg-color* +black+)
+(defvar *info-bg-color* +white+)
+(defvar *info-fg-color* +black+)
+(defvar *mini-bg-color* +white+)
+(defvar *mini-fg-color* +black+)
+
+
(define-application-frame climacs (standard-application-frame
esa-frame-mixin)
((buffers :initform '() :accessor buffers))
+
(:command-table (global-climacs-table
:inherit-from (global-esa-table
keyboard-macro-table
@@ -130,11 +139,15 @@
:width 900 :height 400
:end-of-line-action :scroll
:incremental-redisplay t
+ :background *bg-color*
+ :foreground *fg-color*
:display-function 'display-window
:command-table 'global-climacs-table))
(info-pane
(make-pane 'climacs-info-pane
:master-pane extended-pane
+ :background *info-bg-color*
+ :foreground *info-fg-color*
:width 900)))
(setf (windows *application-frame*) (list extended-pane)
(buffers *application-frame*) (list (buffer extended-pane)))
@@ -145,7 +158,7 @@
extended-pane)
extended-pane)
info-pane)))
- (minibuffer (make-pane 'climacs-minibuffer-pane :width 900)))
+ (minibuffer (make-pane 'climacs-minibuffer-pane :background *mini-bg-color* :foreground *mini-fg-color* :width 900)))
(:layouts
(default
(vertically (:scroll-bars nil)
@@ -176,6 +189,17 @@
(if new-process
(clim-sys:make-process #'run :name process-name)
(run)))))
+
+(defun climacs-rv (&key new-process (process-name "Climacs")
+ (width 900) (height 400))
+ "Starts up a climacs session"
+ (let ((*bg-color* +black+)
+ (*fg-color* +white+)
+ (*info-bg-color* +blue+)
+ (*info-fg-color* +yellow+)
+ (*mini-bg-color* +black+)
+ (*mini-fg-color* +white+))
+ (climacs :new-process new-process :process-name process-name :width width :height height)))
(defun display-info (frame pane)
(declare (ignore frame))
More information about the Climacs-cvs
mailing list