kaddressbook
simpleaddresseeeditor.cpp00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include <qlayout.h>
00025 #include <qlabel.h>
00026
00027 #include <klineedit.h>
00028 #include <klocale.h>
00029 #include <kdialog.h>
00030
00031 #include "simpleaddresseeeditor.h"
00032
00033 SimpleAddresseeEditor::SimpleAddresseeEditor( QWidget *parent, const char *name )
00034 : AddresseeEditorBase( parent, name ),
00035 mDirty( false ),
00036 mBlockModified( false )
00037 {
00038 kdDebug(5720) << "SimpleAddresseeEditor()" << endl;
00039
00040 initGui();
00041 }
00042
00043 SimpleAddresseeEditor::~SimpleAddresseeEditor()
00044 {
00045 kdDebug(5720) << "~SimpleAddresseeEditor()" << endl;
00046 }
00047
00048 void SimpleAddresseeEditor::setAddressee( const KABC::Addressee &addr )
00049 {
00050 mAddressee = addr;
00051
00052 load();
00053 }
00054
00055 const KABC::Addressee &SimpleAddresseeEditor::addressee()
00056 {
00057 return mAddressee;
00058 }
00059
00060 void SimpleAddresseeEditor::setInitialFocus()
00061 {
00062 mNameEdit->setFocus();
00063 }
00064
00065 void SimpleAddresseeEditor::initGui()
00066 {
00067 QGridLayout *topLayout = new QGridLayout( this, 2, 2, KDialog::marginHint(),
00068 KDialog::spacingHint() );
00069
00070 QLabel *label = new QLabel( i18n( "Name:" ), this );
00071 topLayout->addWidget( label, 0, 0 );
00072
00073 mNameEdit = new KLineEdit( this );
00074 topLayout->addWidget( mNameEdit, 0, 1 );
00075 connect( mNameEdit, SIGNAL( textChanged( const QString & ) ),
00076 SLOT( emitModified() ) );
00077
00078 label = new QLabel( i18n( "Email:" ), this );
00079 topLayout->addWidget( label, 1, 0 );
00080
00081 mEmailEdit = new KLineEdit( this );
00082 topLayout->addWidget( mEmailEdit, 1, 1 );
00083 connect( mEmailEdit, SIGNAL( textChanged( const QString & ) ),
00084 SLOT( emitModified() ) );
00085 }
00086
00087 void SimpleAddresseeEditor::load()
00088 {
00089 kdDebug(5720) << "SimpleAddresseeEditor::load()" << endl;
00090
00091 kdDebug(5720) << "ASSEMBLED NAME: " << mAddressee.assembledName() << endl;
00092 kdDebug(5720) << "EMAIL NAME: " << mAddressee.preferredEmail() << endl;
00093
00094 mBlockModified = true;
00095
00096 mNameEdit->setText( mAddressee.assembledName() );
00097 mEmailEdit->setText( mAddressee.preferredEmail() );
00098
00099 mBlockModified = false;
00100
00101 mDirty = false;
00102 }
00103
00104 void SimpleAddresseeEditor::save()
00105 {
00106 if ( !mDirty ) return;
00107
00108 mAddressee.setNameFromString( mNameEdit->text() );
00109 mAddressee.insertEmail( mEmailEdit->text(), true );
00110
00111 mDirty = false;
00112 }
00113
00114 bool SimpleAddresseeEditor::dirty()
00115 {
00116 return mDirty;
00117 }
00118
00119 void SimpleAddresseeEditor::emitModified()
00120 {
00121 if ( mBlockModified )
00122 return;
00123
00124 mDirty = true;
00125
00126 emit modified();
00127 }
00128
00129 #include "simpleaddresseeeditor.moc"
|