You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdepim/kmailcvt
samelian 8f289a4fcf
[kdepim] initial cmake support for: karm, kmailcvt, kabc, kfile-plugins, konsolekalendar
14 years ago
..
pics [kdepim] initial cmake support for: karm, kmailcvt, kabc, kfile-plugins, konsolekalendar 14 years ago
samples Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
CMakeLists.txt [kdepim] initial cmake support for: karm, kmailcvt, kabc, kfile-plugins, konsolekalendar 14 years ago
Makefile.am * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
README Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
cr16-app-kmailcvt.png Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
cr32-app-kmailcvt.png Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
cr48-app-kmailcvt.png Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
filter_evolution.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_evolution.hxx Trinity Qt initial conversion 15 years ago
filter_evolution_v2.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_evolution_v2.hxx Trinity Qt initial conversion 15 years ago
filter_kmail_archive.cxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_kmail_archive.hxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_kmail_maildir.cxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_kmail_maildir.hxx Trinity Qt initial conversion 15 years ago
filter_lnotes.cxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_lnotes.hxx Trinity Qt initial conversion 15 years ago
filter_mailapp.cxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_mailapp.hxx Trinity Qt initial conversion 15 years ago
filter_mbox.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_mbox.hxx Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
filter_oe.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_oe.hxx Trinity Qt initial conversion 15 years ago
filter_opera.cxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_opera.hxx Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
filter_outlook.cxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_outlook.hxx Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
filter_plain.cxx * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
filter_plain.hxx Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
filter_pmail.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_pmail.hxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_sylpheed.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_sylpheed.hxx Trinity Qt initial conversion 15 years ago
filter_thebat.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_thebat.hxx Trinity Qt initial conversion 15 years ago
filter_thunderbird.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filter_thunderbird.hxx Trinity Qt initial conversion 15 years ago
filters.cxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
filters.hxx Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
kimportpage.cpp Trinity Qt initial conversion 15 years ago
kimportpage.h Trinity Qt initial conversion 15 years ago
kimportpagedlg.ui Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
kmailcvt.cpp Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
kmailcvt.h * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
kselfilterpage.cpp * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
kselfilterpage.h TQt conversion fixes 15 years ago
kselfilterpagedlg.ui Moved kpilot from kdepim to applications, as the core Trinity libraries should not contain hardware-dependent software 14 years ago
main.cpp * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
uninstall.desktop Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago

README

The KDE Mail Import tool - KMailCVT
===================================

This directory contains the sources for the kmailcvt program. It communicates
with KMail via its DCOP interface to add messages.

Writing a filter
----------------

...is very easy. Create two files filter_myformat.cxx and filter_myformat.hxx
and add "filter_myformat.cxx" to the end of the kmailcvt_SOURCES line in
Makefile.am and "filter_myformat.cxx filter_myformat.hxx" to the end of the
EXTRA_DIST line in Makefile.am. Now run "make -f Makefile.cvs; ./configure" in
your kdepim source directory.

In the import method of your filter you are passed a FilterInfo object. This has
the following methods that you may want to use:

    void setFrom( const QString& from ); // Set to file importing from
    void setTo( const QString& to ); // Set to folder importing into
    void setCurrent( const QString& current ); // What we are doing
    void setCurrent( int percent = 0 ); // Set percentage of current file
    void setOverall( int percent = 0 ); // Set overall percentage
    void addLog( const QString& log ); // Add a message for the user to see
    void alert( const QString& message ); // Tell user something has gone wrong
    QWidget *parent(); // The parent widget
    
    bool removeDupMsg; // true, if user selected 'remove duplicated messages'
    
Also, every now and again you should check to see if the shouldTerminate method
returns true, if it does the user has pressed cancel and your import method
should return.

To add messages, extract the email (including all headers) into a KTempFile.
Then use the following:

if(info->removeDupMsg) addMessage( info, folderName, tempfilepath );
else addMessage_fastImport( info, folderName, tempfilepath );

For a simple example, look at filter_plain

Finally for the filter to appear in the combo box in the wizard you need to edit
kselfilterpage.cpp and add an appropriate addFilter() function call.

Danny Kukawka, February 2005
Laurence Anderson, April 2003.