Diffstat (limited to 'kmicromail/addresspicker.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | kmicromail/addresspicker.cpp | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/kmicromail/addresspicker.cpp b/kmicromail/addresspicker.cpp new file mode 100644 index 0000000..ec6da49 --- a/dev/null +++ b/kmicromail/addresspicker.cpp @@ -0,0 +1,116 @@ + +#include "composemail.h" + +/* OPIE */ +//#include <opie2/ocontactaccess.h> +//#include <opie2/opimcontact.h> +#include <qpe/resource.h> +#include <qpe/qpeapplication.h> + +/* QT */ +#include <qpushbutton.h> +#include <qmessagebox.h> +#include <qlistbox.h> + +/* STD */ +#include <stdlib.h> + +AddressPicker::AddressPicker( QWidget *parent, const char *name, bool modal, WFlags flags ) + : AddressPickerUI( parent, name, modal, flags ) +{ + okButton->setIconSet( Resource::loadPixmap( "enter" ) ); + cancelButton->setIconSet( Resource::loadPixmap( "editdelete" ) ); + + connect(okButton, SIGNAL(clicked()), SLOT(accept())); + connect(cancelButton, SIGNAL(clicked()), SLOT(close())); + qDebug("AddressPicker::AddressPicker pending access KA/PI "); +#if 0 + Opie::OPimContactAccess::List::Iterator it; + + QString lineEmail, lineName, contactLine; + /* what name has to set here???? */ + Opie::OPimContactAccess m_contactdb("opiemail"); + + QStringList mails; + QString pre,suf; + Opie::OPimContactAccess::List m_list = m_contactdb.sorted( true, 0, 0, 0 ); + for ( it = m_list.begin(); it != m_list.end(); ++it ) + { + if ((*it).defaultEmail().length()!=0) + { + mails = (*it).emailList(); + if ((*it).fileAs().length()>0) + { + pre = "\""+(*it).firstName()+" "+(*it).lastName()+"\" <"; + suf = ">"; + } + else + { + pre = ""; + suf = ""; + } + QStringList::ConstIterator sit = mails.begin(); + for (;sit!=mails.end();++sit) + { + contactLine=pre+(*sit)+suf; + addressList->insertItem(contactLine); + } + } + } + if ( addressList->count() <= 0 ) + { +#if 0 + // makes this realy sense?? + addressList->insertItem( + tr( "There are no entries in the addressbook." ) ); +#endif + addressList->setEnabled( false ); + okButton->setEnabled( false ); + } + else + { + // addressList->sort(); + } +#endif +} + +void AddressPicker::accept() +{ + QListBoxItem *item = addressList->firstItem(); + QString names; + + while ( item ) + { + if ( item->selected() ) + names += item->text() + ", "; + item = item->next(); + } + names.replace( names.length() - 2, 2, "" ); + + if ( names.isEmpty() ) + { + QMessageBox::information(this, tr("Error"), tr("<p>You have to select" + " at least one address entry.</p>"), tr("Ok")); + return; + } + + selectedNames = names; + QDialog::accept(); +} + +QString AddressPicker::getNames() +{ + QString names = 0; + + AddressPicker picker(0, 0, true); + + picker.showMaximized(); + int ret = picker.exec(); + if ( QDialog::Accepted == ret ) + { + return picker.selectedNames; + } + + return 0; +} + |