kshowmail.h

Go to the documentation of this file.
00001 /***************************************************************************
00002                           kshowmail.h  -  description
00003                              -------------------
00004     begin                : Sat May  6 12:13:57 MEST 2000
00005     copyright            : (C) 2000-2001 by Eggert Ehmke
00006     email                : eggert.ehmke@berlin.de
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00018 #ifndef KSHOWMAIL_H
00019 #define KSHOWMAIL_H
00020 
00021 
00022 #ifdef HAVE_CONFIG_H
00023 #include <config.h>
00024 #endif
00025 
00026 // include files for KDE
00027 #include <kapplication.h>
00028 #include <kmainwindow.h>
00029 #include <kuniqueapplication.h>
00030 #include <kaction.h>
00031 #include <kstdaction.h>
00032 #include <klocale.h>
00033 #include <kstatusbar.h>
00034 #include <krun.h>
00035 #include <kpassdlg.h>
00036 #include <kdebug.h>
00037 #include <kedittoolbar.h>
00038 #include <kcmultidialog.h>
00039 
00040 
00041 //include files for KShowMail
00042 #include "configlist.h"
00043 #include "alertdialog.h"
00044 #include "showrecord.h"
00045 #include "showlistviewitem.h"
00046 #include "kshowmaildock.h"
00047 #include "kfeedback.h"
00048 #include "types.h"
00049 #include "kshowmailview.h"
00050 #include "kshowmaildoc.h"
00051 #include "serverdialog.h"
00052 #include "filterlog.h"
00053 #include "filterlogview.h"
00054 
00055 
00056 // forward declaration of the Kshowmail classes
00057 class KshowmailDoc;
00058 class KshowmailView;
00059 
00060 using namespace Types;
00061 
00077 class KShowMailApp : public KMainWindow
00078 {
00079   Q_OBJECT
00080 
00081   friend class KshowmailView;
00082   friend class KshowmailDock;
00083   friend class UniqueApp;
00084 
00085 
00086   private:
00087 
00091     KshowmailDoc* m_pDoc;
00092 
00096     KshowmailView *m_pView;
00097 
00101     KCMultiDialog* SetupDialog;
00102 
00106     KAction* m_actionRefresh;
00107 
00112     ConfigList m_ConfigList;
00113 
00117     AlertDialog* m_pAlertDialog;
00118 
00122     KShowMailDock* m_pDockWindow;
00123 
00127     QTimer* m_pTimer;
00128 
00132      Types::State_Type m_state;
00133 
00137      unsigned long m_nSecondsToGo;
00138 
00142      FilterLog fLog;
00143 
00144 
00145   public:
00150     KShowMailApp();
00151 
00155     ~KShowMailApp();
00156 
00161     static KAboutData* m_pAbout;
00162 
00166     void delayNextRefresh();
00167 
00168 
00169   protected:
00170 
00174     void initStatusBar();
00175 
00179     void initActions();
00180 
00185     void initDocument();
00186 
00190     void initView();
00191 
00199     virtual bool queryClose();
00200 
00208     virtual bool queryExit();
00209 
00216     virtual void timerEvent( QTimerEvent * );
00217 
00222     virtual bool event(QEvent *e);
00223 
00228     void initFirstRefresh();
00229 
00233     void stopRefreshTimer();
00234 
00238     void initNextRefresh();
00239 
00240   protected slots:
00241 
00249     void slotStatusHelpMsg(const QString &text);
00250 
00257     void slotStatusMsg(const QString &text);
00258 
00263     void slotConfChanged();
00264 
00269     void slotDelete();
00270 
00278     void slotDeletionReady();
00279 
00284     void slotShowMessage();
00285 
00292     void slotShowMessageReady();
00293 
00300     void slotNormalCursor();
00301 
00308     void slotWaitingCursor();
00309 
00314     void slotRefresh();
00315 
00322     void slotRefreshReady();
00323 
00331     void slotAlertDestroyed();
00332 
00338     void slotAlertOk ();
00339 
00343     void slotRefreshView ();
00344 
00349     void slotStop ();
00350 
00355     void slotShowHeader();
00356 
00361     void slotEditToolbars();
00362 
00366     void slotSaveOptions();
00367 
00373     void slotFileQuit();
00374 
00378     void slotSetupAccount();
00379 
00384     void slotSetup();
00385 
00389     void slotShowFilterLog();
00390 
00391     void slotAccountActivated(QListViewItem*);
00392     void slotSendFeedbackMail();
00393     void slotForceClose();
00394 
00395 
00396 
00397 
00398 private:
00399 
00400     bool m_bForceClose;
00401 
00402 
00403   protected:
00404     void addFeatureList(KFeedbackQuestion * question);
00405     bool askCloseConfirmation();
00406 
00407 };
00408 
00409 #endif // KSHOWMAIL_H

Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by  doxygen 1.5.0