diff options
Diffstat (limited to 'lisp/net/newst-treeview.el')
-rw-r--r-- | lisp/net/newst-treeview.el | 63 |
1 files changed, 22 insertions, 41 deletions
diff --git a/lisp/net/newst-treeview.el b/lisp/net/newst-treeview.el index 63740ff5085..9bc094103ec 100644 --- a/lisp/net/newst-treeview.el +++ b/lisp/net/newst-treeview.el @@ -307,8 +307,7 @@ their id stays constant." "Add news ITEM for FEED to newsticker treeview list window. If string SHOW-FEED is non-nil it is shown in the item string." (setq newsticker--treeview-list-show-feed show-feed) - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (let* ((inhibit-read-only t) pos1 pos2) (goto-char (point-max)) @@ -350,8 +349,7 @@ If string SHOW-FEED is non-nil it is shown in the item string." (defun newsticker--treeview-list-clear () "Clear the newsticker treeview list window." - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (let ((inhibit-read-only t)) (erase-buffer) (kill-all-local-variables) @@ -549,8 +547,7 @@ The sort function is chosen according to the value of (defun newsticker--treeview-list-update-faces () "Update faces in the treeview list buffer." (let (pos-sel) - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (let ((inhibit-read-only t)) (goto-char (point-min)) (while (not (eobp)) @@ -582,8 +579,7 @@ The sort function is chosen according to the value of (defun newsticker--treeview-list-clear-highlight () "Clear the highlight in the treeview list buffer." - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (let ((inhibit-read-only t)) (put-text-property (point-min) (point-max) :nt-selected nil)) (newsticker--treeview-list-update-faces))) @@ -592,8 +588,7 @@ The sort function is chosen according to the value of "Update the highlight in the treeview list buffer." (newsticker--treeview-list-clear-highlight) (let (pos num-lines) - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (let ((inhibit-read-only t)) (put-text-property (save-excursion (beginning-of-line) (point)) (save-excursion (end-of-line) (point)) @@ -602,8 +597,7 @@ The sort function is chosen according to the value of (defun newsticker--treeview-list-highlight-start () "Return position of selection in treeview list buffer." - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (goto-char (point-min)) (next-single-property-change (point) :nt-selected))) @@ -677,8 +671,7 @@ for the button." ;; ====================================================================== (defun newsticker--treeview-item-show-text (title description) "Show text in treeview item buffer consisting of TITLE and DESCRIPTION." - (save-excursion - (set-buffer (newsticker--treeview-item-buffer)) + (with-current-buffer (newsticker--treeview-item-buffer) (when (fboundp 'w3m-process-stop) (w3m-process-stop (current-buffer))) (let ((inhibit-read-only t)) @@ -696,8 +689,7 @@ for the button." (defun newsticker--treeview-item-show (item feed-name-symbol) "Show news ITEM coming from FEED-NAME-SYMBOL in treeview item buffer." (setq newsticker--treeview-current-feed (symbol-name feed-name-symbol)) - (save-excursion - (set-buffer (newsticker--treeview-item-buffer)) + (with-current-buffer (newsticker--treeview-item-buffer) (when (fboundp 'w3m-process-stop) (w3m-process-stop (current-buffer))) (let ((inhibit-read-only t) @@ -1012,8 +1004,7 @@ that case." (let ((p (point)) (notify (widget-get w :notify))) ;; FIXME: This moves point!!!! - (save-excursion - (set-buffer (newsticker--treeview-tree-buffer)) + (with-current-buffer (newsticker--treeview-tree-buffer) (widget-value-set w (widget-value w))) (goto-char p)))))) @@ -1045,8 +1036,7 @@ Arguments IGNORE are ignored." (newsticker--treeview-get-current-node) :parent) :from))) (when (or (integerp pos) (and (markerp pos) (marker-position pos))) - (save-excursion - (set-buffer (newsticker--treeview-tree-buffer)) + (with-current-buffer (newsticker--treeview-tree-buffer) (goto-char pos) (move-overlay newsticker--tree-selection-overlay (save-excursion (beginning-of-line) (point)) @@ -1167,8 +1157,7 @@ Arguments IGNORE are ignored." (defun newsticker-treeview-browse-url () "Call `browse-url' for the link of the item at point." (interactive) - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (let ((url (get-text-property (point) :nt-link))) (when url (browse-url url) @@ -1186,15 +1175,13 @@ Arguments IGNORE are ignored." (get-buffer-create "*Newsticker Item*") t) (unless newsticker--selection-overlay - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (setq newsticker--selection-overlay (make-overlay (point-min) (point-max))) (overlay-put newsticker--selection-overlay 'face 'newsticker-treeview-selection-face))) (unless newsticker--tree-selection-overlay - (save-excursion - (set-buffer (newsticker--treeview-tree-buffer)) + (with-current-buffer (newsticker--treeview-tree-buffer) (setq newsticker--tree-selection-overlay (make-overlay (point-min) (point-max))) (overlay-put newsticker--tree-selection-overlay 'face @@ -1237,11 +1224,10 @@ Note: does not update the layout." (defun newsticker-treeview-save () "Save newsticker data including treeview settings." (interactive) - (save-excursion - (let ((coding-system-for-write 'utf-8) - (buf (find-file-noselect (concat newsticker-dir "/groups")))) - (when buf - (set-buffer buf) + (let ((coding-system-for-write 'utf-8) + (buf (find-file-noselect (concat newsticker-dir "/groups")))) + (when buf + (with-current-buffer buf (setq buffer-undo-list t) (erase-buffer) (insert ";; -*- coding: utf-8 -*-\n") @@ -1287,8 +1273,7 @@ Note: does not update the layout." (interactive) (newsticker--treeview-restore-layout) (newsticker--treeview-list-update-highlight) - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (beginning-of-line) (let ((item (get-text-property (point) :nt-item)) (feed (get-text-property (point) :nt-feed))) @@ -1375,8 +1360,7 @@ Will move to previous feed until an item is found." (defun newsticker--treeview-get-selected-item () "Return item that is currently selected in list buffer." - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (beginning-of-line) (get-text-property (point) :nt-item))) @@ -1415,8 +1399,7 @@ Move to next item unless DONT-PROCEED is non-nil." (interactive) (let ((current-feed (or newsticker--treeview-current-feed newsticker--treeview-current-vfeed))) - (save-excursion - (set-buffer (newsticker--treeview-list-buffer)) + (with-current-buffer (newsticker--treeview-list-buffer) (goto-char (point-min)) (while (not (eobp)) (let ((item (get-text-property (point) :nt-item))) @@ -1443,8 +1426,7 @@ Move to next item unless DONT-PROCEED is non-nil." (defun newsticker--treeview-set-current-node (node) "Make NODE the current node." - (save-excursion - (set-buffer (newsticker--treeview-tree-buffer)) + (with-current-buffer (newsticker--treeview-tree-buffer) (setq newsticker--treeview-current-node-id (widget-get node :nt-id)) (setq newsticker--treeview-current-feed (widget-get node :nt-feed)) @@ -1626,8 +1608,7 @@ Return t if a new feed was activated, nil otherwise." (newsticker--treeview-unfold-node group-name)) (setq node (newsticker--treeview-get-node-of-feed feed-name))) (when node - (save-excursion - (set-buffer (newsticker--treeview-tree-buffer)) + (with-current-buffer (newsticker--treeview-tree-buffer) (widget-put node :nt-selected t) (widget-apply-action node) (newsticker--treeview-set-current-node node))))) |