Mercurial > hg > xemacs-beta
diff lisp/sunpro/sunpro-sparcworks.el @ 0:376386a54a3c r19-14
Import from CVS: tag r19-14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:45:50 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/sunpro/sunpro-sparcworks.el Mon Aug 13 08:45:50 2007 +0200 @@ -0,0 +1,128 @@ +;;; sunpro-sparcworks.el --- support SPARCworks manager ToolTalk messages + +;; Copyright (C) Sun Microsystems, Inc. + +;; Author: Vladimir Ivanovic <vladimir@Eng.Sun.COM> +;; Maintainer: Vladimir Ivanovic <vladimir@Eng.Sun.COM> +;; Created: 20 Mar 95 + +;; Keywords: SPARCworks, ToolTalk, messages + +;;; Commentary: + +;; Called from the SPARCworks Manager with the command: +;; +;; xemacs -q -l sunpro-sparcworks $SUNPRO_SWM_TT_ARGS $SUNPRO_SWM_GUI_ARGS +;; + +;;; To Do: + +;;; Code: + +(require 'cl) ; Common Lisp compatibility +(require 'cl-19) ; Version for XEmacs 19 + +(defvar sunpro-sparcworks-ops + '("quit" + "hide" + "expose" + "PEI_CLOSE" + "PEI_OPEN" + "PEI_NOP") + "The ToolTalk operations that are handled.") + +(defvar sunpro-sparcworks-callbacks + '(sp-sw-quit-handler + sp-sw-hide-handler + sp-sw-expose-handler + sp-sw-close-handler + sp-sw--open-handler + sp-sw-nop-handler) + "The ToolTalk operations that are handled.") + +(defvar sunpro-sparcworks-invocation-count nil + "The number of XEmacsen invoked via the SPARCworks Manager.") + +(defun sp-sw-quit-handler (msg pat) + (return-tooltalk-message msg 'reply) + (save-buffers-kill-emacs)) + +(defun sp-sw-hide-handler (msg pat) + (return-tooltalk-message msg 'reply) + (mapcar #'make-frame-invisible (frame-list))) + +(defun sp-sw-expose-handler (msg pat) + (return-tooltalk-message msg 'reply) + (mapcar #'make-frame-visible (frame-list))) + +(defun sp-sw-close-handler (msg pat) + (return-tooltalk-message msg 'reply) + (mapcar #'iconify-frame (frame-list))) + +(defun sp-sw-open-handler (msg pat) + (return-tooltalk-message msg 'reply) + (mapcar #'deiconify-frame (frame-list))) + +(defun sp-sw-nop-handler (msg pat) + (return-tooltalk-message msg 'reply) + '()) + +(register-tooltalk-pattern + (make-tooltalk-pattern + '(category TT_HANDLE + scope TT_SESSION + op "quit" + callback sp-sw-quit-handler))) + +(register-tooltalk-pattern + (make-tooltalk-pattern + '(category TT_HANDLE + scope TT_SESSION + op "hide" + callback sp-sw-hide-handler))) + +(register-tooltalk-pattern + (make-tooltalk-pattern + '(category TT_HANDLE + scope TT_SESSION + op "expose" + callback sp-sw-expose-handler))) + +(register-tooltalk-pattern + (make-tooltalk-pattern + '(category TT_HANDLE + scope TT_SESSION + op "PEI_CLOSE" + callback sp-sw-close-handler))) + +(register-tooltalk-pattern + (make-tooltalk-pattern + '(category TT_HANDLE + scope TT_SESSION + op "PEI_OPEN" + callback sp-sw-open-handler))) + +(register-tooltalk-pattern + (make-tooltalk-pattern + '(category TT_HANDLE + scope TT_SESSION + op "PEI_NOP" + callback sp-sw-nop-handler))) + +(defun sunpro-sparcworks-handle-command-line (arg) + "Handle the SPARCworks Manager-specific command line arguments." + (setq *sunpro-sparcworks-invocation-count* arg) + ;;Fix up the command-line in case there are more arguments + (setq command-line-args-left + (cdr command-line-args-left))) + + +;;; Initialize +(setq command-switch-alist + (purecopy + (append '(("-swtm" . sunpro-sparcworks-handle-command-line)) + command-switch-alist))) + + +;;; sunpro-sparcworks.el ends here +