Mercurial > hg > xemacs-beta
comparison lisp/vm/vm-mark.el @ 20:859a2309aef8 r19-15b93
Import from CVS: tag r19-15b93
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:50:05 +0200 |
parents | 376386a54a3c |
children | 441bb1e64a06 |
comparison
equal
deleted
inserted
replaced
19:ac1f612d5250 | 20:859a2309aef8 |
---|---|
96 (setq mlist (cdr mlist)))) | 96 (setq mlist (cdr mlist)))) |
97 (vm-display nil nil '(vm-unmark-message) | 97 (vm-display nil nil '(vm-unmark-message) |
98 '(vm-unmark-message marking-message)) | 98 '(vm-unmark-message marking-message)) |
99 (vm-update-summary-and-mode-line)) | 99 (vm-update-summary-and-mode-line)) |
100 | 100 |
101 (defun vm-mark-summary-region () | |
102 "Mark all messages with summary lines contained in the region." | |
103 (interactive) | |
104 (vm-select-folder-buffer) | |
105 (vm-check-for-killed-summary) | |
106 (vm-error-if-folder-empty) | |
107 (if (null vm-summary-buffer) | |
108 (error "No summary.")) | |
109 (set-buffer vm-summary-buffer) | |
110 (if (not (mark)) | |
111 (error "The region is not active now")) | |
112 (vm-mark-or-unmark-summary-region t) | |
113 (vm-display nil nil '(vm-mark-summary-region) | |
114 '(vm-mark-summary-region marking-message)) | |
115 (vm-update-summary-and-mode-line)) | |
116 | |
117 (defun vm-unmark-summary-region () | |
118 "Remove marks from messages with summary lines contained in the region." | |
119 (interactive) | |
120 (vm-select-folder-buffer) | |
121 (vm-check-for-killed-summary) | |
122 (vm-error-if-folder-empty) | |
123 (if (null vm-summary-buffer) | |
124 (error "No summary.")) | |
125 (set-buffer vm-summary-buffer) | |
126 (if (not (mark)) | |
127 (error "The region is not active now")) | |
128 (vm-mark-or-unmark-summary-region nil) | |
129 (vm-display nil nil '(vm-unmark-summary-region) | |
130 '(vm-unmark-summary-region marking-message)) | |
131 (vm-update-summary-and-mode-line)) | |
132 | |
133 (defun vm-mark-or-unmark-summary-region (markit) | |
134 ;; The folder buffers copy of vm-message-list has already been | |
135 ;; propagated to the summary buffer. | |
136 (let ((mp vm-message-list) | |
137 (beg (point)) | |
138 (end (mark)) | |
139 tmp m) | |
140 (if (> beg end) | |
141 (setq tmp beg beg end end tmp)) | |
142 (while mp | |
143 (setq m (car mp)) | |
144 (if (not (eq (not markit) (not (vm-mark-of m)))) | |
145 (if (or (and (> (vm-su-end-of m) beg) | |
146 (< (vm-su-end-of m) end)) | |
147 (and (>= (vm-su-start-of m) beg) | |
148 (< (vm-su-start-of m) end)) | |
149 (and (>= beg (vm-su-start-of m)) | |
150 (< beg (vm-su-end-of m)))) | |
151 (progn | |
152 (vm-set-mark-of m markit) | |
153 (vm-mark-for-summary-update m t)))) | |
154 (setq mp (cdr mp))))) | |
155 | |
101 (defun vm-mark-or-unmark-messages-with-selector (val selector arg) | 156 (defun vm-mark-or-unmark-messages-with-selector (val selector arg) |
102 (let ((mlist vm-message-list) | 157 (let ((mlist vm-message-list) |
103 (virtual (eq major-mode 'vm-virtual-mode)) | 158 (virtual (eq major-mode 'vm-virtual-mode)) |
104 (arglist (if arg (list arg) nil)) | 159 (arglist (if arg (list arg) nil)) |
105 (count 0)) | 160 (count 0)) |