Issue 52449 - Allow using KDE Address Book from OOo
Summary: Allow using KDE Address Book from OOo
Status: CLOSED FIXED
Alias: None
Product: kde
Classification: Code
Component: www (show other issues)
Version: 680m141
Hardware: All Unix, all
: P3 Trivial
Target Milestone: OOo 2.0.2
Assignee: marc.neumann
QA Contact: issues@kde
URL: http://opensource.bureau-cornavin.com...
Keywords:
Depends on: 54014 58879
Blocks:
  Show dependency tree
 
Reported: 2005-07-25 14:59 UTC by eric.bachard
Modified: 2006-01-05 15:04 UTC (History)
7 users (show)

See Also:
Issue Type: FEATURE
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Screenshot of a view to the KDE address book in OpenOffice.org (62.67 KB, image/png)
2005-08-01 05:10 UTC, ebischoff
no flags Details
Alpha source code, does not interpret real SQL queries yet (38.05 KB, application/x-tgz)
2005-08-01 16:51 UTC, ebischoff
no flags Details
SQL analysis : column selection works (31.24 KB, image/png)
2005-08-04 09:05 UTC, ebischoff
no flags Details
Alpha source code, handles basic SQL queries (37.61 KB, application/x-tgz)
2005-08-04 19:33 UTC, ebischoff
no flags Details
Localized column names (48.17 KB, image/png)
2005-08-08 19:32 UTC, ebischoff
no flags Details
Alpha source code, patches tested against m122 (40.36 KB, application/x-tgz)
2005-08-08 19:39 UTC, ebischoff
no flags Details
Real selections like WHERE "Name" = 'Smith' work (36.46 KB, image/png)
2005-08-11 00:52 UTC, ebischoff
no flags Details
Alpha source code : handling WHERE "Name" = 'Smith' requests (41.66 KB, application/x-tgz)
2005-08-11 12:03 UTC, ebischoff
no flags Details
Variant of the patch that applies to OOo m124+ooo-build 20050815 (324.10 KB, patch)
2005-08-15 16:59 UTC, bero
no flags Details | Diff
Patches against standard m124 ; some more SQL parsing ; better TODO list (42.70 KB, application/x-tgz)
2005-08-18 07:00 UTC, ebischoff
no flags Details
Handling WHERE "Mobile phone" IS NOT NULL and WHERE Name LIKE 'Smit%' (42.94 KB, application/x-tgz)
2005-08-20 11:45 UTC, ebischoff
no flags Details
Modification that doesn't hardcode KDE/Qt include paths (302.42 KB, patch)
2005-08-22 10:34 UTC, bero
no flags Details | Diff
review of the changes in connectivity so far (10.38 KB, text/plain)
2005-08-30 09:00 UTC, Frank Schönheit
no flags Details
review, part 2 (681 bytes, text/plain)
2005-08-30 09:36 UTC, Frank Schönheit
no flags Details
List of code review items that have not been implemented (3.78 KB, text/plain)
2005-11-25 21:59 UTC, ebischoff
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description eric.bachard 2005-07-25 14:59:03 UTC
Éric Bishof proposed me source code for integrate the availability of use Kde
Address Book as known as "KAB"

Code will be in extensions/sources/drivers/kab dir 
All needed changes are already proposed.

Waiting for JCA acceptation, I  just open the issue.
Comment 1 eric.bachard 2005-07-25 14:59:44 UTC
Added kendy 
Comment 2 kendy 2005-07-25 15:58:32 UTC
Other addressbook drivers are in 'connectivity/source/drivers'.  Is 
'extensions' used on purpose? 
Comment 3 eric.bachard 2005-07-25 16:16:51 UTC
Ooops, sorry :

Code will be in connectivity/source/driver/kab   :-)
Comment 4 ebischoff 2005-07-26 14:46:48 UTC
Yeah, and my name is "Éric Bischoff", but that's not important... 
 
Thanks for the issue, Éric ! ;-) 
Comment 5 ebischoff 2005-08-01 05:10:42 UTC
Created attachment 28387 [details]
Screenshot of a view to the KDE address book in OpenOffice.org
Comment 6 ebischoff 2005-08-01 16:51:08 UTC
Created attachment 28408 [details]
Alpha source code, does not interpret real SQL queries yet
Comment 7 ebischoff 2005-08-04 09:05:40 UTC
Created attachment 28481 [details]
SQL analysis : column selection works
Comment 8 ebischoff 2005-08-04 19:33:50 UTC
Created attachment 28500 [details]
Alpha source code, handles basic SQL queries
Comment 9 ebischoff 2005-08-08 19:32:09 UTC
Created attachment 28579 [details]
Localized column names
Comment 10 ebischoff 2005-08-08 19:39:07 UTC
Created attachment 28581 [details]
Alpha source code, patches tested against m122
Comment 11 ebischoff 2005-08-11 00:52:35 UTC
Created attachment 28641 [details]
Real selections like WHERE "Name" = 'Smith' work
Comment 12 ebischoff 2005-08-11 12:03:51 UTC
Created attachment 28656 [details]
Alpha source code : handling WHERE "Name" = 'Smith' requests
Comment 13 Frank Schönheit 2005-08-12 10:30:58 UTC
assigning to ebischoff (who's working on the code) as per his request
Comment 14 ebischoff 2005-08-12 11:49:10 UTC
Started working on this 
Comment 15 bero 2005-08-15 16:59:46 UTC
Created attachment 28782 [details]
Variant of the patch that applies to OOo m124+ooo-build 20050815
Comment 16 ebischoff 2005-08-18 07:00:38 UTC
Created attachment 28872 [details]
Patches against standard m124 ; some more SQL parsing ; better TODO list
Comment 17 ebischoff 2005-08-20 11:45:10 UTC
Created attachment 28941 [details]
Handling WHERE "Mobile phone" IS NOT NULL and WHERE Name LIKE 'Smit%'
Comment 18 bero 2005-08-22 10:34:52 UTC
Created attachment 28962 [details]
Modification that doesn't hardcode KDE/Qt include paths
Comment 19 bero 2005-08-22 10:37:13 UTC
The patch I've attached changes makefile.mk to not hardcode /opt/kde3, and use 
KDE_CFLAGS / KDE_LIBS as set by config_office/configure instead. 
Comment 20 ebischoff 2005-08-22 14:40:16 UTC
Thanks for the corrections, Bernhard, they will be included to the next patch 
against "regular" CVS. 
 
I will just do a little change to makefile.mk: 
99c99 
< KAB_LIB=-L$(KDE_LIBS) -lkabc 
--- 
> KAB_LIB=$(KDE_LIBS) -lkabc 
(otherwise it breaks my build.) 
 
Comment 21 eric.bachard 2005-08-25 12:52:04 UTC
Hi Éric (please note the accent ;-)  ) ,

Regarding the status of this issue, I see a very good work has been done. 
Is a cws created ? If not, may I help you ? 


Comment 22 ebischoff 2005-08-25 13:52:44 UTC
Hi Éric (with accent too ;-) ) 
 
Yes, a CWS has been created (it's named "kaddrbook"), I am just waiting for my 
SSH key to get approved, and then work will happen in a branch of the CVS 
repository. 
 
Incidentally, that means that : 
      I WILL NOT ATTACH ANYMORE SOURCE TARBALLS TO THIS ISSUE. 
      THE SOURCE TARBALLS ATTACHED TO THIS ISSUE ARE OUTDATED. 
      DO NOT USE THEM. 
 
(that does not apply to Bero's patches, of course, if he likes continuing 
here) 
 
Also, please note I have opened a page for the project on 
http://opensource.bureau-cornavin.com/kab/ 
 
Comment 23 ebischoff 2005-08-28 11:07:33 UTC
Added complex WHERE expressions management (AND, OR grouped with parentheses). 
 
I did it with my own code (I did not reuse other drivers' code). The code in 
the "file" driver would have been cool, but it was a bit hard to isolate the 
classes I needed. And simply derive from file driver wouldn't work, because 
KDE address book does not necessarily work with files. 
 
The code is available on the project's home page. Hopefully it should land in 
the CWS very soon too. 
 
Comment 24 ebischoff 2005-08-29 10:53:39 UTC
The code is in the CWS now. 
 
Comment 25 Frank Schönheit 2005-08-30 09:00:33 UTC
Created attachment 29158 [details]
review of the changes in connectivity so far
Comment 26 Frank Schönheit 2005-08-30 09:36:37 UTC
Created attachment 29159 [details]
review, part 2
Comment 27 Frank Schönheit 2005-08-30 09:38:40 UTC
fs->ebischoff: part 2 of the review is attached. Only two items therein (hmm,
forgot to mark the second one with + :)

One questions out of interest: What is the removal of QT_NO_EMIT from
config_office/configure good for?
Comment 28 ebischoff 2005-08-30 13:25:37 UTC
Thanks for the in-depth code review, Frank. I already started addressing the 
issues. 
 
Why does -DQT_NO_EMITS need to be removed? Because the kabc headers use the 
"emit" syntax: 
void emitAddressBookLocked() { emit addressBookLocked( this ); } 
void emitAddressBookUnlocked() { emit addressBookUnlocked( this ); } 
void emitAddressBookChanged() { emit addressBookChanged( this ); } 
 
Usually, "emit" is #define'd to nothing, and the C compiler does not fail. 
This strange "emit" syntax is intended for the "moc" preprocessor and is 
linked to the signals/slots architecture of Qt. If QT_NO_EMIT is defined, 
"emit" stays in the header, and provokes a compilation error. 
 
The removal of -DQT_NO_EMITS has been tested not to break other KDE stuff 
(thanks kendy for testing that). This flag was once needed by kendy because he 
had one method named emit(), which is not the case anymore. 
 
Comment 29 Frank Schönheit 2005-08-30 14:19:36 UTC
Ah, I see, thanks for explaining.
Comment 30 kendy 2005-08-30 16:20:54 UTC
Not exactly me, it was somewhere in VCL ;-)  (At the times when Native Widget 
Framework was not a part of vclplug, and all the VCL had to be linked against 
the KDE libraries to have the KDE theming.) 
Comment 31 ebischoff 2005-11-25 21:58:04 UTC
Finished the alpha code review. Now we have a smaller, simpler, more elegant 
and more robust implementation. Thanks Frank for all the nice remarks and 
help. 
 
Out of 42 suggestions, 34 have been implemented and 8 have been rejected. 
Attached to this issue is the list of items that have not been implemented, 
and the reason why they have been dismissed. 
 
Comment 32 ebischoff 2005-11-25 21:59:43 UTC
Created attachment 31818 [details]
List of code review items that have not been implemented
Comment 33 ebischoff 2005-11-30 17:42:09 UTC
Kendy kindly resynchronized the CWS from m124 to m141. Thanks so much! 
Comment 34 Frank Schönheit 2005-12-09 09:29:16 UTC
targeting to 2.0.2 in agreement with QA and program management
Comment 35 Frank Schönheit 2005-12-12 08:47:56 UTC
fs->msc: this is implemented by Eric in CWS kaddrbook. Please verify (against
http://dba.openoffice.org/specifications/kde_address_book_access.odt). Thanks.
Comment 36 Frank Schönheit 2005-12-12 08:48:27 UTC
reassign to QA
Comment 37 Frank Schönheit 2005-12-12 08:48:51 UTC
FIXED
Comment 38 marc.neumann 2005-12-12 10:42:40 UTC
change type to FEATURE
Comment 39 marc.neumann 2005-12-13 13:03:13 UTC
verified in cws kaddrbook
Comment 40 marc.neumann 2006-01-05 15:04:53 UTC
Hi,

this is fixed in the current master. The current master is available at
http://download.openoffice.org/680/index.html

I close this issue now.

Bye Marc