summaryrefslogtreecommitdiffabout
authorulf69 <ulf69>2004-06-29 05:03:25 (UTC)
committer ulf69 <ulf69>2004-06-29 05:03:25 (UTC)
commit0538ac1cc17ad4249d27d686b4bc7e80663f475f (patch) (unidiff)
treeabf571d0e2640bbb7ce14818a376ad980492ea05
parent61ef87224517601f8754dd9da1b521a7b0094558 (diff)
downloadkdepimpi-0538ac1cc17ad4249d27d686b4bc7e80663f475f.zip
kdepimpi-0538ac1cc17ad4249d27d686b4bc7e80663f475f.tar.gz
kdepimpi-0538ac1cc17ad4249d27d686b4bc7e80663f475f.tar.bz2
*** empty log message ***
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/stdaddressbook.cpp22
-rw-r--r--microkde/kdecore/klibloader.cpp24
2 files changed, 22 insertions, 24 deletions
diff --git a/kabc/stdaddressbook.cpp b/kabc/stdaddressbook.cpp
index f9fc70b..8faaaef 100644
--- a/kabc/stdaddressbook.cpp
+++ b/kabc/stdaddressbook.cpp
@@ -15,69 +15,56 @@
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20 20
21/* 21/*
22Enhanced Version of the file for platform independent KDE tools. 22Enhanced Version of the file for platform independent KDE tools.
23Copyright (c) 2004 Ulf Schenk 23Copyright (c) 2004 Ulf Schenk
24 24
25$Id$ 25$Id$
26*/ 26*/
27#ifndef DESKTOP_VERSION
28#include <qpe/global.h>
29#else
30
31#include <qdir.h>
32#endif
33#ifdef KAB_EMBEDDED
34 27
28/*US
35#include <stdlib.h> 29#include <stdlib.h>
36#else //KAB_EMBEDDED
37 30
38#include <stdlib.h>
39
40//US#include <kresources/manager.h>
41#include <kapplication.h> 31#include <kapplication.h>
42#include <kcrash.h> 32#include <kcrash.h>
43#include <ksimpleconfig.h> 33#include <ksimpleconfig.h>
44 34*/
45
46#endif //KAB_EMBEDDED
47 35
48#include "resource.h" 36#include "resource.h"
49#include <kresources/manager.h> 37#include <kresources/manager.h>
50#include <kdebug.h> 38#include <kdebug.h>
51#include <klocale.h> 39#include <klocale.h>
52#include <kstaticdeleter.h> 40#include <kstaticdeleter.h>
53#include <kstandarddirs.h> 41#include <kstandarddirs.h>
54 42
55#include "stdaddressbook.h" 43#include "stdaddressbook.h"
56 44
57using namespace KABC; 45using namespace KABC;
58 46
59StdAddressBook *StdAddressBook::mSelf = 0; 47StdAddressBook *StdAddressBook::mSelf = 0;
60bool StdAddressBook::mAutomaticSave = true; 48bool StdAddressBook::mAutomaticSave = true;
61 49
62static KStaticDeleter<StdAddressBook> addressBookDeleter; 50static KStaticDeleter<StdAddressBook> addressBookDeleter;
63 51
64QString StdAddressBook::fileName() 52QString StdAddressBook::fileName()
65{ 53{
66 return locateLocal( "data", "kabc/std.vcf" ); 54 return locateLocal( "data", "kabc/std.vcf" );
67} 55}
68 56
69QString StdAddressBook::directoryName() 57QString StdAddressBook::directoryName()
70{ 58{
71 qDebug("StdAddressBook::directoryName() WILL FAIL OR NOT" );
72 return locateLocal( "data", "kabc/stdvcf" ); 59 return locateLocal( "data", "kabc/stdvcf" );
73} 60}
74 61
75void StdAddressBook::handleCrash() 62void StdAddressBook::handleCrash()
76{ 63{
77 StdAddressBook::self()->cleanUp(); 64 StdAddressBook::self()->cleanUp();
78} 65}
79 66
80StdAddressBook *StdAddressBook::self() 67StdAddressBook *StdAddressBook::self()
81{ 68{
82 69
83 if ( !mSelf ) 70 if ( !mSelf )
@@ -202,29 +189,26 @@ bool StdAddressBook::save()
202 189
203 if ( !ab->save( ticket ) ) 190 if ( !ab->save( ticket ) )
204 ok = false; 191 ok = false;
205 } 192 }
206 } 193 }
207 194
208 return ok; 195 return ok;
209} 196}
210 197
211void StdAddressBook::close() 198void StdAddressBook::close()
212{ 199{
213//US destructObject is not defined on my system???. Is setObject(0) the same ??? 200//US destructObject is not defined on my system???. Is setObject(0) the same ???
214#ifndef KAB_EMBEDDED 201//US addressBookDeleter.destructObject();
215 addressBookDeleter.destructObject();
216#else //KAB_EMBEDDED
217 addressBookDeleter.setObject(0); 202 addressBookDeleter.setObject(0);
218#endif //KAB_EMBEDDED
219 203
220} 204}
221 205
222void StdAddressBook::setAutomaticSave( bool enable ) 206void StdAddressBook::setAutomaticSave( bool enable )
223{ 207{
224 mAutomaticSave = enable; 208 mAutomaticSave = enable;
225} 209}
226 210
227bool StdAddressBook::automaticSave() 211bool StdAddressBook::automaticSave()
228{ 212{
229 return mAutomaticSave; 213 return mAutomaticSave;
230} 214}
diff --git a/microkde/kdecore/klibloader.cpp b/microkde/kdecore/klibloader.cpp
index 1410308..130cc7c 100644
--- a/microkde/kdecore/klibloader.cpp
+++ b/microkde/kdecore/klibloader.cpp
@@ -148,25 +148,26 @@ QString KLibrary::fileName() const
148 148
149KLibFactory* KLibrary::factory() 149KLibFactory* KLibrary::factory()
150{ 150{
151 if ( m_factory ) 151 if ( m_factory )
152 return m_factory; 152 return m_factory;
153 153
154 QCString symname; 154 QCString symname;
155 symname.sprintf("init_%s", name().latin1() ); 155 symname.sprintf("init_%s", name().latin1() );
156 156
157 void* sym = symbol( symname ); 157 void* sym = symbol( symname );
158 if ( !sym ) 158 if ( !sym )
159 { 159 {
160 kdWarning(150) << "KLibrary: The library " << name() << " does not offer an init_" << name() << " function" << endl; 160 qDebug("KLibrary: The library %s does not offer an %s function", name().latin1(), symname.data());
161 kdWarning(150) << "KLibrary: The library " << name().latin1() << " does not offer an init_" << name().latin1() << " function" << endl;
161 return 0; 162 return 0;
162 } 163 }
163 164
164 typedef KLibFactory* (*t_func)(); 165 typedef KLibFactory* (*t_func)();
165 t_func func = (t_func)sym; 166 t_func func = (t_func)sym;
166 m_factory = func(); 167 m_factory = func();
167 168
168 if( !m_factory ) 169 if( !m_factory )
169 { 170 {
170 kdWarning(150) << "KLibrary: The library " << name() << " does not offer a KDE compatible factory" << endl; 171 kdWarning(150) << "KLibrary: The library " << name() << " does not offer a KDE compatible factory" << endl;
171 return 0; 172 return 0;
172 } 173 }
@@ -359,51 +360,67 @@ KLibLoader::~KLibLoader()
359 360
360//static 361//static
361QString KLibLoader::findLibrary( const char * name/*US , const KInstance * instance*/ ) 362QString KLibLoader::findLibrary( const char * name/*US , const KInstance * instance*/ )
362{ 363{
363 QCString libname( name ); 364 QCString libname( name );
364 365
365 // only append ".la" if there is no extension 366 // only append ".la" if there is no extension
366 // this allows to load non-libtool libraries as well 367 // this allows to load non-libtool libraries as well
367 // (mhk, 20000228) 368 // (mhk, 20000228)
368 int pos = libname.findRev('/'); 369 int pos = libname.findRev('/');
369 if (pos < 0) 370 if (pos < 0)
370 pos = 0; 371 pos = 0;
371 if (libname.find('.', pos) < 0) 372/*US
373 if (libname.find('.', pos) < 0) {
372 libname += ".la"; 374 libname += ".la";
375 }
376*/
377//US in the microedition we work only with shared libraries.
378 if (libname.find('.', pos) < 0) {
379 libname += ".so";
380 }
373 381
374 // only look up the file if it is not an absolute filename 382 // only look up the file if it is not an absolute filename
375 // (mhk, 20000228) 383 // (mhk, 20000228)
376 QString libfile; 384 QString libfile;
377 if (libname[0] == '/') 385 if (libname[0] == '/')
378 libfile = libname; 386 libfile = libname;
379 else 387 else
380 { 388 {
389//US at this point the libname must exist as real filesname. No expansions will be made later
390// in findResources. Because of that we prepend the lib prefix here to the name
391//US I add also the "lib" prefix. I do not how could this could have worked before without it?
392 libname.insert(pos, "lib");
393
394
381//US libfile = instance->dirs()->findResource( "module", libname ); 395//US libfile = instance->dirs()->findResource( "module", libname );
382 libfile = KGlobal::dirs()->findResource( "module", libname ); 396 libfile = KGlobal::dirs()->findResource( "module", libname );
383 if ( libfile.isEmpty() ) 397 if ( libfile.isEmpty() )
384 { 398 {
385//US libfile = instance->dirs()->findResource( "lib", libname ); 399//US libfile = instance->dirs()->findResource( "lib", libname );
386 libfile = KGlobal::dirs()->findResource( "lib", libname ); 400 libfile = KGlobal::dirs()->findResource( "lib", libname );
387#ifndef NDEBUG 401#ifndef NDEBUG
388 if ( !libfile.isEmpty() && libname.left(3) == "lib" ) // don't warn for kdeinit modules 402 if ( !libfile.isEmpty() && libname.left(3) == "lib" ) // don't warn for kdeinit modules
389 kdDebug(150) << "library " << libname << " not found under 'module' but under 'lib'" << endl; 403 kdDebug(150) << "library " << libname << " not found under 'module' but under 'lib'" << endl;
390#endif 404#endif
391 } 405 }
392 if ( libfile.isEmpty() ) 406 if ( libfile.isEmpty() )
393 { 407 {
394#ifndef NDEBUG 408#ifndef NDEBUG
395 kdDebug(150) << "library=" << libname << ": No file names " << libname.data() << " found in paths." << endl; 409 kdDebug(150) << "library=" << libname << ": No file names " << libname.data() << " found in paths." << endl;
396#endif 410#endif
397 self()->d->errorMessage = i18n("Library files for \"%1\" not found in paths").arg(libname); 411 self()->d->errorMessage = i18n("Library files for \"%1\" not found in paths").arg(libname);
412
413 qDebug("KLibLoader::library could not find library: %s", libname.data());
414
398 } 415 }
399 else 416 else
400 self()->d->errorMessage = QString::null; 417 self()->d->errorMessage = QString::null;
401 } 418 }
402 return libfile; 419 return libfile;
403} 420}
404 421
405 422
406KLibrary* KLibLoader::globalLibrary( const char *name ) 423KLibrary* KLibLoader::globalLibrary( const char *name )
407{ 424{
408KLibrary *tmp; 425KLibrary *tmp;
409/*US 426/*US
@@ -445,27 +462,24 @@ KLibrary* KLibLoader::library( const char *name )
445 if (wrap) { 462 if (wrap) {
446 d->pending_close.removeRef(wrap); 463 d->pending_close.removeRef(wrap);
447 if (!wrap->lib) { 464 if (!wrap->lib) {
448 /* This lib only was in loaded_stack, but not in m_libs. */ 465 /* This lib only was in loaded_stack, but not in m_libs. */
449 wrap->lib = new KLibrary( name, wrap->filename, wrap->handle ); 466 wrap->lib = new KLibrary( name, wrap->filename, wrap->handle );
450 } 467 }
451 wrap->ref_count++; 468 wrap->ref_count++;
452 } else { 469 } else {
453 QString libfile = findLibrary( name ); 470 QString libfile = findLibrary( name );
454 if ( libfile.isEmpty() ) 471 if ( libfile.isEmpty() )
455 return 0; 472 return 0;
456 473
457 const QString & qpeDir = QPEApplication::qpeDir();
458 libfile = qpeDir + libfile;
459//US QLibrary *lib = new QLibrary( qpeDir + "/plugins/korganizer/libopiekabc.so", QLibrary::Immediately );
460 QLibrary *qlib = new QLibrary( libfile.latin1(), QLibrary::Immediately ); 474 QLibrary *qlib = new QLibrary( libfile.latin1(), QLibrary::Immediately );
461 475
462//US lt_dlhandle handle = lt_dlopen( libfile.latin1() ); 476//US lt_dlhandle handle = lt_dlopen( libfile.latin1() );
463//US if ( !handle ) 477//US if ( !handle )
464 if ( !qlib ) 478 if ( !qlib )
465 { 479 {
466//US const char* errmsg = lt_dlerror(); 480//US const char* errmsg = lt_dlerror();
467 char* errmsg; 481 char* errmsg;
468 sprintf(errmsg, "KLibLoader::library could not load library: %s", libfile.latin1()); 482 sprintf(errmsg, "KLibLoader::library could not load library: %s", libfile.latin1());
469 qDebug(errmsg); 483 qDebug(errmsg);
470 484
471 if(errmsg) 485 if(errmsg)