;ELC   
;;; compiled by mcuddy@whitewater on Wed May 18 05:11:22 1994
;;; from file /u/jwz/emacs19/lisp/utils/annotations.el
;;; emacs version 19.10 Lucid (beta23).
;;; bytecomp version 2.24; 26-Apr-94.
;;; 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")))
    (error "This file was compiled for Emacs 19."))

(defvar make-annotation-hook nil "\
*Function or functions to run immediately after creating an annotation.")
(defvar before-delete-annotation-hook nil "\
*Function or functions to run immediately before deleting an annotation.")
(defvar after-delete-annotation-hook nil "\
*Function or functions to run immediately after deleting an annotation.")
(defvar annotation-local-map-default (byte-code " 	\"	#	#	)" [make-sparse-keymap map set-keymap-name annotation-local-map define-key button1 annotation-activate-function-default button3 annotation-popup-menu] 4) "\
Keymap used to activate annotations with only annotation data passed.")
(defvar annotation-local-map-with-event (byte-code " 	\"	#	#	)" [make-sparse-keymap map set-keymap-name annotation-local-map define-key button1 annotation-activate-function-with-event button3 annotation-popup-menu] 4) "\
Keymap used to activate annotations with annotation data and event passed.")
(byte-code "MM" [annotation-activate-function-default #[(event) "	!!!!\"	!	!tÉr!\"	!=!!!!+" [event-glyph event t nil up-glyph mouse-down extent annotation-down-glyph annotation-glyph set-annotation-glyph next-event button-release-event-p annotation-action annotation-data] 5 nil "e"] annotation-activate-function-with-event #[(event) "	!!!!\"	!	!tÉr!\"	!=!!!	\"+" [event-glyph event t nil up-glyph mouse-down extent annotation-down-glyph annotation-glyph set-annotation-glyph next-event button-release-event-p annotation-action annotation-data] 5 nil "e"]] 2)
(fset 'make-annotation #[(glyph &optional pos layout buffer with-event d-glyph) "\np\n!\nq`)\n#	!	#	#	%#	#	#	#	#	#	\"	)" [nil new-annotation buffer get-buffer pos layout whitespace make-extent detach-extent set-extent-endpoints set-extent-begin-glyph glyph set-extent-property annotation vector d-glyph start-open t end-closed duplicable with-event keymap annotation-local-map-with-event annotation-local-map-default run-hook-with-args make-annotation-hook] 9 "\
Create a marginal annotation with symbol GLYPH at position POS.
GLYPH may be either a pixmap object or a string.  Use layout policy
LAYOUT and place the annotation in buffer BUFFER.  If POS is nil, point is
used.  If LAYOUT is nil, `whitespace' is used.  If BUFFER is nil, the
current buffer is used.  If WITH-EVENT is non-nil, then when an annotation
is activated, the triggering event is passed as the second arg to the
annotation function. If D-GLYPH is non-nil then it is used as the glyph 
that will be displayed when button1 is down."])
(byte-code "M\"" [make-graphic-annotation make-annotation make-obsolete] 3)
(fset 'delete-annotation #[(annotation) "	!	\"	\"	!!" [annotationp annotation error "%s is not an annotation" run-hook-with-args before-delete-annotation-hook delete-extent run-hooks after-delete-annotation-hook] 3 "\
Remove ANNOTATION from its buffer.  This does not modify the buffer text."])
(fset 'annotationp #[(annotation) "	!	\"??" [extentp annotation extent-property] 3 "\
T if OBJECT is an annotation"])
(fset 'annotation-visible #[(annotation) "	!	\"	\"?" [annotationp annotation error "%s is not an annotation" extent-property glyph-invisible] 3 "\
T if there is enough available space to display ANNOTATION."])
(fset 'annotation-at #[(&optional pos buffer) "	\n\"@" [annotations-at pos buffer] 3 "\
Find annotation at POS in BUFFER.  BUFFER defaults to the current buffer.
POS defaults to point in BUFFER"])
(fset 'annotation-layout #[(annotation) "	!	\"	!" [annotationp annotation error "%s is not an annotation" extent-layout] 3 "\
Return the layout policy of annotation ANNOTATION.  The layout policy
is set using `set-annotation-layout'."])
(fset 'set-annotation-layout #[(annotation layout) "	!	\"	\"" [annotationp annotation error "%s is not an annotation" set-extent-layout layout] 3 "\
Set the layout policy of ANNOTATION to LAYOUT.  The function
`annotation-layout' returns the current layout policy."])
(fset 'annotation-type #[(annotation) "	!??	!	!;Ī!	\"	!!Vʪ)" [annotationp annotation extent-begin-glyph glyph stringp pixmapp error "%s is a corrupt annotation" pixmap-depth 0 pixmap bitmap] 3 "\
Return the display type of the annotation ANNOTATION.  The type will
be one of the following symbols:

	pixmap
	bitmap
	string
	nil	(the object is not an annotation)"])
(fset 'annotation-width #[(annotation) "	!	\"	!=	!!ȇ" [annotationp annotation error "%s is not an annotation" annotation-type string pixmap-width extent-begin-glyph 0] 3 "\
Return the width of the annotation ANNOTATION in pixels."])
(fset 'annotation-glyph #[(annotation) "	!	\"	\"H" [annotationp annotation error "%s is not an annotation" extent-property 3] 3 "\
If ANNOTATION is of type `string' return the string.  Otherwise, return
the bitmap or pixmap object of the glyph representing ANNOTATION.
The glyph is set using `set-annotation-glyph'."])
(fset 'set-annotation-glyph #[(annotation glyph &optional layout) "	!	\"	!	#	\"I	!" [annotationp annotation error "%s is not an annotation" layout extent-layout set-extent-begin-glyph glyph extent-property 3 annotation-glyph] 4 "\
Set the representation of ANNOTATION to GLYPH.  GLYPH may be either
a string or a bitmap/pixmap object.  If LAYOUT is non-nil set the layout
policy of the annotation to LAYOUT.  The function `annotation-glyph'
returns the current glyph."])
(fset 'annotation-down-glyph #[(annotation) "	!	\"	\"H" [annotationp annotation error "%s is not an annotation" extent-property 4] 3 "\
If ANNOTATION is of type `string' return the down string.  Otherwise,
return the bitmap or pixmap object of the down-glyph representing ANNOTATION.
The down-glyph is set using `set-annotation-down-glyph'."])
(fset 'set-annotation-down-glyph #[(annotation glyph) "	!	\"	\"I" [annotationp annotation error "%s is not an annotation" extent-property 4 glyph] 3 "\
Set the depressed representation of ANNOTATION to GLYPH.  
GLYPH may be either a string or a bitmap/pixmap object. 
The function `annotation-down-glyph' returns the current down-glyph."])
(byte-code "MM\"\"" [annotation-graphic annotation-glyph set-annotation-graphic set-annotation-glyph make-obsolete] 3)
(fset 'annotation-data #[(annotation) "	!	\"	\"H" [annotationp annotation error "%s is not an annotation" extent-property 0] 3 "\
Return the data associated with annotation ANNOTATION.  The data is
set using `set-annotation-data'."])
(fset 'set-annotation-data #[(annotation data) "	!	\"	\"I" [annotationp annotation error "%s is not an annotation" extent-property 0 data] 3 "\
Set the data field of ANNOTATION to DATA.
The function `annotation-data' returns the current data."])
(fset 'annotation-action #[(annotation) "	!	\"	\"H" [annotationp annotation error "%s is not an annotation" extent-property 1] 3 "\
Return the action associated with annotation ANNOTATION.  The action
is set using `set-annotation-action'."])
(fset 'set-annotation-action #[(annotation action) "	!	\"	\"I" [annotationp annotation error "%s is not an annotation" extent-property 1 action] 3 "\
Set the action field of ANNOTATION to ACTION.  The function
`annotation-action' returns the current action."])
(fset 'annotation-face #[(annotation) "	!	\"	!" [annotationp annotation error "%s is not an annotation" extent-face] 3 "\
Return the face associated with annotation ANNOTATION.  The face is
set using `set-annotation-face'."])
(fset 'set-annotation-face #[(annotation face) "	!	\"	\"" [annotationp annotation error "%s is not an annotation" set-extent-face face] 3 "\
Set the face associated with annotation ANNOTATION to FACE.  The function
`annotation-face' returns the current face."])
(fset 'annotation-hide #[(annotation) "	\"" [set-extent-begin-glyph annotation nil] 3 "\
Remove ANNOTATION's glyph so that it is invisible."])
(fset 'annotation-reveal #[(annotation) "		!\"" [set-extent-begin-glyph annotation annotation-glyph] 4 "\
Add ANNOTATION's glyph so that it is visible."])
(fset 'annotations-in-region #[(start end buffer) "q	eW!dV!	&*" [buffer start error "<start> not in range of buffer" end "<end> not in range of buffer" nil note-list map-extents #[(extent dummy) "	!	\nBÇ" [annotationp extent note-list nil] 2] t] 7 "\
Return all annotations in BUFFER which are between START and END
inclusively."])
(fset 'annotations-at #[(&optional pos buffer) "p	q`)	#" [buffer pos annotations-in-region] 4 "\
Return a list of all annotations at POS in BUFFER.  If BUFFER is nil,
the current buffer is used.  If POS is nil, point is used."])
(fset 'annotation-list #[(&optional buffer) "pqed#)" [buffer annotations-in-region] 4 "\
Return a list of all annotations in BUFFER.  If BUFFER is nil, the
current buffer is used."])
(fset 'all-annotations #[nil " \n@!As\n*" [buffer-list nil result b annotation-list] 4 "\
Return a list of all annotations in existence."])
(fset 'annotation-popup-menu #[(event) "	!\n!b\n!\n!! *" [event-glyph event extent extent-end-position annotation-menu popup-menu popup-mode-menu] 3 "\
Pop up a menu of annotations commands.
Point is temporarily moved to the click position." "e"])
(fset 'set-annotation-menu #[(annotation menu) "	!	\"	\"I" [annotationp annotation error "%s is not an annotation" extent-property 2 menu] 3 "\
Set the menu field of ANNOTATION to MENU.  The function
`annotation-menu' returns the current menu."])
(fset 'annotation-menu #[(annotation) "	!	\"	\"H" [annotationp annotation error "%s is not an annotation" extent-property 2] 3 "\
Return the menu associated with annotation ANNOTATION.  The menu
is set using `set-annotation-menu'."])
(provide 'annotations)
