libkdepim Library API Documentation

progressdialog.h

00001 00033 #ifndef __KPIM_PROGRESSDIALOG_H__ 00034 #define __KPIM_PROGRESSDIALOG_H__ 00035 00036 #include <qdialog.h> 00037 #include <qlistview.h> 00038 #include <qlabel.h> 00039 #include <qvbox.h> 00040 #include "overlaywidget.h" 00041 00042 class QProgressBar; 00043 class QScrollView; 00044 class QFrame; 00045 00046 namespace KPIM { 00047 class ProgressItem; 00048 class TransactionItemListView; 00049 class TransactionItem; 00050 class SSLLabel; 00051 00052 class TransactionItemView : public QScrollView { 00053 Q_OBJECT 00054 public: 00055 TransactionItemView( QWidget * parent = 0, 00056 const char * name = 0, 00057 WFlags f = 0 ); 00058 00059 virtual ~TransactionItemView() 00060 {} 00061 TransactionItem* addTransactionItem( ProgressItem *item, bool first ); 00062 00063 00064 QSize sizeHint() const; 00065 QSize minimumSizeHint() const; 00066 public slots: 00067 void slotLayoutFirstItem(); 00068 00069 protected: 00070 virtual void resizeContents ( int w, int h ); 00071 00072 private: 00073 QVBox * mBigBox; 00074 }; 00075 00076 class TransactionItem : public QVBox { 00077 00078 Q_OBJECT; 00079 00080 public: 00081 TransactionItem( QWidget * parent, 00082 ProgressItem* item, bool first ); 00083 00084 ~TransactionItem(); 00085 00086 void hideHLine(); 00087 00088 void setProgress( int progress ); 00089 void setLabel( const QString& ); 00090 void setStatus( const QString& ); 00091 void setCrypto( bool ); 00092 00093 ProgressItem* item() const { return mItem; } 00094 00095 void addSubTransaction( ProgressItem *item); 00096 00097 // The progressitem is deleted immediately, we take 5s to go out, 00098 // so better not use mItem during this time. 00099 void setItemComplete() { mItem = 0; } 00100 00101 public slots: 00102 void slotItemCanceled(); 00103 00104 protected: 00105 QProgressBar* mProgress; 00106 QPushButton* mCancelButton; 00107 QLabel* mItemLabel; 00108 QLabel* mItemStatus; 00109 QFrame* mFrame; 00110 SSLLabel* mSSLLabel; 00111 ProgressItem* mItem; 00112 }; 00113 00114 class ProgressDialog : public OverlayWidget 00115 { 00116 Q_OBJECT 00117 00118 public: 00119 ProgressDialog( QWidget* alignWidget, QWidget* parent, const char* name = 0 ); 00120 ~ProgressDialog(); 00121 void setVisible( bool b ); 00122 00123 public slots: 00124 void slotToggleVisibility(); 00125 00126 protected slots: 00127 void slotTransactionAdded( ProgressItem *item ); 00128 void slotTransactionCompleted( ProgressItem *item ); 00129 void slotTransactionCanceled( ProgressItem *item ); 00130 void slotTransactionProgress( ProgressItem *item, unsigned int progress ); 00131 void slotTransactionStatus( ProgressItem *item, const QString& ); 00132 void slotTransactionLabel( ProgressItem *item, const QString& ); 00133 void slotTransactionUsesCrypto( ProgressItem *item, bool ); 00134 00135 void slotClose(); 00136 void slotShow(); 00137 void slotHide(); 00138 00139 signals: 00140 void visibilityChanged( bool ); 00141 00142 protected: 00143 virtual void closeEvent( QCloseEvent* ); 00144 00145 TransactionItemView* mScrollView; 00146 TransactionItem* mPreviousItem; 00147 QMap< const ProgressItem*, TransactionItem* > mTransactionsToListviewItems; 00148 }; 00149 00150 00151 } // namespace KPIM 00152 00153 #endif // __KPIM_PROGRESSDIALOG_H__
KDE Logo
This file is part of the documentation for libkdepim Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Oct 21 19:46:29 2004 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003