[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/ebdb 6c267e9 159/350: Fix pop-up mouse menus in EBDB bu
From: |
Eric Abrahamsen |
Subject: |
[elpa] externals/ebdb 6c267e9 159/350: Fix pop-up mouse menus in EBDB buffers |
Date: |
Mon, 14 Aug 2017 11:46:27 -0400 (EDT) |
branch: externals/ebdb
commit 6c267e969d078c6d68bf3338bb181dc82d598c7c
Author: Eric Abrahamsen <address@hidden>
Commit: Eric Abrahamsen <address@hidden>
Fix pop-up mouse menus in EBDB buffers
Closes #17
* ebdb-com.el (ebdb-sendmail-menu): Have to extract string from mail
address.
(ebdb-field-menu): Just loop over the field's actions.
---
ebdb-com.el | 49 ++++++++++++++++++-------------------------------
1 file changed, 18 insertions(+), 31 deletions(-)
diff --git a/ebdb-com.el b/ebdb-com.el
index 7fd7b8f..dc9400f 100644
--- a/ebdb-com.el
+++ b/ebdb-com.el
@@ -1110,9 +1110,10 @@ There are numerous hooks. M-x apropos ^ebdb.*hook RET
(if (cdr mails)
;; Submenu for multiple mail addresses
(cons "Send mail to..."
- (mapcar (lambda (address)
- (vector address `(ebdb-compose-mail
- ,(ebdb-dwim-mail record address))
+ (mapcar (lambda (m)
+ (vector (ebdb-string m)
+ `(ebdb-compose-mail
+ ,(ebdb-dwim-mail record m))
t))
mails))
;; Single entry for single mail address
@@ -1120,34 +1121,20 @@ There are numerous hooks. M-x apropos ^ebdb.*hook RET
`(ebdb-compose-mail ,(ebdb-dwim-mail record (car mails)))
t)))))
-;; (defun ebdb-field-menu (record field)
-;; "Menu items specifically for FIELD of RECORD."
-;; (let ((type (car field)))
-;; (append
-;; (list
-;; (format "Commands for %s Field:"
-;; (cond ((eq type 'xfields)
-;; (format "\"%s\"" (symbol-name (car (nth 1 field)))))
-;; ((eq type 'name) "Name")
-;; ((eq type 'affix) "Affix")
-;; ((eq type 'organization) "Organization")
-;; ((eq type 'aka) "Alternate Names")
-;; ((eq type 'mail) "Mail Addresses")
-;; ((memq type '(address phone))
-;; (format "\"%s\" %s" (aref (nth 1 field) 0)
-;; (capitalize (symbol-name type)))))))
-;; (cond ((eq type 'phone)
-;; (list (vector (concat "Dial " (ebdb-string (nth 1 field)))
-;; `(ebdb-dial ',field nil) t)))
-;; ((eq type 'xfields)
-;; (let* ((field (cadr field))
-;; (type (car field)))
-;; (cond ((eq type 'url )
-;; (list (vector (format "Browse \"%s\"" (cdr field))
-;; `(ebdb-browse-url ,record) t)))))))
-;; '(["Edit Field" ebdb-edit-field t])
-;; (unless (eq type 'name)
-;; '(["Delete Field" ebdb-delete-field-or-record t])))))
+(defun ebdb-field-menu (record field)
+ "Menu items specifically for FIELD of RECORD."
+ (append
+ (list (format "Commands for %s Field:"
+ (capitalize (ebdb-field-readable-name field))))
+ (mapcar
+ (lambda (a)
+ ;; Yuck. Guess I'll have to give action functions a string
+ ;; name.
+ (vector (symbol-name a) a t))
+ (slot-value field 'actions))
+ '(["Edit Field" ebdb-edit-field t]
+ ["Edit Field Customize" ebdb-edit-field-customize t]
+ ["Delete Field" ebdb-delete-field-or-record t])))
(defun ebdb-insert-field-menu (record)
"Submenu for inserting a new field for RECORD."
- [elpa] externals/ebdb 20906ae 131/350: ebdb-prompt-for-record should load if necessary, (continued)
- [elpa] externals/ebdb 20906ae 131/350: ebdb-prompt-for-record should load if necessary, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 1bc78ab 133/350: Add helm-ebdb file, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb ed3e270 119/350: Reverse order of args in return value of ebdb-popup-window, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb ed6e228 136/350: Make ebdb-annotate-message more class agnostic, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb aa2d973 147/350: Allow optional records argument to ebdb-initialize, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 42f6dce 130/350: Add "Hacking EBDB" section to manual, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 5dda311 118/350: Force mode line update after renaming EBDB buffers, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb a94483d 122/350: Refinements to snarfing, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb d9b4865 146/350: More tweaks to snarfing process, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb b635b4e 155/350: First stab at article snarfing, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 6c267e9 159/350: Fix pop-up mouse menus in EBDB buffers,
Eric Abrahamsen <=
- [elpa] externals/ebdb 55b3f82 160/350: Fixup with fix popup menus, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb abdb8cd 158/350: Update copyright years to 2017, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 5fdf286 166/350: Feeding incorrect args to ebdb-snarf, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 9b6c88d 167/350: Fix incorrect variable name, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb dd13813 171/350: Bah, fixups to a19ff0a, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb f1448f4 174/350: Remove this empty file, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 6479c87 173/350: Remove unused code, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb db930f6 163/350: Compiler-inspired fixes, and removal of old-code references, Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 281c61e 154/350: Don't ((lambda ()), Eric Abrahamsen, 2017/08/14
- [elpa] externals/ebdb 4cce4c8 096/350: Simplify role field adoption process, Eric Abrahamsen, 2017/08/14