-(defun elopher-format-i (display-string)
- (elopher-type-margin)
- (insert (propertize display-string 'face '(foreground-color . "white")))
- (insert "\n"))
-
-(defun elopher-format-0 (display-string selector hostname port)
- (elopher-type-margin "T")
- (insert (propertize display-string 'face '(foreground-color . "gray")))
- (insert "\n"))
-
-(defun elopher-format-1 (display-string selector hostname port)
- (elopher-type-margin "/")
- (let ((map (make-sparse-keymap)))
- (define-key map [mouse-1]
- (eval `(lambda () (interactive) (elopher-get-index ,hostname ,port ,selector))))
- (insert (propertize display-string
- 'face '(foreground-color . "cyan")
- 'mouse-face 'highlight
- 'help-echo (format "mouse-1: follow link to \"%s\" on %s port %s"
- selector hostname port)
- 'keymap map))
- (insert "\n")))
+(defun elopher-follow-index-link (button)
+ (apply #'elopher-get-index (button-get button 'link-address)))
+
+(defun elopher-follow-text-link (button)
+ (apply #'elopher-get-text (button-get button 'link-address)))