Warning, /pim/messagelib/messagecomposer/TODO is written in an unsupported language. File is not indexed.
0001 This doc describes the state of the composer when my (cberzan) GSoC project 0002 ended and I could no longer dedicate full time to this. 0003 0004 Things that should be rethought a little and refactored: 0005 * All GUI bits should move out of the jobs. Currently this is only the 0006 MainTextJob's ugly KMessageBox that warns the user if a charset is not good 0007 for their message. 0008 * Some jobs (the MainTextJob, AttachmentJob at least) need to know what 0009 charset(s) the user has chosen and whether 8bit encoding is allowed. This is 0010 currently stored in the GlobalPart, and it sucks horribly that each job 0011 might need access to this GlobalPart. The globalPart is currently obtained 0012 by checking all ancestors if they are a Composer, and calling 0013 thatAncestor->globalPart(). This has the nasty side effect that jobs require 0014 a Composer grandparent, and can't be used independently. I haven't found a 0015 good way to solve this without duplication. :-/ 0016 * Related to the above: it should be possible to use any of these jobs outside 0017 of a composer, especially that the TemplateParser and KJots might need them. 0018 It should also be easy to make have something like MyComposer in an 0019 application, extending upon Composer. 0020 0021 Things that are still TODO: 0022 The crypto composer. Currently the plan is to have this simple composer LGPL, 0023 and have another GPL crypto composer that would use this, and be used in KMail. 0024 Whereas this Composer outputs a single KMime::Message, the crypto composer 0025 should probably output a list of Akonadi::Items, and store things that are not 0026 part of the sendable message (such as Bcc) as item attributes.