kmail

kmreadermainwin.h

Go to the documentation of this file.
00001 // -*- mode: C++; c-file-style: "gnu" -*-
00002 
00003 #ifndef KMReaderMainWin_h
00004 #define KMReaderMainWin_h
00005 
00006 #include "secondarywindow.h"
00007 
00008 #include <kurl.h>
00009 
00010 class KMReaderWin;
00011 class KMMessage;
00012 class KMMessagePart;
00013 class KAction;
00014 class KActionMenu;
00015 class KMFolderIndex;
00016 class KMFolder;
00017 class KFontAction;
00018 class KFontSizeAction;
00019 template <typename T, typename S> class QMap;
00020 
00021 namespace KMail {
00022 class MessageActions;
00023 }
00024 
00025 class KMReaderMainWin : public KMail::SecondaryWindow
00026 {
00027   Q_OBJECT
00028 
00029 public:
00030   KMReaderMainWin( bool htmlOverride, bool htmlLoadExtOverride, char *name = 0 );
00031   KMReaderMainWin( char *name = 0 );
00032   KMReaderMainWin(KMMessagePart* aMsgPart,
00033     bool aHTML, const QString& aFileName, const QString& pname,
00034     const QString & encoding, char *name = 0 );
00035   virtual ~KMReaderMainWin();
00036 
00037   void setUseFixedFont( bool useFixedFont );
00038 
00039   // take ownership of and show @param msg
00040   void showMsg( const QString & encoding, KMMessage *msg );
00041 
00045   void setupForwardingActionsList();
00046 
00047 private slots:
00048   void slotMsgPopup(KMMessage &aMsg, const KURL &aUrl, const QPoint& aPoint);
00049 
00051   void copySelectedToFolder( int menuId );
00052   void slotTrashMsg();
00053   void slotPrintMsg();
00054   void slotForwardInlineMsg();
00055   void slotForwardAttachedMsg();
00056   void slotForwardDigestMsg();
00057   void slotRedirectMsg();
00058   void slotShowMsgSrc();
00059   void slotMarkAll();
00060   void slotCopy();
00061   void slotFind();
00062   void slotFindNext();
00063   void slotFontAction(const QString &);
00064   void slotSizeAction(int);
00065   void slotCreateTodo();
00066   void slotEditToolbars();
00067 
00068   void slotConfigChanged();
00069   void slotUpdateToolbars();
00070 
00071   void slotFolderRemoved( QObject* folderPtr );
00072 
00073 private:
00074   void initKMReaderMainWin();
00075   void setupAccel();
00076 
00077   KMReaderWin *mReaderWin;
00078   KMMessage *mMsg;
00079   KURL mUrl;
00080   QMap<int,KMFolder*> mMenuToFolder;
00081   // a few actions duplicated from kmmainwidget
00082   KAction *mTrashAction, *mPrintAction, *mSaveAsAction, *mForwardInlineAction,
00083           *mForwardAttachedAction, *mForwardDigestAction, *mRedirectAction,
00084           *mViewSourceAction;
00085   KActionMenu *mForwardActionMenu;
00086   KFontAction *fontAction;
00087   KFontSizeAction *fontSizeAction;
00088   KMail::MessageActions *mMsgActions;
00089 
00090 };
00091 
00092 #endif /*KMReaderMainWin_h*/