[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/KDE/3.5/kdepim
From:       Pradeepto Bhattacharya <pradeepto () kde ! org>
Date:       2008-07-07 7:10:14
Message-ID: 1215414614.232512.9688.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 828990 by pradeepto:

Merged revisions 817568 via svnmerge from 
svn+ssh://pradeepto@svn.kde.org/home/kde/branches/kdepim/enterprise/kdepim

........
  r817568 | pradeepto | 2008-06-06 15:16:13 +0530 (Fri, 06 Jun 2008) | 4 lines
  
   -- kolab/issue2741 - Button to do an ldap lookup is missing from the address \
selection dialog.   Forward port from proko2 r592933, r597516 and some manual fixing.
   
........


 _M            . (directory)  
 M  +37 -0     kmail/recipientspicker.cpp  
 M  +10 -2     kmail/recipientspicker.h  
 M  +1 -1      libkdepim/Makefile.am  
 M  +38 -1     libkdepim/addressesdialog.cpp  
 M  +2 -0      libkdepim/addressesdialog.h  
 M  +26 -13    libkdepim/addresspicker.ui  
 M  +2 -1      libkdepim/ldapclient.h  


** branches/KDE/3.5/kdepim #property svnmerge-integrated
   - /branches/kdepim/enterprise/kdepim:1-767022,767033,767233-767554,767556,767558-76 \
7946,767948-769318,769320-769354,769356-771105,771107-771251,771253-772311,772313-7723 \
16,772318-775194,775196-775202,775204,775207-775211,775213-778001,778003-778004,778007 \
,778010-778011,778013-778029,778031-778727,778729-779448,779450-779482,779484-779505,7 \
79507-779852,779854-779994,782647-783127,783129-783243,783245,783248-783477,783479-783847,784547,787827
  + /branches/kdepim/enterprise/kdepim:1-767022,767033,767233-767554,767556,767558-767 \
946,767948-769318,769320-769354,769356-771105,771107-771251,771253-772311,772313-77231 \
6,772318-775194,775196-775202,775204,775207-775211,775213-778001,778003-778004,778007, \
778010-778011,778013-778029,778031-778727,778729-779448,779450-779482,779484-779505,77 \
9507-779852,779854-779994,782647-783127,783129-783243,783245,783248-783477,783479-783847,784547,787827,817568
                
--- branches/KDE/3.5/kdepim/kmail/recipientspicker.cpp #828989:828990
@@ -24,7 +24,10 @@
 #include "globalsettings.h"
 
 #include <libkdepim/recentaddresses.h>
+#include <libkdepim/ldapsearchdialog.h>
 
+#include <libemailfunctions/email.h>
+
 #ifndef KDEPIM_NEW_DISTRLISTS
 #include <kabc/distributionlist.h>
 #endif
@@ -396,6 +399,10 @@
   label->setBuddy( label );
   connect( mSearchLine, SIGNAL( downPressed() ), SLOT( setFocusList() ) );
 
+  mSearchLDAPButton = new QPushButton( i18n("Search &Directory Service"), this );
+  searchLayout->addWidget( mSearchLDAPButton );
+  connect( mSearchLDAPButton, SIGNAL( clicked() ), SLOT( slotSearchLDAP() ) );
+
   QBoxLayout *buttonLayout = new QHBoxLayout( topLayout );
 
   buttonLayout->addStretch( 1 );
@@ -833,4 +840,34 @@
   mSearchLine->setText( QString::null );
 }
 
+void RecipientsPicker::slotSearchLDAP()
+{
+    if ( !ldapSearchDialog ) {
+        ldapSearchDialog = new KPIM::LDAPSearchDialog( this );
+        connect( ldapSearchDialog, SIGNAL( addresseesAdded() ),
+                 SLOT(ldapSearchResult() ) );
+    }
+    ldapSearchDialog->show();
+
+}
+
+void RecipientsPicker::ldapSearchResult()
+{
+    kdDebug() << k_funcinfo ;
+
+    QStringList emails = QStringList::split(',', ldapSearchDialog->selectedEMails() \
); +    QStringList::iterator it( emails.begin() );
+    QStringList::iterator end( emails.end() );
+    for ( ; it != end; ++it ){
+        QString name;
+        QString email;
+        KPIM::getNameAndMail( (*it), name, email );
+        KABC::Addressee ad;
+        ad.setNameFromString( name );
+        ad.insertEmail( email );
+        //addAddresseeToSelected( ad, selectedToItem() );
+    }
+
+}
+
 #include "recipientspicker.moc"
--- branches/KDE/3.5/kdepim/kmail/recipientspicker.h #828989:828990
@@ -45,6 +45,10 @@
 }
 #endif
 
+namespace KPIM {
+class  LDAPSearchDialog;
+}
+
 class RecipientItem
 {
   public:
@@ -213,7 +217,8 @@
     void setFocusList();
     void resetSearch();
     void insertAddressBook( AddressBook * );
-
+    void slotSearchLDAP();
+    void ldapSearchResult();
   private:
     KABC::StdAddressBook *mAddressBook;
 
@@ -224,7 +229,10 @@
     QPushButton *mToButton;
     QPushButton *mCcButton;
     QPushButton *mBccButton;
-
+    
+    QPushButton *mSearchLDAPButton;
+    KPIM::LDAPSearchDialog            *ldapSearchDialog;
+    
     QMap<int,RecipientsCollection *> mCollectionMap;
     RecipientsCollection *mAllRecipients;
     RecipientsCollection *mDistributionLists;
--- branches/KDE/3.5/kdepim/libkdepim/Makefile.am #828989:828990
@@ -23,7 +23,7 @@
   overlaywidget.cpp progressmanager.cpp progressdialog.cpp \
   statusbarprogresswidget.cpp ssllabel.cpp completionordereditor.cpp \
   resourceabc.cpp diffalgo.cpp addresseediffalgo.cpp calendardiffalgo.cpp \
-  htmldiffalgodisplay.cpp broadcaststatus.cpp kresourceprefs.cpp \
+  htmldiffalgodisplay.cpp ldapsearchdialog.cpp broadcaststatus.cpp \
kresourceprefs.cpp \  kpixmapregionselectorwidget.cpp kpixmapregionselectordialog.cpp \
\  kabcresourcecached.cpp kxface.cpp \
   kaccount.cpp kaddrbook.cpp kfoldertree.cpp kregexp3.cpp \
--- branches/KDE/3.5/kdepim/libkdepim/addressesdialog.cpp #828989:828990
@@ -24,9 +24,12 @@
 
 #include "addressesdialog.h"
 #include "addresspicker.h"
+#include "ldapsearchdialog.h"
 
 #include <config.h>
 
+#include <libemailfunctions/email.h>
+
 #ifdef KDEPIM_NEW_DISTRLISTS
 #include "distributionlist.h"
 #include <kresources/selectdialog.h>
@@ -64,7 +67,10 @@
 };
 
 struct AddressesDialog::AddressesDialogPrivate {
-  AddressesDialogPrivate() : ui(0), personal(0), recent(0), toItem(0), ccItem(0), \
bccItem(0) +  AddressesDialogPrivate() : 
+    ui(0), personal(0), recent(0),
+    toItem(0), ccItem(0), bccItem(0),
+    ldapSearchDialog(0)
   {}
 
   AddressPickerUI             *ui;
@@ -79,6 +85,7 @@
   QDict<AddresseeViewItem>     groupDict;
 
   KABC::Addressee::List       recentAddresses;
+  LDAPSearchDialog            *ldapSearchDialog;
 };
 // privates end
 
@@ -565,6 +572,8 @@
            SLOT(addSelectedBCC())  );
   connect( d->ui->mSaveAs, SIGNAL(clicked()),
            SLOT(saveAs())  );
+  connect( d->ui->mLdapSearch, SIGNAL(clicked()),
+           SLOT(searchLdap())  );
   connect( d->ui->mRemoveButton, SIGNAL(clicked()),
            SLOT(removeEntry()) );
   connect( d->ui->mAvailableView, SIGNAL(selectionChanged()),
@@ -928,6 +937,34 @@
 }
 
 void
+AddressesDialog::searchLdap()
+{
+    if ( !d->ldapSearchDialog ) {
+      d->ldapSearchDialog = new LDAPSearchDialog( this );
+      connect( d->ldapSearchDialog, SIGNAL( addresseesAdded() ),
+               SLOT(ldapSearchResult() ) );
+    }
+    d->ldapSearchDialog->show();
+}
+
+void
+AddressesDialog::ldapSearchResult()
+{
+  QStringList emails = QStringList::split(',', d->ldapSearchDialog->selectedEMails() \
); +  QStringList::iterator it( emails.begin() );
+  QStringList::iterator end( emails.end() );
+  for ( ; it != end; ++it ){
+      QString name;
+      QString email;
+      KPIM::getNameAndMail( (*it), name, email );
+      KABC::Addressee ad;
+      ad.setNameFromString( name );
+      ad.insertEmail( email );
+      addAddresseeToSelected( ad, selectedToItem() );
+  }
+}
+
+void
 AddressesDialog::launchAddressBook()
 {
   kapp->startServiceByDesktopName( "kaddressbook", QString() );
--- branches/KDE/3.5/kdepim/libkdepim/addressesdialog.h #828989:828990
@@ -169,6 +169,8 @@
 
     void removeEntry();
     void saveAs();
+    void searchLdap();
+    void ldapSearchResult();
     void launchAddressBook();
 
     void filterChanged( const QString & );
--- branches/KDE/3.5/kdepim/libkdepim/addresspicker.ui #828989:828990
@@ -1,4 +1,4 @@
-<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
+<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
 <class>AddressPickerUI</class>
 <widget class="QWidget">
     <property name="name">
@@ -9,7 +9,7 @@
             <x>0</x>
             <y>0</y>
             <width>591</width>
-            <height>350</height>
+            <height>442</height>
         </rect>
     </property>
     <property name="caption">
@@ -169,17 +169,6 @@
                 </spacer>
             </vbox>
         </widget>
-        <widget class="QPushButton" row="2" column="2">
-            <property name="name">
-                <cstring>mSaveAs</cstring>
-            </property>
-            <property name="enabled">
-                <bool>false</bool>
-            </property>
-            <property name="text">
-                <string>Save as &amp;Distribution List...</string>
-            </property>
-        </widget>
         <widget class="QLabel" row="0" column="2">
             <property name="name">
                 <cstring>textLabel2</cstring>
@@ -300,8 +289,32 @@
                 <bool>true</bool>
             </property>
         </widget>
+        <widget class="QPushButton" row="2" column="2">
+            <property name="name">
+                <cstring>mSaveAs</cstring>
+            </property>
+            <property name="enabled">
+                <bool>false</bool>
+            </property>
+            <property name="text">
+                <string>Save as &amp;Distribution List...</string>
+            </property>
+            <property name="accel">
+                <string>Alt+D</string>
+            </property>
+        </widget>
+        <widget class="QPushButton" row="3" column="0">
+            <property name="name">
+                <cstring>mLdapSearch</cstring>
+            </property>
+            <property name="text">
+                <string>&amp;Search Directory Service</string>
+            </property>
+        </widget>
     </grid>
 </widget>
+<customwidgets>
+</customwidgets>
 <layoutdefaults spacing="6" margin="11"/>
 <includehints>
     <includehint>klistview.h</includehint>
--- branches/KDE/3.5/kdepim/libkdepim/ldapclient.h #828989:828990
@@ -1,5 +1,5 @@
 /* kldapclient.h - LDAP access
- *      Copyright (C) 2002 Klarälvdalens Datakonsult AB
+ *      Copyright (C) 2002 Klar�vdalens Datakonsult AB
  *
  *      Author: Steffen Hansen <hansen@kde.org>
  *
@@ -33,6 +33,7 @@
 
 #include <kio/job.h>
 #include <kabc/ldif.h>
+#include <kconfig.h>
 
 #include <kdepimmacros.h>
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic