kpilot
kpilotProbeDialog.h
Go to the documentation of this file.00001 #ifndef _KPILOT_PROBEDIALOG_H 00002 #define _KPILOT_PROBEDIALOG_H 00003 /* kpilotConfigWizard.h KPilot 00004 ** 00005 ** Copyright (C) 2004 Reinhold Kainhofer <reinhold@kainhofer.com> 00006 ** 00007 ** This file defines kpilot's configuration wizard 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 ** This program is distributed in the hope that it will be useful, 00017 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00019 ** GNU General Public License for more details. 00020 ** 00021 ** You should have received a copy of the GNU General Public License 00022 ** along with this program in a file called COPYING; if not, write to 00023 ** the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 00024 ** MA 02110-1301, USA. 00025 */ 00026 00027 /* 00028 ** Bug reports and questions can be sent to kde-pim@kde.org 00029 */ 00030 00031 #include "kdialogbase.h" 00032 00033 class KPilotDeviceLink; 00034 class QLabel; 00035 class QGroupBox; 00036 class KProgress; 00037 class QTimer; 00038 class QGridLayout; 00039 template <class T> class QValueList; 00040 template<class Key, class T> class QMap; 00041 00042 typedef QValueList<KPilotDeviceLink*> PilotLinkList; 00043 00044 typedef QMap<QString, KPilotDeviceLink*> PilotLinkMap; 00045 00046 class ProbeDialog : public KDialogBase 00047 { 00048 Q_OBJECT 00049 public: 00050 ProbeDialog(QWidget *p=0L,const char *n=0L); 00051 ~ProbeDialog(); 00052 00053 bool detected() const { return mDetected; } 00054 QString userName() const { return mUserName; } 00055 QString device() const { return mDevice; } 00056 QStringList dbs() const { return mDBs; } 00057 00058 00059 protected slots: 00060 void startDetection(); 00061 void timeout(); 00062 void connection(KPilotDeviceLink*lnk); 00063 void retrieveDBList(); 00064 void disconnectDevices(); 00065 void processEvents(); 00066 void progress(); 00067 void detect(); 00068 void detect(int i); 00069 public slots: 00070 int exec(); 00071 void slotUser1 () { startDetection(); } 00072 protected: 00073 QLabel* fInfoText; 00074 QGroupBox* fResultsGroup; 00075 QLabel* fUserLabel; 00076 QLabel* fDeviceLabel; 00077 QLabel* fUser; 00078 QLabel* fDevice; 00079 QGroupBox* fStatusGroup; 00080 QLabel* fStatus; 00081 KProgress* fProgress; 00082 00083 QTimer* fProcessEventsTimer; 00084 QTimer* fTimeoutTimer; 00085 QTimer* fProgressTimer; 00086 QTimer* fRotateLinksTimer; 00087 protected: 00088 QGridLayout* fResultsGroupLayout; 00089 QGridLayout* fStatusGroupLayout; 00090 00091 QStringList mDevicesToProbe[3]; 00092 PilotLinkList mDeviceLinks[3]; 00093 int mProbeDevicesIndex; 00094 KPilotDeviceLink *mActiveLink; 00095 00096 bool mDetected; 00097 QString mUserName; 00098 QString mDevice; 00099 QStringList mDBs; 00100 } ; 00101 00102 #endif