;ELC   
;;; compiled by gsstark@lola-granola.MIT.EDU on Tue Jul 23 13:33:40 1996
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/gnus-5.2.37/lisp/earcon.el
;;; emacs version 19.30.1.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`earcon.el' was compiled for Emacs 19.29 or later"))


(byte-code "ÀÁ!„ ÀÁ!„ ÂÃ\f\"ÁBÆÇ!ˆÆÈ!‡" [boundp running-xemacs string-match "XEmacs\\|Lucid" emacs-version current-load-list require gnus gnus-sound] 3)
#@64 When True, automatially play sounds as well as buttonize them.
(defvar earcon-auto-play nil (#$ . 665))
#@24 The start of an earcon
(defvar earcon-prefix "**" (#$ . 775))
#@22 The end of an earcon
(defvar earcon-suffix "**" (#$ . 843))
#@50 A list of regexps to map earcons to real sounds.
(defvar earcon-regexp-alist (quote (("boring" 1 "Boring.au") ("evil[ 	]+laugh" 1 "Evil_Laugh.au") ("gag\\|puke" 1 "Puke.au") ("snicker" 1 "Snicker.au") ("meow" 1 "catmeow.au") ("sob\\|boohoo" 1 "cry.wav") ("drum[ 	]*roll" 1 "drumroll.au") ("blast" 1 "explosion.au") ("flush" 1 "flush.au") ("kiss" 1 "kiss.wav") ("tee[ 	]*hee" 1 "laugh.au") ("shoot" 1 "shotgun.wav") ("yawn" 1 "snore.wav") ("cackle" 1 "witch.au") ("yell\\|roar" 1 "yell2.au") ("whoop-de-doo" 1 "whistle.au"))) (#$ . 909))
(byte-code "ÀÁ!„ ÂÁBÄÁ!‡" [boundp earcon-button-marker-list nil current-load-list make-variable-buffer-local] 2)
#@190 Check text under the mouse pointer for a callback function.
If the text under the mouse pointer has a `earcon-callback' property,
call it with the value of the `earcon-data' text property.
(defalias 'earcon-article-push-button #[(event) "À	‰A@)‰@)!qˆ	‰A@)‰A@:ƒ# \nA@@‚& \nA@)ÄÅ\"ÄÇ\"‰…= !+‡" [window-buffer event position pos get-text-property earcon-data data earcon-callback fun] 4 (#$ . 1570) "e"])
#@160 Check text at point for a callback function.
If the text at point has a `earcon-callback' property,
call it with the value of the `earcon-data' text property.
(defalias 'earcon-article-press-button #[nil "À`Á\"À`Ã\"‰… \f\n!*‡" [get-text-property earcon-data data earcon-callback fun] 4 (#$ . 1994) nil])
#@75 Move point to N buttons backward.
If N is negative, move forward instead.
(defalias 'earcon-article-prev-button #[(n) "À	[!‡" [earcon-article-next-button n] 2 (#$ . 2307) "p"])
#@75 Move point to N buttons forward.
If N is negative, move backward instead.
(defalias 'earcon-article-next-button #[(n) "ÁWƒ\n Â‚ ÃÄÁWÁWƒ e‚ dÉ!`U„x ÁVƒx Ê`Ë\"ƒA `ËÌ$bˆ`ËÌ$‰ƒR bˆ)ƒh Ê`Ë\"„h `ËÌ$bˆÊ`Î\"ƒr TS‚% ÁU„ƒ ÏÐÑ\"ˆ,‡" [n 0 previous-single-property-change next-single-property-change t limit backward inhibit-point-motion-hooks function abs get-text-property earcon-callback nil point intangible gnus-message 5 "No more buttons"] 6 (#$ . 2490) "p"])
#@70 Create a button between FROM and TO with callback FUN and data DATA.
(defalias 'earcon-article-add-button #[(from to fun &optional data) "À	!ƒ 	ƒ ÂÃ\f\"Æ	#ˆÇ\f…  	DÊD¤\f…. Í\fD¤#‡" [boundp gnus-article-button-face gnus-overlay-put gnus-make-overlay from to face gnus-add-text-properties gnus-article-mouse-face gnus-mouse-face-prop gnus-callback fun data gnus-data] 6 (#$ . 2987)])
(defalias 'earcon-button-entry #[nil "ÁÂƒ\" ‰A@Æ@!ƒ Â‰‚ Â‚ +‡" [earcon-regexp-alist t nil entry case-fold-search alist looking-at] 4])
(defalias 'earcon-button-push #[(marker) "Šqˆ	bˆÂ ÄÆÈ8C	Ê!ƒ% Ë	\"‚G Ì!ƒ> ÊJ!ƒ> ËJ	\"‚G ÍÎÏ	B#-‡" [gnus-article-buffer marker earcon-button-entry entry t inhibit-point-motion-hooks gnus-sound-play fun 2 args fboundp apply boundp gnus-message 1 "You must define `%S' to use this button"] 5])
#@51 Play Sounds in the region between point and mark.
(defalias 'earcon-region #[(beg end) "Àp	\n#‡" [earcon-buffer beg end] 4 (#$ . 3850) "r"])
(defalias 'earcon-buffer #[(&optional buffer st nd) "ŠÀÁ!ƒ 	ƒ 	‰A@Â‰“ˆ‚ Âƒ  qˆÂÄ‰Â‰‰	\n\febˆ`	‰A	@‰…› Í!Ï@ÐÍ!°bˆÒÂÄ#ƒ; …m Ó”…v Ó•Ó”×ØÙ Â“	B‰@$ˆÚAA@!ˆ+‚] .‡" [boundp earcon-button-marker-list nil buffer t earcon-regexp-alist regexp entry beg alist case-fold-search inhibit-point-motion-hooks buffer-read-only regexp-quote earcon-prefix ".*\\(" "\\).*" earcon-suffix re-search-forward 1 start end from earcon-article-add-button earcon-button-push make-marker gnus-sound-play] 7 nil nil])
#@33 Play sounds in message buffers.
(defalias 'gnus-earcon-display #[nil "ŠqˆebˆÁÂÃÄ#„ dbˆÅÆ!ˆÇp`\")‡" [gnus-article-buffer search-forward "\n\n" nil t sit-for 0 earcon-buffer] 4 (#$ . 4541) nil])
(byte-code "ÀÁ!ˆÂÃ!‡" [provide earcon run-hooks earcon-load-hook] 2)
