Function: artist-go-get-symbol-shift-sub

artist-go-get-symbol-shift-sub is a byte-compiled function defined in artist.el.gz.

Signature

(artist-go-get-symbol-shift-sub TABLE SYMBOL IS-SHIFTED)

Documentation

Search TABLE for (shifted or unshifted) graphics SYMBOL.

If IS-SHIFTED is non-nil, return the shifted symbol, otherwise the unshifted symbol.

Source Code

;; Defined in /usr/src/emacs/lisp/textmodes/artist.el.gz
(defun artist-go-get-symbol-shift-sub (table symbol is-shifted)
  "Search TABLE for (shifted or unshifted) graphics SYMBOL.
If IS-SHIFTED is non-nil, return the shifted symbol,
otherwise the unshifted symbol."
  (catch 'found
    (mapc
     (lambda (element)
       (let ((element-tag (artist-mt-get-tag element)))
	 (cond ((eq element-tag 'graphics-operation)
		(let* ((info-part       (artist-mt-get-info-part element))
		       (unshift-variant (artist-go-get-unshifted info-part))
		       (shift-variant   (artist-go-get-shifted info-part))
		       (unshift-sym     (artist-go-get-symbol unshift-variant))
		       (shift-sym       (artist-go-get-symbol shift-variant)))
		  (if (or (eq symbol unshift-sym) (eq symbol shift-sym))
		      (throw 'found (if is-shifted shift-sym unshift-sym)))))

	       ((eq element-tag 'menu)
		(let* ((info-part     (artist-mt-get-info-part element))
		       (items         (artist-mn-get-items info-part))
		       (answer        (artist-go-get-symbol-shift-sub
				       items symbol is-shifted)))
		  (if answer (throw 'found answer)))))))

     table)
    nil))