• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdenetwork API Reference
  • KDE Home
  • Contact Us
 

kopete/libkopete

  • sources
  • kde-4.14
  • kdenetwork
  • kopete
  • libkopete
  • ui
addressbookselectordialog.cpp
Go to the documentation of this file.
1 /*
2  AddressBookSelectorDialog
3  Nice Dialog to select a KDE AddressBook contact
4 
5  Copyright (c) 2005 by Duncan Mac-Vicar Prett <duncan@kde.org>
6 
7  Kopete (c) 2002-2005 by the Kopete developers <kopete-devel@kde.org>
8 
9  *************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  *************************************************************************
17 */
18 
19 #include "addressbookselectordialog.h"
20 #include "addressbookselectorwidget.h"
21 #include <qdialog.h>
22 #include <q3listview.h>
23 #include <kvbox.h>
24 #include <klocale.h>
25 #include <kdialog.h>
26 
27 namespace Kopete
28 {
29 namespace UI
30 {
31 
32 AddressBookSelectorDialog::AddressBookSelectorDialog(const QString &title, const QString &message, const QString &preSelectUid, QWidget *parent )
33  : KDialog( parent )
34 {
35  setCaption( title );
36  setButtons( Help | Ok | Cancel );
37  setEscapeButton( KDialog::Cancel );
38  setDefaultButton( KDialog::Ok );
39  KVBox *vbox=new KVBox(this);
40  m_addressBookSelectorWidget= new AddressBookSelectorWidget(vbox);
41  m_addressBookSelectorWidget->setLabelMessage(message);
42 
43  vbox->setSpacing( KDialog::spacingHint() );
44 
45  setMainWidget(vbox);
46  enableButtonOk(false);
47  //setHelp("linkaddressbook");
48  setHelp(QString(), "kopete");
49  connect(m_addressBookSelectorWidget, SIGNAL(addresseeListClicked(Q3ListViewItem*)), SLOT(slotWidgetAddresseeListClicked(Q3ListViewItem*)));
50 
51  if ( !preSelectUid.isEmpty() )
52  m_addressBookSelectorWidget->selectAddressee(preSelectUid);
53 }
54 
55 AddressBookSelectorDialog::~AddressBookSelectorDialog()
56 {
57 }
58 
59 KABC::Addressee AddressBookSelectorDialog::getAddressee( const QString &title, const QString &message, const QString &preSelectUid, QWidget *parent)
60 {
61  QPointer <AddressBookSelectorDialog> dialog = new AddressBookSelectorDialog(title, message, preSelectUid, parent);
62  int result = dialog->exec();
63 
64  KABC::Addressee adr;
65  if ( result == QDialog::Accepted && dialog )
66  adr = dialog->addressBookSelectorWidget()->addressee();
67 
68  delete dialog;
69 
70  return adr;
71 }
72 
73 void AddressBookSelectorDialog::slotWidgetAddresseeListClicked( Q3ListViewItem *addressee )
74 {
75  // enable ok if a valid addressee is selected
76  enableButtonOk( addressee ? addressee->isSelected() : false);
77 }
78 
79 void AddressBookSelectorDialog::accept()
80 {
81  QDialog::accept();
82 }
83 
84 void AddressBookSelectorDialog::reject()
85 {
86  QDialog::reject();
87 }
88 
89 } // namespace UI
90 } // namespace Kopete
91 
92 #include "addressbookselectordialog.moc"
93 
94 // vim: set noet ts=4 sts=4 sw=4:
95 
Kopete::UI::AddressBookSelectorDialog::m_addressBookSelectorWidget
AddressBookSelectorWidget * m_addressBookSelectorWidget
Definition: addressbookselectordialog.h:85
QWidget
QDialog::reject
virtual void reject()
QPointer
KDialog
addressbookselectorwidget.h
Q3ListViewItem
Kopete::UI::AddressBookSelectorDialog::getAddressee
static KABC::Addressee getAddressee(const QString &title, const QString &message, const QString &preSelectUid, QWidget *parent=0L)
Creates a modal dialog, lets the user to select a addressbook contact and returns when the dialog is ...
Definition: addressbookselectordialog.cpp:59
Kopete::UI::AddressBookSelectorWidget::selectAddressee
void selectAddressee(const QString &uid)
pre-selects a contact
Definition: addressbookselectorwidget.cpp:105
QString::isEmpty
bool isEmpty() const
Kopete::UI::AddressBookSelectorDialog::slotWidgetAddresseeListClicked
void slotWidgetAddresseeListClicked(Q3ListViewItem *addressee)
Definition: addressbookselectordialog.cpp:73
Kopete::UI::AddressBookSelectorDialog::AddressBookSelectorDialog
AddressBookSelectorDialog(const QString &title, const QString &message, const QString &preSelectUid, QWidget *parent=0L)
The constructor of an empty AddressBookSelectorWidget.
Definition: addressbookselectordialog.cpp:32
Kopete::UI::AddressBookSelectorDialog::reject
virtual void reject()
Definition: addressbookselectordialog.cpp:84
Kopete::UI::AddressBookSelectorWidget::setLabelMessage
void setLabelMessage(const QString &msg)
sets the widget label message example: Please select a contact or, Choose a contact to delete ...
Definition: addressbookselectorwidget.cpp:139
QString
Kopete::UI::AddressBookSelectorDialog::~AddressBookSelectorDialog
~AddressBookSelectorDialog()
The destructor of the dialog.
Definition: addressbookselectordialog.cpp:55
QDialog::accept
virtual void accept()
Q3ListViewItem::isSelected
bool isSelected() const
Kopete::UI::Global::setMainWidget
KOPETE_EXPORT void setMainWidget(QWidget *widget)
Set the main widget to widget.
Definition: kopeteuiglobal.cpp:32
addressbookselectordialog.h
Kopete::UI::AddressBookSelectorWidget
Definition: addressbookselectorwidget.h:47
Kopete::UI::AddressBookSelectorDialog::accept
virtual void accept()
Definition: addressbookselectordialog.cpp:79
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:29:19 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kopete/libkopete

Skip menu "kopete/libkopete"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdenetwork API Reference

Skip menu "kdenetwork API Reference"
  • kget
  • kopete
  •   kopete
  •   libkopete
  • krdc
  • krfb

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal