Function: x-dnd-modifier-mask
x-dnd-modifier-mask is a byte-compiled function defined in
x-dnd.el.gz.
Signature
(x-dnd-modifier-mask MODS)
Documentation
Return the X modifier mask for the Emacs modifier state MODS.
MODS is a single symbol, or a list of symbols such as shift or
control.
Source Code
;; Defined in /usr/src/emacs/lisp/x-dnd.el.gz
(defun x-dnd-modifier-mask (mods)
"Return the X modifier mask for the Emacs modifier state MODS.
MODS is a single symbol, or a list of symbols such as `shift' or
`control'."
(let ((virtual-modifiers (x-get-modifier-masks))
(mask 0))
(unless (consp mods)
(setq mods (list mods)))
(dolist (modifier mods)
(cond ((eq modifier 'shift)
(setq mask (logior mask 1))) ; ShiftMask
((eq modifier 'control)
(setq mask (logior mask 4))) ; ControlMask
((eq modifier 'meta)
(setq mask (logior mask (nth 4 virtual-modifiers))))
((eq modifier 'hyper)
(setq mask (car virtual-modifiers)))
((eq modifier 'super)
(setq mask (cadr virtual-modifiers)))
((eq modifier 'alt)
(setq mask (nth 2 virtual-modifiers)))))
mask))