[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/work/akonadi-ports/kdepim/messagecomposer
From:       Constantin Berzan <exit3219 () gmail ! com>
Date:       2009-08-31 9:09:19
Message-ID: 1251709759.392891.705.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1017697 by cberzan:

Document this for those who might delve into it in the future.


 M  +6 -0      COMPLIANCE  
 M  +7 -23     DESIGN  
 A             TODO  
 D             TODO.cberzan  


--- branches/work/akonadi-ports/kdepim/messagecomposer/COMPLIANCE #1017696:1017697
@@ -1,3 +1,9 @@
+NOTE: This document is outdated.  It shows mostly what was planned to be done,
+but 8bit encoding is mostly untested at this time.  There is no way currently
+to find out if a MailTransport::Transport supports 8bit or not.
+
+
+
 How Content-Transfer-Encoding (CTE) is handled:
 --------------------------------------------
 (see RFC2045)
--- branches/work/akonadi-ports/kdepim/messagecomposer/DESIGN #1017696:1017697
@@ -4,43 +4,27 @@
 
 MessagePart classes represent the data of messages in an abstract way that is very close to
 the way a GUI composer would see the data.  Thus, the composer takes the folowing input data:
+* GlobalPart:
+  - The charsets the user prefers.
+  - Whether 8bit encoding is allowed.
 * InfoPart:
   - Mode: compose the messages to be sent, or to be saved somewhere locally.
   - Sender and recipients.
   - The transport to use.
-  - Signing and encryption settings.
 * TextPart:
   - The plain text and, optionally, the HTML text from an editor.
-  - The charsets the user prefers.
 * Zero or more AttachmentParts:
-  - The file to be attached.
-  - Signing and encryption settings for the attachment.
+  - The data and details (such as MIME type, file name) of an attachment.
 
 --------------------------
 Output data:
 
-The composer outputs a set of Messages.  If crypto is used, we have to encrypt the message
-separately with each recipient's public key, hence we may need to send more than one message.
-A Message contains the KMime::Message to be sent, and the From:, To:, Cc:, and Bcc: strings
-to use for the transport.  Note that, because of crypto and the fact that Bcc: need to be
-blind, these fields used for transport may be different from the corresponding headers encoded
-in the KMime::Message.  If the message is composed for saving (as opposed to being composed
-for sending), these fields are saved in the KMime::Message as custom X- fields.
+The composer outputs a single KMime::Message containing the assembled message.
 
 --------------------------
-Class hierarchy:
-+ Composer (:KJob)          -- The master object that controls everything else.
-+ FinalMessage (:)          -- Container for a final KMime::Message as well as sender and
-                               recipient addresses to be used for transport.
-+ Job (:KJob)               -- Abstract base class for representing some content part from a KMime
-                               point of view. FIXME not true
-  + ...
-+ MessagePart (:QObject)    -- Abstract base class for representing some part of the message from
-                               a GUI composer point of view.
-  + ...
-
---------------------------
 Logic:
+(NOTE: Based on messagecomposer.cpp in KMail. This does not apply. This is
+TODO in the crypto composer.)
 
 Definitions:
 * Early attachment -- An attachment that has the same signing / crypto settings as the main
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic