Work in progress of mail rework

Operating Systems / Haiku - Axel Dörfler [pinc-software.de] - 6 January 2015 08:21 UTC

- Not everything compiles; all protocols, and inbound filters do, though.
- Renamed a few classes to give a better idea what they are for; prefixed public classes with the 'B' prefix.
- Moved ProtocolConfigView's classes into the BPrivate namespace.
- Moved BMailFilter into its own file.
- Added BMailFilter::DescriptiveName(). This is now used by the RuleFilter in order to give a description of what it's doing (ie. no more dozens of "Rule filter" entries in the preferences).
- Removed no longer used MailAddon.h.
- Renamed Addon to AddOn where found, since that is more consistent with the rest of the API.
- Merged the former MailProtocol with the former MailProtocolThread; the differentiation between those two was pretty messy.
- All configuration views touched so far are now using the layout kit.
- The RuleFilter is currently broken functionality wise; I have not yet decided how to solve the stuff it uses (TriggerFileMove() does not exist anymore, for example).
- BMailAddOnSettings (formerly known as AddonSettings) now directly subclass BMessage; there are no Settings() and EditSettings() method anymore. The class uses a copy of itself to determine whether or not it has been changed.
- Lots of cleanup.

715bf3d Work in progress of mail rework.
headers/os/add-ons/mail_daemon/MailAddon.h | 74 ---
headers/os/add-ons/mail_daemon/MailFilter.h | 50 ++
headers/os/add-ons/mail_daemon/MailProtocol.h | 198 +++----
.../os/add-ons/mail_daemon/ProtocolConfigView.h | 109 ++--
headers/os/mail/MailSettings.h | 78 +--
headers/private/mail/FileConfigView.h | 83 +--
.../inbound_filters/match_header/ConfigView.cpp | 310 +++++-----
.../inbound_filters/match_header/RuleFilter.cpp | 116 ++--
.../inbound_filters/match_header/RuleFilter.h | 49 +-
.../inbound_filters/notifier/ConfigView.cpp | 93 ++-
.../inbound_filters/notifier/ConfigView.h | 50 +-
.../inbound_filters/notifier/filter.cpp | 76 ++-
.../inbound_filters/spam_filter/SpamFilter.cpp | 289 +++-------
.../inbound_filters/spam_filter/SpamFilter.h | 101 +---
.../spam_filter/SpamFilterConfig.cpp | 494 ++++------------
.../inbound_protocols/imap/ConfigView.cpp | 77 +--
.../inbound_protocols/pop3/ConfigView.cpp | 57 +-
.../mail_daemon/inbound_protocols/pop3/POP3.cpp | 66 +--
.../mail_daemon/inbound_protocols/pop3/POP3.h | 14 +-
.../outbound_protocols/smtp/ConfigView.cpp | 81 +--
.../mail_daemon/outbound_protocols/smtp/smtp.cpp | 73 +--
.../mail_daemon/outbound_protocols/smtp/smtp.h | 20 +-
src/kits/mail/FileConfigView.cpp | 120 ++--
src/kits/mail/HaikuMailFormatFilter.cpp | 31 +-
src/kits/mail/HaikuMailFormatFilter.h | 17 +-
src/kits/mail/Jamfile | 1 +
src/kits/mail/MailFilter.cpp | 49 ++
src/kits/mail/MailMessage.cpp | 6 +-
src/kits/mail/MailProtocol.cpp | 591 ++++++--------------
src/kits/mail/MailSettings.cpp | 239 ++++----
src/kits/mail/ProtocolConfigView.cpp | 496 +++++++---------
src/kits/mail/c_mail_api.cpp | 32 +-
32 files changed, 1694 insertions(+), 2446 deletions(-)

Upstream: cgit.haiku-os.org


  • Share