
(defmacro caar (conscell) (byte-code "มมDD" [conscell car] 3))

(defmacro cdar (conscell) (byte-code "มยDD" [conscell cdr car] 3))

(defun x-menu-mode nil "\
Major mode for creating permanent menus for use with X.
These menus are implemented entirely in Lisp; popup menus, implemented
with x-popup-menu, are implemented using XMenu primitives." (byte-code "ลฦ!ลว!ลศ!ลร!ลษ!มมสห" [buffer-read-only t truncate-lines x-process-mouse-hook mode-line-buffer-identification make-local-variable x-menu-items-per-line x-menu-item-width x-menu-items-alist x-menu-assoc-buffer x-menu-pick-entry ("MENU: %32b")] 7))

(defvar x-menu-max-width 0)

(defvar x-menu-items-per-line 0)

(defvar x-menu-item-width 0)

(defvar x-menu-items-alist nil)

(defvar x-menu-assoc-buffer nil)

(defvar x-menu-item-spacing 1 "\
*Minimum horizontal spacing between objects in a permanent X menu.")

(defun x-menu-create-menu (name) "\
Create a permanent X menu.  Returns an item which should be used as a
menu object whenever referring to the menu." (byte-code "pฤ
!	qล q	*" [old buf name x-menu-assoc-buffer get-buffer-create x-menu-mode] 4))

(defun x-menu-change-associated-buffer (menu buffer) "\
Change associated buffer of MENU to BUFFER.  BUFFER should be a buffer
object." (byte-code "p	qq)" [old menu x-menu-assoc-buffer buffer] 2))

(defun x-menu-add-item (menu item binding) "\
Adds to MENU an item with name ITEM, associated with BINDING.
Following a sequence of calls to x-menu-add-item, a call to x-menu-compute
should be performed before the menu will be made available to the user.

BINDING should be a function of one argument, which is the numerical
button/key code as defined in x-menu.el." (byte-code "pฦ
qว\" ศ	\"  ษBC\"q*" [old elt menu item x-menu-items-alist binding nil assoc rplacd append] 6))

(defun x-menu-delete-item (menu item) "\
Deletes from MENU the item named ITEM.  x-menu-compute should be called
before the menu is made available to the user." (byte-code "pล
qฦ\" ว	ล\"q*" [old elt menu item x-menu-items-alist nil assoc rplaca] 4))

(defun x-menu-activate (menu) "\
Computes all necessary parameters for MENU.  This must be called whenever
a menu is modified before it is made available to the user.

This also creates the menu itself." (byte-code "pห	!ฬอ Sฮฬ@ @@5 @B@@G]A ฯ!*\\ะั\"]	า  ฮ
t 
T
	X ำิี!ึQ@@\"cAg )ืc` )ุฮู ฺed\"TZ]!eb)ห!)" [buf menu buffer-read-only x-menu-max-width x-menu-item-width items-head items-tail x-menu-items-alist x-menu-item-spacing x-menu-items-per-line items pop-to-buffer nil screen-width 0 reverse 1 / erase-buffer format "%" int-to-string "s" 10 shrink-window window-height count-lines] 14))

(defun x-menu-pick-entry (position event) "\
Internal function for dispatching on mouse/menu events" (byte-code "	Sษi
\"^สe`\"หi! ฬ อZฮ	\"\\8A/ ฯ\",ะ!" [x x-menu-items-per-line x-menu-item-width y item litem x-menu-items-alist event x-menu-assoc-buffer / count-lines zerop 0 1 * funcall pop-to-buffer] 7))
