X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=elmo%2Felmo-cache.el;h=84bcf3a4930f913c762254503bfcc155084bcccb;hb=a717271e46f76079d48f9f976807cfaeeb0a3f85;hp=b13248baefb421fd1b786cf64ff0e7713e123dcd;hpb=3823cb47f19c37a739371e84d76f051cdcc365bd;p=elisp%2Fwanderlust.git diff --git a/elmo/elmo-cache.el b/elmo/elmo-cache.el index b13248b..84bcf3a 100644 --- a/elmo/elmo-cache.el +++ b/elmo/elmo-cache.el @@ -35,10 +35,6 @@ (require 'elmo) (require 'elmo-map) -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; -;; cache backend by Kenichi OKADA -;; (eval-and-compile (luna-define-class elmo-cache-folder (elmo-map-folder) (dir-name directory)) (luna-define-internal-accessors 'elmo-cache-folder)) @@ -91,10 +87,7 @@ (elmo-cache-folder-directory-internal folder))) (luna-define-method elmo-folder-msgdb-create ((folder elmo-cache-folder) - numbers new-mark - already-mark seen-mark - important-mark - seen-list) + numbers flag-table) (let ((i 0) (len (length numbers)) overview number-alist mark-alist entity message-id @@ -116,7 +109,11 @@ num message-id)) (if (setq mark (or (elmo-msgdb-global-mark-get message-id) - (if (member message-id seen-list) nil new-mark))) + (elmo-msgdb-mark + (elmo-flag-table-get flag-table message-id) + (elmo-file-cache-status + (elmo-file-cache-get message-id)) + 'new))) (setq mark-alist (elmo-msgdb-mark-append mark-alist @@ -131,8 +128,7 @@ (list overview number-alist mark-alist))) (luna-define-method elmo-folder-append-buffer ((folder elmo-cache-folder) - unread - &optional number) + &optional flag number) ;; dir-name is changed according to msgid. (unless (elmo-cache-folder-dir-name-internal folder) (let* ((file (elmo-file-cache-get-path (std11-field-body "message-id"))) @@ -165,9 +161,6 @@ (when (file-exists-p file) (insert-file-contents-as-binary file)))) -(luna-define-method elmo-folder-creatable-p ((folder elmo-cache-folder)) - nil) - (luna-define-method elmo-folder-writable-p ((folder elmo-cache-folder)) t) @@ -177,27 +170,6 @@ (luna-define-method elmo-message-file-p ((folder elmo-cache-folder) number) t) -;;; To override elmo-map-folder methods. -(luna-define-method elmo-folder-list-unreads-internal - ((folder elmo-cache-folder) unread-marks &optional mark-alist) - t) - -(luna-define-method elmo-folder-unmark-important ((folder elmo-cache-folder) - numbers) - t) - -(luna-define-method elmo-folder-mark-as-important ((folder elmo-cache-folder) - numbers) - t) - -(luna-define-method elmo-folder-unmark-read ((folder elmo-cache-folder) - numbers) - t) - -(luna-define-method elmo-folder-mark-as-read ((folder elmo-cache-folder) - numbers) - t) - (require 'product) (product-provide (provide 'elmo-cache) (require 'elmo-version))