;;; -*- Mode:LISP; Package:USER; Base:10 -*- ;;; ;;; Simple window definitions for panes ;;; ;;; (defflavor simple-menu-pane (mode-item-alist mode-item) (tv:abstract-dynamic-item-list-mixin tv:menu-highlighting-mixin tv:command-menu tv:top-box-label-mixin) (:default-init-plist :blinker-deselected-visibility :on :blinker-flavor 'tv:rectangular-blinker :blinker-p t :deexposed-typein-action :normal :deexposed-typeout-action :normal :borders 5 :border-margin-width 3 :item-list nil :mode-item-alist nil :mode-item nil) :inittable-instance-variables (:settable-instance-variables mode-item-alist mode-item)) (defmethod (simple-menu-pane :update-mode-item-alist) (alist) (send self :set-mode-item-alist alist)) (defmethod (simple-menu-pane :set-mode) (&optional mode) (if (null mode) (setq mode mode-item)) (let((item-list (assoc mode mode-item-alist))) (if item-list (send self :set-item-list (cdr item-list))))) (defmethod (simple-menu-pane :update-item-list) () (send self :set-mode)) (defmethod (simple-menu-pane :after :init) (&rest ignore) (send self :update-item-list)) (defmethod (simple-menu-pane :redraw) () (send self :refresh)) (compile-flavor-methods simple-menu-pane) (defflavor simple-banner-pane ((banner-message nil)) (tv:top-box-label-mixin tv:not-externally-selectable-mixin tv:window) (:default-init-plist :blinker-deselected-visibility :off :blinker-flavor 'tv:rectangular-blinker :blinker-p nil :deexposed-typein-action :normal :deexposed-typeout-action :permit :borders 4 :border-margin-width 2 :label nil :save-bits t :font-map '(medfnb)) :gettable-instance-variables :settable-instance-variables :inittable-instance-variables) (defmethod (simple-banner-pane :draw-banner) (&optional msg) (if msg (setq banner-message (string msg))) (when banner-message (send self :clear-screen) (send self :string-out-centered-explicit banner-message))) (defmethod (simple-banner-pane :redraw) () (send self :draw-banner)) (defflavor simple-text-area() (tv:window) (:default-init-plist :blinker-deselected-visibility :on :blinker-flavor 'tv:rectangular-blinker :blinker-p t :borders 5 :border-margin-width 3 :deexposed-typein-action :normal :deexposed-typeout-action :normal :label nil :save-bits t)) (defmethod (simple-text-area :redraw) () (send self :clear-screen)) (defflavor simple-scroll-area() (tv:scroll-mouse-mixin tv:scroll-window) (:default-init-plist :blinker-deselected-visibility :on :blinker-flavor 'tv:rectangular-blinker :blinker-p t :borders 5 :border-margin-width 3 :deexposed-typein-action :normal :deexposed-typeout-action :normal :label nil :save-bits t)) (defmethod (simple-scroll-area :redraw) () (send self :redisplay))