akonadi/contact
23 #include "imitemdialog.h"
26 #include "improtocols.h"
28 #include <QtGui/QFormLayout>
30 #include <kcombobox.h>
31 #include <klineedit.h>
34 IMItemDialog::IMItemDialog( QWidget *parent )
37 setButtons( Ok | Cancel );
38 setDefaultButton( Ok );
40 QWidget *widget =
new QWidget(
this );
41 setMainWidget( widget );
43 QFormLayout *layout =
new QFormLayout( widget );
45 mProtocolCombo =
new KComboBox;
46 mProtocolCombo->addItem( i18nc(
"@item:inlistbox select from a list of IM protocols",
48 layout->addRow( i18nc(
"@label:listbox",
"Protocol:" ), mProtocolCombo );
50 const QStringList protocols = IMProtocols::self()->protocols();
51 foreach (
const QString &protocol, protocols ) {
52 mProtocolCombo->addItem( KIcon( IMProtocols::self()->icon( protocol ) ),
53 IMProtocols::self()->name( protocol ),
57 mNameEdit =
new KLineEdit;
58 layout->addRow( i18nc(
"@label:textbox IM address",
"Address:" ), mNameEdit );
60 connect( mProtocolCombo, SIGNAL(currentIndexChanged(
int)), SLOT(slotUpdateButtons()) );
61 connect( mNameEdit, SIGNAL(textChanged(QString)), SLOT(slotUpdateButtons()) );
66 void IMItemDialog::setAddress(
const IMAddress &address )
68 mProtocolCombo->setCurrentIndex(
69 IMProtocols::self()->protocols().indexOf( address.protocol() ) + 1 );
71 mNameEdit->setText( address.name() );
75 IMAddress IMItemDialog::address()
const
77 return IMAddress( mProtocolCombo->itemData( mProtocolCombo->currentIndex() ).toString(),
78 mNameEdit->text(), false );
81 void IMItemDialog::slotUpdateButtons()
83 enableButtonOk( mProtocolCombo->currentIndex()>0 && !mNameEdit->text().isEmpty() );
86 #include "imitemdialog.moc"
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Mon Sep 24 2012 09:08:06 by
doxygen 1.8.1.1 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.