[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