X-Git-Url: https://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fgnus-xmas.el;h=6eb65fe225786a67bb37709d1c53f7f6e689a4bd;hb=92590f3fd3b6fce0c7c5dfaf754c095d586051c1;hp=bb65e65cb91c455ae158da3f97bf64d1409f3b96;hpb=b3ff1683e7dae3919a69965b9cbf79d9d931420e;p=gnus diff --git a/lisp/gnus-xmas.el b/lisp/gnus-xmas.el index bb65e65cb..6eb65fe22 100644 --- a/lisp/gnus-xmas.el +++ b/lisp/gnus-xmas.el @@ -1,7 +1,7 @@ ;;; gnus-xmas.el --- Gnus functions for XEmacs ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. -;; Author: Lars Magne Ingebrigtsen +;; Author: Lars Magne Ingebrigtsen ;; Keywords: news ;; This file is part of GNU Emacs. @@ -28,6 +28,7 @@ (require 'text-props) (defvar menu-bar-mode (featurep 'menubar)) (require 'messagexmas) +(require 'wid-edit) (defgroup gnus-xmas nil "XEmacsoid support for Gnus" @@ -41,6 +42,8 @@ automatically." directory) :group 'gnus-xmas) +;;(format "%02x%02x%02x" 114 66 20) "724214" + (defvar gnus-xmas-logo-color-alist '((flame "#cc3300" "#ff2200") (pine "#c0cc93" "#f8ffb8") @@ -52,16 +55,18 @@ automatically." (grape "#b264cc" "#cf7df") (labia "#cc64c2" "#fd7dff") (berry "#cc6485" "#ff7db5") + (dino "#724214" "#1e3f03") (neutral "#b4b4b4" "#878787") (september "#bf9900" "#ffcc00")) "Color alist used for the Gnus logo.") -(defcustom gnus-xmas-logo-color-style 'moss +(defcustom gnus-xmas-logo-color-style 'dino "*Color styles used for the Gnus logo." :type '(choice (const flame) (const pine) (const moss) (const irish) (const sky) (const tin) (const velvet) (const grape) (const labia) - (const berry) (const neutral) (const september)) + (const berry) (const neutral) (const september) + (const dino)) :group 'gnus-xmas) (defvar gnus-xmas-logo-colors @@ -90,7 +95,6 @@ asynchronously. The compressed face will be piped to this command." (defvar gnus-active-hashtb) (defvar gnus-article-buffer) (defvar gnus-auto-center-summary) -(defvar gnus-buffer-list) (defvar gnus-current-headers) (defvar gnus-level-killed) (defvar gnus-level-zombie) @@ -366,6 +370,10 @@ call it with the value of the `gnus-data' text property." (gnus-xmas-menu-add tree gnus-tree-menu)) +(defun gnus-xmas-draft-menu-add () + (gnus-xmas-menu-add draft + gnus-draft-menu)) + (defun gnus-xmas-server-menu-add () (gnus-xmas-menu-add menu gnus-server-server-menu gnus-server-connections-menu)) @@ -391,26 +399,9 @@ call it with the value of the `gnus-data' text property." (event-to-character event)) event))) -(defun gnus-xmas-seconds-since-epoch (date) - "Return a floating point number that says how many seconds have lapsed between Jan 1 12:00:00 1970 and DATE." - (let* ((tdate (mapcar (lambda (ti) (and ti (string-to-int ti))) - (timezone-parse-date date))) - (ttime (mapcar (lambda (ti) (and ti (string-to-int ti))) - (timezone-parse-time - (aref (timezone-parse-date date) 3)))) - (edate (mapcar (lambda (ti) (and ti (string-to-int ti))) - (timezone-parse-date "Jan 1 12:00:00 1970"))) - (tday (- (timezone-absolute-from-gregorian - (nth 1 tdate) (nth 2 tdate) (nth 0 tdate)) - (timezone-absolute-from-gregorian - (nth 1 edate) (nth 2 edate) (nth 0 edate))))) - (+ (nth 2 ttime) - (* (nth 1 ttime) 60) - (* (float (nth 0 ttime)) 60 60) - (* (float tday) 60 60 24)))) - (defun gnus-xmas-define () (setq gnus-mouse-2 [button2]) + (setq gnus-widget-button-keymap widget-button-keymap) (unless (memq 'underline (face-list)) (and (fboundp 'make-face) @@ -453,16 +444,6 @@ call it with the value of the `gnus-data' text property." (defvar gnus-mouse-face-prop 'highlight) - (unless (fboundp 'encode-time) - (defun encode-time (sec minute hour day month year &optional zone) - (let ((seconds - (gnus-xmas-seconds-since-epoch - (timezone-make-arpa-date - year month day (timezone-make-time-string hour minute sec) - zone)))) - (list (floor (/ seconds (expt 2 16))) - (round (mod seconds (expt 2 16))))))) - (defun gnus-byte-code (func) "Return a form that can be `eval'ed based on FUNC." (let ((fval (indirect-function func))) @@ -497,6 +478,7 @@ call it with the value of the `gnus-data' text property." 'gnus-xmas-mode-line-buffer-identification) (fset 'gnus-key-press-event-p 'key-press-event-p) (fset 'gnus-region-active-p 'region-active-p) + (fset 'gnus-annotation-in-region-p 'gnus-xmas-annotation-in-region-p) (add-hook 'gnus-group-mode-hook 'gnus-xmas-group-menu-add) (add-hook 'gnus-summary-mode-hook 'gnus-xmas-summary-menu-add) @@ -517,7 +499,8 @@ call it with the value of the `gnus-data' text property." (add-hook 'gnus-agent-summary-mode-hook 'gnus-xmas-agent-summary-menu-add) (add-hook 'gnus-agent-group-mode-hook 'gnus-xmas-agent-group-menu-add) (add-hook 'gnus-agent-server-mode-hook 'gnus-xmas-agent-server-menu-add) - + + (add-hook 'gnus-draft-mode-hook 'gnus-xmas-draft-menu-add) (add-hook 'gnus-summary-mode-hook 'gnus-xmas-switch-horizontal-scrollbar-off) (add-hook 'gnus-tree-mode-hook 'gnus-xmas-switch-horizontal-scrollbar-off)) @@ -553,7 +536,8 @@ call it with the value of the `gnus-data' text property." (while (not (eobp)) (insert (make-string (/ (max (- (window-width) (or x 35)) 0) 2) ?\ )) - (forward-line 1))) + (forward-line 1)) + (setq gnus-simple-splash nil)) (goto-char (point-min)) (let* ((pheight (+ 20 (count-lines (point-min) (point-max)))) (wheight (window-height)) @@ -821,6 +805,9 @@ XEmacs compatibility workaround." (when (eq (device-type) 'x) (gnus-splash))) +(defun gnus-xmas-annotation-in-region-p (b e) + (map-extents (lambda (e u) t) nil b e nil nil 'mm t)) + (provide 'gnus-xmas) ;;; gnus-xmas.el ends here