kontact
kmail_plugin.h
Go to the documentation of this file.00001 /* 00002 This file is part of Kontact. 00003 00004 Copyright (c) 2003 Kontact Developer <kde-pim@kde.org> 00005 00006 This program is free software; you can redistribute it and/or modify 00007 it under the terms of the GNU General Public License as published by 00008 the Free Software Foundation; either version 2 of the License, or 00009 (at your option) any later version. 00010 00011 This program is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU General Public License for more details. 00015 00016 You should have received a copy of the GNU General Public License along 00017 with this program; if not, write to the Free Software Foundation, Inc., 00018 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00019 00020 As a special exception, permission is given to link this program 00021 with any edition of Qt, and distribute the resulting executable, 00022 without including the source code for Qt in the source distribution. 00023 */ 00024 00025 #ifndef KMAIL_PLUGIN_H 00026 #define KMAIL_PLUGIN_H 00027 00028 #include <KontactInterface/Plugin> 00029 #include <KontactInterface/UniqueAppHandler> 00030 00031 #include <KUrl> 00032 00033 class OrgKdeKmailKmailInterface; 00034 00035 namespace KontactInterface { 00036 class UniqueAppWatcher; 00037 } 00038 00039 class KMailUniqueAppHandler : public KontactInterface::UniqueAppHandler 00040 { 00041 public: 00042 KMailUniqueAppHandler( KontactInterface::Plugin *plugin ) 00043 : KontactInterface::UniqueAppHandler( plugin ) {} 00044 virtual void loadCommandLineOptions(); 00045 virtual int newInstance(); 00046 }; 00047 00048 class KMailPlugin : public KontactInterface::Plugin 00049 { 00050 Q_OBJECT 00051 00052 public: 00053 KMailPlugin( KontactInterface::Core *core, const QVariantList & ); 00054 ~KMailPlugin(); 00055 00056 virtual bool isRunningStandalone() const; 00057 virtual bool createDBUSInterface( const QString &serviceType ); 00058 virtual KontactInterface::Summary *createSummaryWidget( QWidget *parent ); 00059 virtual QString tipFile() const; 00060 int weight() const { return 200; } 00061 00062 virtual QStringList invisibleToolbarActions() const; 00063 virtual bool queryClose() const; 00064 00065 protected: 00066 virtual KParts::ReadOnlyPart *createPart(); 00067 void openComposer( const KUrl &attach = KUrl() ); 00068 void openComposer( const QString &to ); 00069 bool canDecodeMimeData( const QMimeData * ) const; 00070 void processDropEvent( QDropEvent * ); 00071 00072 protected slots: 00073 void slotNewMail(); 00074 void slotSyncFolders(); 00075 00076 private: 00077 OrgKdeKmailKmailInterface *m_instance; 00078 KontactInterface::UniqueAppWatcher *mUniqueAppWatcher; 00079 }; 00080 00081 #endif
KDE 4.5 API Reference