-(defun elopher-text-filter (proc string)
- (let ((marker (process-mark proc))
- (inhibit-read-only t))
- (if (not (marker-position marker))
- (set-marker marker 0 (current-buffer)))
- (save-excursion
- (goto-char marker)
- (dolist (line (split-string string "\r"))
- (insert line))
- (set-marker marker (point)))))
-
-(defun elopher-get-text (selector host port)
- (elopher-get-selector selector host port
- #'elopher-text-filter))
-
-;; Image retrieval
-
-(defvar elopher-image-buffer "")
-
-(defun elopher-image-filter (proc string)
- (setq elopher-image-buffer (concat elopher-image-buffer string)))
-
-(defun elopher-image-sentinel (proc event)
- (let ((inhibit-read-only t))
- (insert-image (create-image elopher-image-buffer))))
-
-(defun elopher-get-image (selector host port)
- (setq elopher-image-buffer "")
- (elopher-get-selector selector host port
- #'elopher-image-filter
- #'elopher-image-sentinel))
-
-;; Start page retrieval
-
-(defun elopher-get-start-page (&optional selector host port)
- "Display start page. SELECTOR, HOST and PORT are unused."
- (let ((inhibit-read-only t))
- (erase-buffer)
- (save-excursion
- (elopher-render-complete-records elopher-start-page))))
+(defun elopher-get-text-node ()
+ (let ((content (elopher-node-content elopher-current-node))
+ (address (elopher-node-address elopher-current-node)))
+ (if content
+ (let ((inhibit-read-only t))
+ (insert content))
+ (elopher-get-selector address
+ (lambda (proc event)
+ (let ((inhibit-read-only t))
+ (insert elopher-selector-string))
+ (elopher-set-current-node-content elopher-selector-string))))))