25 #include <tqpopupmenu.h>
27 #include <kabc/addressbook.h>
28 #include <kabc/distributionlistdialog.h>
32 #include <kxmlguifactory.h>
33 #include <kxmlguiclient.h>
36 #include "searchmanager.h"
38 #include "kaddressbookview.h"
40 KAddressBookView::KAddressBookView( KAB::Core *core, TQWidget *parent,
42 : TQWidget( parent, name ), mCore( core ), mFieldList()
46 connect( mCore->searchManager(), TQT_SIGNAL( contactsUpdated() ),
47 TQT_SLOT( updateView() ) );
50 KAddressBookView::~KAddressBookView()
52 kdDebug(5720) <<
"KAddressBookView::~KAddressBookView: destroying - "
58 mFieldList = KABC::Field::restoreFields( config,
"KABCFields" );
60 if ( mFieldList.isEmpty() )
61 mFieldList = KABC::Field::defaultFields();
63 mDefaultFilterType = (DefaultFilterType)config->readNumEntry(
"DefaultFilterType", 1 );
64 mDefaultFilterName = config->readEntry(
"DefaultFilterName" );
80 TQStringList::ConstIterator it;
81 for ( it = uidList.begin(); it != uidList.end(); ++it ) {
82 addr = mCore->addressBook()->findByUid( *it );
84 if ( !addr.isEmpty() ) {
85 TQString m = TQString();
87 if ( addr.emails().count() > 1 )
88 m = KABC::EmailSelector::getEmail( addr.emails(), addr.preferredEmail(), this );
90 email = addr.fullEmail( m );
107 return mCore->searchManager()->contacts();
109 KABC::Addressee::List addresseeList;
110 const KABC::Addressee::List contacts = mCore->searchManager()->contacts();
112 KABC::Addressee::List::ConstIterator it;
113 KABC::Addressee::List::ConstIterator contactsEnd( contacts.end() );
114 for ( it = contacts.begin(); it != contactsEnd; ++it ) {
116 addresseeList.append( *it );
119 return addresseeList;
122 void KAddressBookView::initGUI()
125 TQVBoxLayout *layout =
new TQVBoxLayout(
this );
128 mViewWidget =
new TQWidget(
this );
129 layout->addWidget( mViewWidget );
144 return mDefaultFilterType;
149 return mDefaultFilterName;
159 if ( !mCore->guiClient() ) {
160 kdWarning() <<
"No GUI client set!" << endl;
164 TQPopupMenu *menu =
static_cast<TQPopupMenu*
>( mCore->guiClient()->factory()->container(
"RMBPopup",
165 mCore->guiClient() ) );
167 menu->popup( point );
175 void KAddressBookView::updateView()
181 if ( !uidList.isEmpty() ) {
183 TQStringList::ConstIterator it, uidListEnd( uidList.end() );
184 for ( it = uidList.begin(); it != uidListEnd; ++it )
188 const KABC::Addressee::List contacts = mCore->searchManager()->contacts();
189 if ( !contacts.isEmpty() )
203 #include "kaddressbookview.moc"