publishdialog.cpp
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include <qlineedit.h>
00025 #include <kdebug.h>
00026
00027 #include <kglobal.h>
00028 #include <klocale.h>
00029 #ifndef KORG_NOKABC
00030 #include <kabc/addresseedialog.h>
00031 #endif
00032
00033 #include "koprefs.h"
00034 #include "publishdialog.h"
00035
00036 PublishDialog::PublishDialog(QWidget* parent, const char* name,
00037 bool modal, WFlags fl)
00038 : PublishDialog_base(parent,name,modal,fl)
00039 {
00040 setCaption(i18n("Select Addresses"));
00041 mNameLineEdit->setEnabled(false);
00042 mEmailLineEdit->setEnabled(false);
00043 connect(mAddressListView,SIGNAL(selectionChanged(QListViewItem *)),
00044 SLOT(updateInput()));
00045 }
00046
00047 PublishDialog::~PublishDialog()
00048 {
00049 }
00050
00051 void PublishDialog::addAttendee(Attendee *attendee)
00052 {
00053 mNameLineEdit->setEnabled(true);
00054 mEmailLineEdit->setEnabled(true);
00055 QListViewItem *item = new QListViewItem(mAddressListView);
00056 item->setText(0,attendee->name());
00057 item->setText(1,attendee->email());
00058 mAddressListView->insertItem(item);
00059 }
00060
00061 QString PublishDialog::addresses()
00062 {
00063 QString to = "";
00064 QListViewItem *item;
00065 int i, count;
00066 count = mAddressListView->childCount();
00067 for (i=0;i<count;i++) {
00068 item = mAddressListView->firstChild();
00069 mAddressListView->takeItem(item);
00070 to += item->text(1);
00071 if (i<count-1) {
00072 to += ", ";
00073 }
00074 }
00075 return to;
00076 }
00077
00078 void PublishDialog::addItem()
00079 {
00080 mNameLineEdit->setEnabled(true);
00081 mEmailLineEdit->setEnabled(true);
00082 QListViewItem *item = new QListViewItem(mAddressListView);
00083 mAddressListView->insertItem(item);
00084 mAddressListView->setSelected(item,true);
00085 mNameLineEdit->setText(i18n("(EmptyName)"));
00086 mEmailLineEdit->setText(i18n("(EmptyEmail)"));
00087 }
00088
00089 void PublishDialog::removeItem()
00090 {
00091 QListViewItem *item;
00092 item = mAddressListView->selectedItem();
00093 if (!item) return;
00094 mAddressListView->takeItem(item);
00095 item = mAddressListView->selectedItem();
00096 if (!item) {
00097 mNameLineEdit->setText("");
00098 mEmailLineEdit->setText("");
00099 mNameLineEdit->setEnabled(false);
00100 mEmailLineEdit->setEnabled(false);
00101 }
00102 if (mAddressListView->childCount() == 0) {
00103 mNameLineEdit->setEnabled(false);
00104 mEmailLineEdit->setEnabled(false);
00105 }
00106 }
00107
00108 void PublishDialog::openAddressbook()
00109 {
00110 #ifndef KORG_NOKABC
00111 KABC::Addressee::List addressList;
00112 addressList = KABC::AddresseeDialog::getAddressees(this);
00113
00114 KABC::Addressee a = addressList.first();
00115 if (!a.isEmpty()) {
00116 uint i;
00117 for (i=0;i<addressList.size();i++) {
00118 a = addressList[i];
00119 mNameLineEdit->setEnabled(true);
00120 mEmailLineEdit->setEnabled(true);
00121 QListViewItem *item = new QListViewItem(mAddressListView);
00122 mAddressListView->setSelected(item,true);
00123 mNameLineEdit->setText(a.realName());
00124 mEmailLineEdit->setText(a.preferredEmail());
00125 mAddressListView->insertItem(item);
00126 }
00127 }
00128 #endif
00129 }
00130
00131 void PublishDialog::updateItem()
00132 {
00133 QListViewItem *item;
00134 item = mAddressListView->selectedItem();
00135 if (!item) return;
00136 item->setText(0,mNameLineEdit->text());
00137 item->setText(1,mEmailLineEdit->text());
00138 }
00139
00140 void PublishDialog::updateInput()
00141 {
00142 QListViewItem *item;
00143 item = mAddressListView->selectedItem();
00144 if (!item) return;
00145 mNameLineEdit->setEnabled(true);
00146 mEmailLineEdit->setEnabled(true);
00147 QString mail = item->text(1);
00148 mNameLineEdit->setText(item->text(0));
00149 mEmailLineEdit->setText(mail);
00150 }
00151
00152 #include "publishdialog.moc"
This file is part of the documentation for kdelibs Version 3.1.5.