; DECORATIONS FOR EPOCH ; ===================== ;;File: epoch.gwm -- window decorations for epoch ;;Heritage: simple-win.gwm ;;Author: Brian L. Kahn blk@security.mitre.org ;;Copyright 1992, MITRE Corporation ;;Not for sale or resale, distribution unlimited ;; the Dmenu: function creates a named drop-down menu with N items ;; arguments are the GWM name, menu name string, and a list of items ;; each item has an item name string and a GWM or elisp command ;; Dmenu.exec is an example of a GWM command ;; elisp commands are in quotes, and are sent to the window (Dmenu: Dmenu.exec '("exec" (("execute cut buffer" (execute-string (+ "(? " cut-buffer ")"))) ))) (Dmenu: Dmenu.db '("db" (("toggle debug" "(setq debug-on-error (not debug-on-error))") ("debug on" "(setq debug-on-error t)") ("debug off" "(setq debug-on-error f)") ))) (Dmenu: Dmenu.files '("files" (("open files" "(buffer-menu-sized)") ("directory" "(dired default-directory)") ("elisp lib" "(dired (expand-file-name "~/lib/emacs"))") ))) (Dmenu: Dmenu.buffers '("buffers" (("other buffer" "(switch-to-buffer (other-buffer))") ("*scratch* buffer" "(switch-to-buffer \"*scratch*\")") ("-" (bell)) ("kill buffer" "(kill-buffer (current-buffer))") ))) (Dmenu: Dmenu.windows '("windows" (("one window" "(delete-other-windows)") ("split screen" "(split-window-vertically)") ))) (Dmenu: Dmenu.screens '("screens" (("new screen" "(epoch:create-screen-offset 18)") ("delete screen" "(delete-screen)") ("name screen" "(epoch::icon-name (buffer-name))") ))) (Dmenu: Dmenu.fonts '("fonts" (("screen-14" "(progn (font \"screen.r.14\") (redraw-display))") ("screen-11" "(progn (font \"screen.r.11\") (redraw-display))") ("screen-7" "(progn (font \"screen.r.7\") (redraw-display))") ("serif-16" "(progn (font \"serif.r.16\") (redraw-display))") ("misc-15" "(progn (font \"-misc*medium*-15-*\") (redraw-display))") ("misc-15-bold" "(progn (font \"-misc*bold*-15-*\") (redraw-display))") ("misc-20-bold" "(progn (font \"-misc*bold*-20-*\") (redraw-display))") ("courier-20" "(progn (font \"-*-courier-medium-r-*-20-*\") (redraw-display))") ))) (Dmenu: Dmenu.mail '("mail" (("read mail" "(mh-rmail)") ("send mail" "(mh-smail)") ))) (Dmenu: Dmenu.info '("info" (("info & help" "(info)")))) (Dmenu: Dmenu.news '("news" (("usenet news" "(gnus)")))) (Dmenu: Dmenu.shell '("shell" (("csh" "(progn (csh) (end-of-buffer))")))) (Dmenu: Dmenu.space '(" " (("redisplay" "(redraw-display)") ))) ;; a little box with the hostname in it (: Dmenu.HOST '(with (background black foreground white fsm ()) (plug-make (label-make hostname widget.font)))) ;; an empty white box, for use as a separator (: Dmenu.BOX '(with (background black foreground white fsm ()) (plug-make (label-make " " widget.font)))) ;; A menu bar is made from a list of drop-down menus, like this: ;; (window-make (widget:Dmenubar-make Dmenu.epoch-menus) () () () () )) (: Dmenu.epoch-menus (list Dmenu.db Dmenu.fonts Dmenu.exec Dmenu.space Dmenu.files Dmenu.buffers Dmenu.windows Dmenu.screens Dmenu.space Dmenu.mail Dmenu.info Dmenu.news Dmenu.shell Dmenu.db ))