addresseditwidget.h
00001 #ifndef ADDRESSEDITWIDGET_H
00002 #define ADDRESSEDITWIDGET_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include <qwidget.h>
00027
00028 #include <kdialogbase.h>
00029 #include <kabc/address.h>
00030 #include <kabc/addressee.h>
00031
00032 #include "addresseeconfig.h"
00033 #include "typecombo.h"
00034
00035 class QButtonGroup;
00036 class QToolButton;
00037 class QListView;
00038 class QTextEdit;
00039 class QCheckBox;
00040
00041 class KLineEdit;
00042 class KListView;
00043 class KComboBox;
00044
00045 typedef TypeCombo<KABC::Address> AddressTypeCombo;
00046
00050 class AddressEditWidget : public QWidget
00051 {
00052 Q_OBJECT
00053
00054 public:
00055 AddressEditWidget(QWidget *parent, const char *name = 0);
00056 ~AddressEditWidget();
00057
00058 KABC::Address::List addresses();
00059 void setAddresses(const KABC::Address::List &list);
00060
00061 void updateTypeCombo( const KABC::Address::List&, KComboBox* );
00062 KABC::Address currentAddress( KComboBox*, int );
00063
00064 signals:
00065 void modified();
00066
00067 protected slots:
00068 void updateAddressEdit();
00069
00070 void edit();
00071
00072 private:
00073 AddressTypeCombo *mTypeCombo;
00074
00075 QPushButton *mEditButton;
00076 QPushButton *mRemoveButton;
00077 QTextEdit *mAddressTextEdit;
00078
00079 KABC::Address::List mAddressList;
00080 int mIndex;
00081 };
00082
00086 class AddressEditDialog : public KDialogBase
00087 {
00088 Q_OBJECT
00089
00090 public:
00091 AddressEditDialog( const KABC::Address::List &list, int selected,
00092 QWidget *parent, const char *name = 0 );
00093 ~AddressEditDialog();
00094
00095 KABC::Address::List addresses();
00096 bool changed() const;
00097
00098 protected slots:
00099 void addAddress();
00100 void removeAddress();
00101
00102 void updateAddressEdits();
00103 void modified();
00104
00105 private:
00106 void fillCountryCombo(KComboBox *combo);
00107
00108 void saveAddress();
00109
00110 KABC::Address::List mAddressList;
00111
00112 AddressTypeCombo *mTypeCombo;
00113
00114 QCheckBox *mPreferredCheckBox;
00115 QTextEdit *mStreetTextEdit;
00116 KComboBox *mCountryCombo;
00117 KLineEdit *mRegionEdit;
00118 KLineEdit *mLocalityEdit;
00119 KLineEdit *mPostalCodeEdit;
00120 KLineEdit *mPOBoxEdit;
00121 QPushButton *removeButton;
00122 bool mChanged;
00123 };
00124
00128 class AddressTypeDialog : public KDialogBase
00129 {
00130 public:
00131 AddressTypeDialog( int type, QWidget *parent );
00132 ~AddressTypeDialog();
00133
00134 int type();
00135
00136 private:
00137 QButtonGroup *mGroup;
00138
00139 KABC::Address::TypeList mTypeList;
00140 };
00141
00142 #endif
This file is part of the documentation for kdelibs Version 3.1.4.