summaryrefslogtreecommitdiffabout
path: root/microkde
Unidiff
Diffstat (limited to 'microkde') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kresources/factory.cpp26
-rw-r--r--microkde/kresources/managerimpl.cpp2
-rw-r--r--microkde/microkde.pro8
3 files changed, 35 insertions, 1 deletions
diff --git a/microkde/kresources/factory.cpp b/microkde/kresources/factory.cpp
index a3b7fff..5fbfa68 100644
--- a/microkde/kresources/factory.cpp
+++ b/microkde/kresources/factory.cpp
@@ -1,84 +1,89 @@
1/* 1/*
2 This file is part of libkresources. 2 This file is part of libkresources.
3 3
4 Copyright (c) 2002 Tobias Koenig <tokoe@kde.org> 4 Copyright (c) 2002 Tobias Koenig <tokoe@kde.org>
5 Copyright (c) 2002 Jan-Pascal van Best <janpascal@vanbest.org> 5 Copyright (c) 2002 Jan-Pascal van Best <janpascal@vanbest.org>
6 Copyright (c) 2003 Cornelius Schumacher <schumacher@kde.org> 6 Copyright (c) 2003 Cornelius Schumacher <schumacher@kde.org>
7 7
8 This library is free software; you can redistribute it and/or 8 This library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU Library General Public 9 modify it under the terms of the GNU Library General Public
10 License as published by the Free Software Foundation; either 10 License as published by the Free Software Foundation; either
11 version 2 of the License, or (at your option) any later version. 11 version 2 of the License, or (at your option) any later version.
12 12
13 This library is distributed in the hope that it will be useful, 13 This library is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 Library General Public License for more details. 16 Library General Public License for more details.
17 17
18 You should have received a copy of the GNU Library General Public License 18 You should have received a copy of the GNU Library General Public License
19 along with this library; see the file COPYING.LIB. If not, write to 19 along with this library; see the file COPYING.LIB. If not, write to
20 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 20 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA. 21 Boston, MA 02111-1307, USA.
22*/ 22*/
23 23
24#include <kdebug.h> 24#include <kdebug.h>
25#include <klocale.h> 25#include <klocale.h>
26#include <ksimpleconfig.h> 26#include <ksimpleconfig.h>
27#include <kstandarddirs.h> 27#include <kstandarddirs.h>
28#include <kstaticdeleter.h> 28#include <kstaticdeleter.h>
29//#ifndef DESKTOP_VERSION 29//#ifndef DESKTOP_VERSION
30#include <klibloader.h> 30#include <klibloader.h>
31//#endif 31//#endif
32#include <qfile.h> 32#include <qfile.h>
33 33
34#include "resource.h" 34#include "resource.h"
35#include "factory.h" 35#include "factory.h"
36 36
37#ifdef STATIC_RESOURCES
38#include <file/resourcefile.h>
39#include <dir/resourcedir.h>
40#include <qtopia/resourceqtopia.h>
41#endif
37using namespace KRES; 42using namespace KRES;
38 43
39QDict<Factory> *Factory::mSelves = 0; 44QDict<Factory> *Factory::mSelves = 0;
40static KStaticDeleter< QDict<Factory> > staticDeleter; 45static KStaticDeleter< QDict<Factory> > staticDeleter;
41 46
42Factory *Factory::self( const QString& resourceFamily) 47Factory *Factory::self( const QString& resourceFamily)
43{ 48{
44 49
45 50
46 Factory *factory = 0; 51 Factory *factory = 0;
47 if ( !mSelves ) 52 if ( !mSelves )
48 { 53 {
49 mSelves = staticDeleter.setObject( new QDict<Factory> ); 54 mSelves = staticDeleter.setObject( new QDict<Factory> );
50 } 55 }
51 56
52 factory = mSelves->find( resourceFamily ); 57 factory = mSelves->find( resourceFamily );
53 58
54 if ( !factory ) { 59 if ( !factory ) {
55 factory = new Factory( resourceFamily); 60 factory = new Factory( resourceFamily);
56 mSelves->insert( resourceFamily, factory ); 61 mSelves->insert( resourceFamily, factory );
57 } 62 }
58 63
59 return factory; 64 return factory;
60} 65}
61 66
62Factory::Factory( const QString& resourceFamily) : 67Factory::Factory( const QString& resourceFamily) :
63 mResourceFamily( resourceFamily ) 68 mResourceFamily( resourceFamily )
64{ 69{
65//US so far we have three types available for resourceFamily "contact" 70//US so far we have three types available for resourceFamily "contact"
66// and that are "file", "dir", "ldap" 71// and that are "file", "dir", "ldap"
67/*US 72/*US
68 73
69 KTrader::OfferList plugins = KTrader::self()->query( "KResources/Plugin", QString( "[X-KDE-ResourceFamily] == '%1'" ) 74 KTrader::OfferList plugins = KTrader::self()->query( "KResources/Plugin", QString( "[X-KDE-ResourceFamily] == '%1'" )
70 .arg( resourceFamily ) ); 75 .arg( resourceFamily ) );
71 KTrader::OfferList::ConstIterator it; 76 KTrader::OfferList::ConstIterator it;
72 for ( it = plugins.begin(); it != plugins.end(); ++it ) { 77 for ( it = plugins.begin(); it != plugins.end(); ++it ) {
73 QVariant type = (*it)->property( "X-KDE-ResourceType" ); 78 QVariant type = (*it)->property( "X-KDE-ResourceType" );
74 if ( !type.toString().isEmpty() ) 79 if ( !type.toString().isEmpty() )
75 mTypeMap.insert( type.toString(), *it ); 80 mTypeMap.insert( type.toString(), *it );
76 } 81 }
77*/ 82*/
78 83
79//US new 84//US new
80 PluginInfo* info = new PluginInfo; 85 PluginInfo* info = new PluginInfo;
81 info->library = "microkabc_file"; 86 info->library = "microkabc_file";
82 info->nameLabel = i18n( "file" ); 87 info->nameLabel = i18n( "file" );
83 info->descriptionLabel = i18n( "One file" ); 88 info->descriptionLabel = i18n( "One file" );
84 mTypeMap.insert( "file", info ); 89 mTypeMap.insert( "file", info );
@@ -174,83 +179,104 @@ ConfigWidget *Factory::configWidget( const QString& type, QWidget *parent )
174 179
175 if ( !pluginFactory ) { 180 if ( !pluginFactory ) {
176 qDebug("KRES::Factory::configWidget(): no plugin factory for library %s", pi->library.latin1()); 181 qDebug("KRES::Factory::configWidget(): no plugin factory for library %s", pi->library.latin1());
177 kdDebug() << "KRES::Factory::configWidget(): no plugin factory." << endl; 182 kdDebug() << "KRES::Factory::configWidget(): no plugin factory." << endl;
178 return 0; 183 return 0;
179 } 184 }
180 185
181 ConfigWidget *wdg = pluginFactory->configWidget( parent ); 186 ConfigWidget *wdg = pluginFactory->configWidget( parent );
182 if ( !wdg ) { 187 if ( !wdg ) {
183//US kdDebug() << "'" << ptr->library() << "' is not a " + mResourceFamily + " plugin." << endl; 188//US kdDebug() << "'" << ptr->library() << "' is not a " + mResourceFamily + " plugin." << endl;
184 qDebug("%s is not a %s plugin.", pi->library.latin1(), mResourceFamily.latin1()); 189 qDebug("%s is not a %s plugin.", pi->library.latin1(), mResourceFamily.latin1());
185 return 0; 190 return 0;
186 } 191 }
187 return wdg; 192 return wdg;
188 193
189} 194}
190 195
191QString Factory::typeName( const QString &type ) const 196QString Factory::typeName( const QString &type ) const
192{ 197{
193 if ( type.isEmpty() || !mTypeMap.contains( type ) ) 198 if ( type.isEmpty() || !mTypeMap.contains( type ) )
194 return QString(); 199 return QString();
195 200
196 201
197//US KService::Ptr ptr = mTypeMap[ type ]; 202//US KService::Ptr ptr = mTypeMap[ type ];
198//US return ptr->name(); 203//US return ptr->name();
199 PluginInfo* pi = mTypeMap[ type ]; 204 PluginInfo* pi = mTypeMap[ type ];
200 return pi->nameLabel; 205 return pi->nameLabel;
201 206
202} 207}
203 208
204QString Factory::typeDescription( const QString &type ) const 209QString Factory::typeDescription( const QString &type ) const
205{ 210{
206 if ( type.isEmpty() || !mTypeMap.contains( type ) ) 211 if ( type.isEmpty() || !mTypeMap.contains( type ) )
207 return QString(); 212 return QString();
208 213
209//US KService::Ptr ptr = mTypeMap[ type ]; 214//US KService::Ptr ptr = mTypeMap[ type ];
210//US return ptr->comment(); 215//US return ptr->comment();
211 PluginInfo* pi = mTypeMap[ type ]; 216 PluginInfo* pi = mTypeMap[ type ];
212 return pi->descriptionLabel; 217 return pi->descriptionLabel;
213} 218}
214 219
215Resource *Factory::resource( const QString& type, const KConfig *config ) 220Resource *Factory::resource( const QString& type, const KConfig *config )
216{ 221{
217 222
218 223
219 if ( type.isEmpty() || !mTypeMap.contains( type ) ) 224 if ( type.isEmpty() || !mTypeMap.contains( type ) )
220 return 0; 225 return 0;
221 226
227#ifdef STATIC_RESOURCES
228 qDebug("NEW STATIC RESOURCE %s", type.latin1());
229 Resource *resource = 0;
230 if ( type == "file" ) {
231 resource = (Resource *) new KABC::ResourceFile( config );
232 } else if ( type == "dir" ) {
233 resource = new KABC::ResourceDir( config );
234 } else if ( type == "qtopia" ) {
235 resource = new KABC::ResourceQtopia( config );
236 }
237 if ( !resource)
238 qDebug("Factory::resource:: resources are statically linked. resource type %s is not supported ",type.latin1() );
239 else
240 resource->setType( type );
241 return resource;
242#else
243
244
245
222/*US load the lib not dynamicly. !! 246/*US load the lib not dynamicly. !!
223 KService::Ptr ptr = mTypeMap[ type ]; 247 KService::Ptr ptr = mTypeMap[ type ];
224 KLibFactory *factory = KLibLoader::self()->factory( ptr->library().latin1() ); 248 KLibFactory *factory = KLibLoader::self()->factory( ptr->library().latin1() );
225 if ( !factory ) { 249 if ( !factory ) {
226 kdDebug() << "KRES::Factory::resource(): Factory creation failed" << endl; 250 kdDebug() << "KRES::Factory::resource(): Factory creation failed" << endl;
227 return 0; 251 return 0;
228 } 252 }
229*/ 253*/
230 PluginInfo* pi = mTypeMap[ type ]; 254 PluginInfo* pi = mTypeMap[ type ];
231 KLibFactory *factory = (KLibFactory *)KLibLoader::self()->factory( pi->library.latin1() ); 255 KLibFactory *factory = (KLibFactory *)KLibLoader::self()->factory( pi->library.latin1() );
232 if ( !factory ) { 256 if ( !factory ) {
233 qDebug("KRES::Factory::resource(): Factory creation failed for library %s", pi->library.latin1()); 257 qDebug("KRES::Factory::resource(): Factory creation failed for library %s", pi->library.latin1());
234 kdDebug() << "KRES::Factory::resource(): Factory creation failed" << endl; 258 kdDebug() << "KRES::Factory::resource(): Factory creation failed" << endl;
235 return 0; 259 return 0;
236 } 260 }
237 261
238 PluginFactoryBase *pluginFactory = static_cast<PluginFactoryBase *>( factory ); 262 PluginFactoryBase *pluginFactory = static_cast<PluginFactoryBase *>( factory );
239 263
240 if ( !pluginFactory ) { 264 if ( !pluginFactory ) {
241 qDebug("KRES::Factory::resource(): no plugin factory for library %s", pi->library.latin1()); 265 qDebug("KRES::Factory::resource(): no plugin factory for library %s", pi->library.latin1());
242 kdDebug() << "KRES::Factory::resource(): no plugin factory." << endl; 266 kdDebug() << "KRES::Factory::resource(): no plugin factory." << endl;
243 return 0; 267 return 0;
244 } 268 }
245 269
246 Resource *resource = pluginFactory->resource( config ); 270 Resource *resource = pluginFactory->resource( config );
247 if ( !resource ) { 271 if ( !resource ) {
248//US kdDebug() << "'" << ptr->library() << "' is not a " + mResourceFamily + " plugin." << endl; 272//US kdDebug() << "'" << ptr->library() << "' is not a " + mResourceFamily + " plugin." << endl;
249 qDebug("%s is not a %s plugin.", pi->library.latin1(), mResourceFamily.latin1()); 273 qDebug("%s is not a %s plugin.", pi->library.latin1(), mResourceFamily.latin1());
250 return 0; 274 return 0;
251 } 275 }
252 276
253 resource->setType( type ); 277 resource->setType( type );
254 278
255 return resource; 279 return resource;
280
281#endif
256} 282}
diff --git a/microkde/kresources/managerimpl.cpp b/microkde/kresources/managerimpl.cpp
index 566b8f4..a6d2007 100644
--- a/microkde/kresources/managerimpl.cpp
+++ b/microkde/kresources/managerimpl.cpp
@@ -1,90 +1,92 @@
1/* 1/*
2 This file is part of libkresources. 2 This file is part of libkresources.
3 3
4 Copyright (c) 2002 Tobias Koenig <tokoe@kde.org> 4 Copyright (c) 2002 Tobias Koenig <tokoe@kde.org>
5 Copyright (c) 2002 Jan-Pascal van Best <janpascal@vanbest.org> 5 Copyright (c) 2002 Jan-Pascal van Best <janpascal@vanbest.org>
6 Copyright (c) 2003 Cornelius Schumacher <schumacher@kde.org> 6 Copyright (c) 2003 Cornelius Schumacher <schumacher@kde.org>
7 7
8 This library is free software; you can redistribute it and/or 8 This library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU Library General Public 9 modify it under the terms of the GNU Library General Public
10 License as published by the Free Software Foundation; either 10 License as published by the Free Software Foundation; either
11 version 2 of the License, or (at your option) any later version. 11 version 2 of the License, or (at your option) any later version.
12 12
13 This library is distributed in the hope that it will be useful, 13 This library is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 Library General Public License for more details. 16 Library General Public License for more details.
17 17
18 You should have received a copy of the GNU Library General Public License 18 You should have received a copy of the GNU Library General Public License
19 along with this library; see the file COPYING.LIB. If not, write to 19 along with this library; see the file COPYING.LIB. If not, write to
20 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 20 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA. 21 Boston, MA 02111-1307, USA.
22*/ 22*/
23 23
24/* 24/*
25Enhanced Version of the file for platform independent KDE tools. 25Enhanced Version of the file for platform independent KDE tools.
26Copyright (c) 2004 Ulf Schenk 26Copyright (c) 2004 Ulf Schenk
27 27
28$Id$ 28$Id$
29*/ 29*/
30 30
31#include <kglobal.h> 31#include <kglobal.h>
32 32
33#include <kapplication.h> 33#include <kapplication.h>
34#include <kdebug.h> 34#include <kdebug.h>
35#include <kconfig.h> 35#include <kconfig.h>
36#include <kstandarddirs.h> 36#include <kstandarddirs.h>
37#include <qfile.h> 37#include <qfile.h>
38 38
39#include "resource.h" 39#include "resource.h"
40#include "factory.h" 40#include "factory.h"
41#include "managerimpl.h" 41#include "managerimpl.h"
42 42
43
44
43using namespace KRES; 45using namespace KRES;
44 46
45ManagerImpl::ManagerImpl( const QString &family ) 47ManagerImpl::ManagerImpl( const QString &family )
46 : mFamily( family ), mConfig( 0 ), mStdConfig( 0 ), mStandard( 0 ), 48 : mFamily( family ), mConfig( 0 ), mStdConfig( 0 ), mStandard( 0 ),
47 mFactory( 0 ) 49 mFactory( 0 )
48 50
49{ 51{
50 kdDebug(5650) << "ManagerImpl::ManagerImpl()" << endl; 52 kdDebug(5650) << "ManagerImpl::ManagerImpl()" << endl;
51 53
52 54
53} 55}
54 56
55ManagerImpl::~ManagerImpl() 57ManagerImpl::~ManagerImpl()
56{ 58{
57 kdDebug(5650) << "ManagerImpl::~ManagerImpl()" << endl; 59 kdDebug(5650) << "ManagerImpl::~ManagerImpl()" << endl;
58 60
59 Resource::List::ConstIterator it; 61 Resource::List::ConstIterator it;
60 for ( it = mResources.begin(); it != mResources.end(); ++it ) { 62 for ( it = mResources.begin(); it != mResources.end(); ++it ) {
61 delete *it; 63 delete *it;
62 } 64 }
63 65
64 delete mStdConfig; 66 delete mStdConfig;
65} 67}
66 68
67void ManagerImpl::createStandardConfig() 69void ManagerImpl::createStandardConfig()
68{ 70{
69 if ( !mStdConfig ) { 71 if ( !mStdConfig ) {
70 QString file = locateLocal( "data", KGlobal::getAppName() 72 QString file = locateLocal( "data", KGlobal::getAppName()
71 + "/kresources/" + mFamily + "rc" ); 73 + "/kresources/" + mFamily + "rc" );
72 if ( mFamily == "tmpcontact" ) { 74 if ( mFamily == "tmpcontact" ) {
73 if (QFile::exists ( file ) ){ 75 if (QFile::exists ( file ) ){
74 QFile::remove ( file ); 76 QFile::remove ( file );
75 qDebug("removed tmp rc file: %s ", file.latin1()); 77 qDebug("removed tmp rc file: %s ", file.latin1());
76 } 78 }
77 } 79 }
78 mStdConfig = new KConfig( file ); 80 mStdConfig = new KConfig( file );
79 } 81 }
80 82
81 mConfig = mStdConfig; 83 mConfig = mStdConfig;
82} 84}
83 85
84void ManagerImpl::readConfig( KConfig *cfg ) 86void ManagerImpl::readConfig( KConfig *cfg )
85{ 87{
86 kdDebug(5650) << "ManagerImpl::readConfig()" << endl; 88 kdDebug(5650) << "ManagerImpl::readConfig()" << endl;
87 89
88 delete mFactory; 90 delete mFactory;
89 mFactory = Factory::self( mFamily ); 91 mFactory = Factory::self( mFamily );
90 92
diff --git a/microkde/microkde.pro b/microkde/microkde.pro
index 9016260..783ec34 100644
--- a/microkde/microkde.pro
+++ b/microkde/microkde.pro
@@ -1,68 +1,74 @@
1 TEMPLATE= lib 1 TEMPLATE= lib
2 CONFIG += qt warn_on 2 CONFIG += qt warn_on
3include( ../variables.pri )
3#INCLUDEPATH += $(QTDIR)/include . 4#INCLUDEPATH += $(QTDIR)/include .
4#DEPENDPATH += $(QTDIR)/include 5#DEPENDPATH += $(QTDIR)/include
5INCLUDEPATH += . ../ ../kabc ./kdecore ./kdeui ./kio/kfile ./kio/kio 6INCLUDEPATH += . ../ ../kabc ./kdecore ./kdeui ./kio/kfile ./kio/kio
6#LIBS += -lqtcompat 7#LIBS += -lqtcompat
7 8
8 TARGET = microkde 9 TARGET = microkde
9DESTDIR= ../bin 10DESTDIR= ../bin
10DEFINES += DESKTOP_VERSION KDE_QT_ONLY 11DEFINES += DESKTOP_VERSION KDE_QT_ONLY
11unix : { 12unix : {
13staticlib: {
14INCLUDEPATH += ../kabc/plugins
15DEFINES += STATIC_RESOURCES
16}
17
18
12OBJECTS_DIR = obj/unix 19OBJECTS_DIR = obj/unix
13MOC_DIR = moc/unix 20MOC_DIR = moc/unix
14} 21}
15win32: { 22win32: {
16DEFINES += _WIN32_ 23DEFINES += _WIN32_
17OBJECTS_DIR = obj/win 24OBJECTS_DIR = obj/win
18MOC_DIR = moc/win 25MOC_DIR = moc/win
19} 26}
20include( ../variables.pri )
21 27
22 28
23 29
24HEADERS = \ 30HEADERS = \
25qlayoutengine_p.h \ 31qlayoutengine_p.h \
26KDGanttMinimizeSplitter.h \ 32KDGanttMinimizeSplitter.h \
27 kapplication.h \ 33 kapplication.h \
28 kaudioplayer.h \ 34 kaudioplayer.h \
29 kcalendarsystem.h \ 35 kcalendarsystem.h \
30 kcalendarsystemgregorian.h \ 36 kcalendarsystemgregorian.h \
31 kcolorbutton.h \ 37 kcolorbutton.h \
32 kcolordialog.h \ 38 kcolordialog.h \
33 kcombobox.h \ 39 kcombobox.h \
34 kconfig.h \ 40 kconfig.h \
35 kdatetbl.h \ 41 kdatetbl.h \
36 kdebug.h \ 42 kdebug.h \
37 kdialog.h \ 43 kdialog.h \
38 kdialogbase.h \ 44 kdialogbase.h \
39 keditlistbox.h \ 45 keditlistbox.h \
40 kemailsettings.h \ 46 kemailsettings.h \
41 kfiledialog.h \ 47 kfiledialog.h \
42 kfontdialog.h \ 48 kfontdialog.h \
43 kglobal.h \ 49 kglobal.h \
44 kglobalsettings.h \ 50 kglobalsettings.h \
45 kiconloader.h \ 51 kiconloader.h \
46 klineedit.h \ 52 klineedit.h \
47 klineeditdlg.h \ 53 klineeditdlg.h \
48 kmessagebox.h \ 54 kmessagebox.h \
49 knotifyclient.h \ 55 knotifyclient.h \
50 kprinter.h \ 56 kprinter.h \
51 kprocess.h \ 57 kprocess.h \
52 krestrictedline.h \ 58 krestrictedline.h \
53 krun.h \ 59 krun.h \
54 ksimpleconfig.h \ 60 ksimpleconfig.h \
55 kstaticdeleter.h \ 61 kstaticdeleter.h \
56 ksystemtray.h \ 62 ksystemtray.h \
57 ktempfile.h \ 63 ktempfile.h \
58 ktextedit.h \ 64 ktextedit.h \
59 kunload.h \ 65 kunload.h \
60 kurl.h \ 66 kurl.h \
61 kdeui/kguiitem.h \ 67 kdeui/kguiitem.h \
62 kdeui/kcmodule.h \ 68 kdeui/kcmodule.h \
63 kdeui/kbuttonbox.h \ 69 kdeui/kbuttonbox.h \
64 kdeui/klistbox.h \ 70 kdeui/klistbox.h \
65 kdeui/klistview.h \ 71 kdeui/klistview.h \
66 kdeui/kjanuswidget.h \ 72 kdeui/kjanuswidget.h \
67 kdeui/kseparator.h \ 73 kdeui/kseparator.h \
68 kdeui/knuminput.h \ 74 kdeui/knuminput.h \