(mime-parse-multipart): Comment out.
[elisp/flim.git] / mmbuffer.el
index f014aec..0d55007 100644 (file)
@@ -1,8 +1,6 @@
 ;;; mmbuffer.el --- MIME entity module for binary buffer
 
-;; Copyright (C) 1998,1999 Free Software Foundation, Inc.
-;; Copyright (C) 1999 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
+;; Copyright (C) 1998,1999,2000 Free Software Foundation, Inc.
 
 ;; Author: MORIOKA Tomohiko <tomo@m17n.org>
 ;; Keywords: MIME, multimedia, mail, news
@@ -26,6 +24,7 @@
 
 ;;; Code:
 
+(require 'mmgeneric)
 (require 'mime)
 
 (eval-and-compile
@@ -46,8 +45,6 @@
        entity (mime-entity-location-internal entity)))
   (save-excursion
     (set-buffer (mime-buffer-entity-buffer-internal entity))
-    (if (mime-root-entity-p entity)
-       (setq mime-message-structure entity))
     (let ((header-start
           (or (mime-buffer-entity-header-start-internal entity)
               (mime-buffer-entity-set-header-start-internal
   )
 
 
-(defun mime-visible-field-p (field-name visible-fields invisible-fields)
-  (or (catch 'found
-       (while visible-fields
-         (let ((regexp (car visible-fields)))
-           (if (string-match regexp field-name)
-               (throw 'found t)
-             ))
-         (setq visible-fields (cdr visible-fields))
-         ))
-      (catch 'found
-       (while invisible-fields
-         (let ((regexp (car invisible-fields)))
-           (if (string-match regexp field-name)
-               (throw 'found nil)
-             ))
-         (setq invisible-fields (cdr invisible-fields))
-         )
-       t)))
-
-(defun mime-insert-header-from-buffer (buffer start end
-                                             &optional invisible-fields
-                                             visible-fields)
-  (let ((the-buf (current-buffer))
-       (mode-obj (mime-find-field-presentation-method 'wide))
-       field-decoder
-       f-b p f-e field-name len field field-body)
-    (save-excursion
-      (set-buffer buffer)
-      (save-restriction
-       (narrow-to-region start end)
-       (goto-char start)
-       (while (re-search-forward std11-field-head-regexp nil t)
-         (setq f-b (match-beginning 0)
-               p (match-end 0)
-               field-name (buffer-substring f-b p)
-               len (string-width field-name)
-               f-e (std11-field-end))
-         (when (mime-visible-field-p field-name
-                                     visible-fields invisible-fields)
-           (setq field (intern
-                        (capitalize (buffer-substring f-b (1- p))))
-                 field-body (buffer-substring p f-e)
-                 field-decoder (inline (mime-find-field-decoder-internal
-                                        field mode-obj)))
-           (with-current-buffer the-buf
-             (insert field-name)
-             (insert (if field-decoder
-                         (funcall field-decoder field-body len)
-                       ;; Don't decode
-                       field-body))
-             (insert "\n")
-             )))))))
-
 (luna-define-method mime-insert-header ((entity mime-buffer-entity)
                                        &optional invisible-fields
                                        visible-fields)
                       (mime-buffer-entity-body-end-internal entity))
      (mime-entity-encoding entity))))
 
+(luna-define-method mime-entity-body ((entity mime-buffer-entity))
+  (save-excursion
+    (set-buffer (mime-buffer-entity-buffer-internal entity))
+    (buffer-substring (mime-buffer-entity-body-start-internal entity)
+                     (mime-buffer-entity-body-end-internal entity))))
+
 (luna-define-method mime-entity-fetch-field :around
   ((entity mime-buffer-entity) field-name)
   (or (luna-call-next-method)
 ;;; @ header buffer
 ;;;
 
-(luna-define-method mime-entity-header-buffer ((entity mime-buffer-entity))
-  (mime-buffer-entity-buffer-internal entity)
-  )
+;; (luna-define-method mime-entity-header-buffer ((entity mime-buffer-entity))
+;;   (mime-buffer-entity-buffer-internal entity)
+;;   )
 
-(luna-define-method mime-goto-header-start-point ((entity mime-buffer-entity))
-  (set-buffer (mime-buffer-entity-buffer-internal entity))
-  (goto-char (mime-buffer-entity-header-start-internal entity))
-  )
+;; (luna-define-method mime-goto-header-start-point ((entity mime-buffer-entity))
+;;   (set-buffer (mime-buffer-entity-buffer-internal entity))
+;;   (goto-char (mime-buffer-entity-header-start-internal entity))
+;;   )
 
-(luna-define-method mime-entity-header-start-point ((entity
-                                                    mime-buffer-entity))
-  (mime-buffer-entity-header-start-internal entity)
-  )
+;; (luna-define-method mime-entity-header-start-point ((entity
+;;                                                      mime-buffer-entity))
+;;   (mime-buffer-entity-header-start-internal entity)
+;;   )
 
-(luna-define-method mime-entity-header-end-point ((entity
-                                                  mime-buffer-entity))
-  (mime-buffer-entity-header-end-internal entity)
-  )
+;; (luna-define-method mime-entity-header-end-point ((entity
+;;                                                    mime-buffer-entity))
+;;   (mime-buffer-entity-header-end-internal entity)
+;;   )
 
 
 ;;; @ body buffer
 ;;;
 
-(luna-define-method mime-entity-body-buffer ((entity mime-buffer-entity))
-  (mime-buffer-entity-buffer-internal entity)
-  )
+;; (luna-define-method mime-entity-body-buffer ((entity mime-buffer-entity))
+;;   (mime-buffer-entity-buffer-internal entity)
+;;   )
 
-(luna-define-method mime-goto-body-start-point ((entity mime-buffer-entity))
-  (set-buffer (mime-buffer-entity-buffer-internal entity))
-  (goto-char (mime-buffer-entity-body-start-internal entity))
-  )
+;; (luna-define-method mime-goto-body-start-point ((entity mime-buffer-entity))
+;;   (set-buffer (mime-buffer-entity-buffer-internal entity))
+;;   (goto-char (mime-buffer-entity-body-start-internal entity))
+;;   )
 
-(luna-define-method mime-goto-body-end-point ((entity mime-buffer-entity))
-  (set-buffer (mime-buffer-entity-buffer-internal entity))
-  (goto-char (mime-buffer-entity-body-end-internal entity))
-  )
+;; (luna-define-method mime-goto-body-end-point ((entity mime-buffer-entity))
+;;   (set-buffer (mime-buffer-entity-buffer-internal entity))
+;;   (goto-char (mime-buffer-entity-body-end-internal entity))
+;;   )
 
-(luna-define-method mime-entity-body-start-point ((entity mime-buffer-entity))
-  (mime-buffer-entity-body-start-internal entity)
-  )
+;; (luna-define-method mime-entity-body-start-point ((entity mime-buffer-entity))
+;;   (mime-buffer-entity-body-start-internal entity)
+;;   )
 
-(luna-define-method mime-entity-body-end-point ((entity mime-buffer-entity))
-  (mime-buffer-entity-body-end-internal entity)
-  )
+;; (luna-define-method mime-entity-body-end-point ((entity mime-buffer-entity))
+;;   (mime-buffer-entity-body-end-internal entity)
+;;   )
 
 
 ;;; @ buffer (obsolete)
 ;;;
 
-(luna-define-method mime-entity-buffer ((entity mime-buffer-entity))
-  (mime-buffer-entity-buffer-internal entity)
-  )
+;; (luna-define-method mime-entity-buffer ((entity mime-buffer-entity))
+;;   (mime-buffer-entity-buffer-internal entity)
+;;   )
 
-(luna-define-method mime-entity-point-min ((entity mime-buffer-entity))
-  (mime-buffer-entity-header-start-internal entity)
-  )
+;; (luna-define-method mime-entity-point-min ((entity mime-buffer-entity))
+;;   (mime-buffer-entity-header-start-internal entity)
+;;   )
 
-(luna-define-method mime-entity-point-max ((entity mime-buffer-entity))
-  (mime-buffer-entity-body-end-internal entity)
-  )
+;; (luna-define-method mime-entity-point-max ((entity mime-buffer-entity))
+;;   (mime-buffer-entity-body-end-internal entity)
+;;   )
 
 
 ;;; @ end