summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--Makefile263
-rw-r--r--kabc/kabc.pro4
-rw-r--r--kabc/plugins/dir/dir.pro29
-rw-r--r--kabc/plugins/dir/resourcedir.cpp6
-rw-r--r--kabc/plugins/file/file.pro30
-rw-r--r--kabc/plugins/file/resourcefile.cpp6
-rw-r--r--kaddressbook/kcmconfigs/addresseewidget.cpp1
-rw-r--r--kaddressbook/mainembedded.cpp7
-rw-r--r--kopi-desktop.pro2
-rw-r--r--kopiemail.control2
-rw-r--r--microkde/kdecore/klibloader.cpp17
-rw-r--r--microkde/kdecore/kstandarddirs.cpp3
-rw-r--r--microkde/kdeui/ktoolbar.cpp2
-rw-r--r--microkde/kresources/factory.cpp3
-rw-r--r--microkde/microkde.pro10
15 files changed, 239 insertions, 146 deletions
diff --git a/Makefile b/Makefile
index d770a05..620581b 100644
--- a/Makefile
+++ b/Makefile
@@ -1,118 +1,147 @@
1DISTPATH = $(shell pwd) 1#############################################################################
2DISTDIR = $(shell basename $(DISTPATH)) 2# Makefile for building: kopi-desktop
3 3# Generated by qmake (1.07a) (Qt 3.3.2) on: Wed Jul 7 13:43:59 2004
4SUBDIRS = libical/src/libical libical/src/libicalss qtcompat microkde \ 4# Project: kopi-desktop.pro
5 libkcal libkdepim kabc kabc/converter/opie kabc/formats/binary kabc/plugins/file kabc/plugins/dir \ 5# Template: subdirs
6 kabc/plugins/opie \ 6# Command: $(QMAKE) "CONFIG+=thread" "CONFIG+=debug" -o Makefile kopi-desktop.pro
7 korganizer kalarmd kaddressbook kmicromail/libetpan kmicromail/libmailwrapper kmicromail 7#############################################################################
8all: tmake 8
9 for i in $(SUBDIRS); do pushd $$i; \ 9 MAKEFILE =Makefile
10 make -f Makefile$(PLATFORM) || exit 1; popd; \ 10 QMAKE =qmake
11 done 11DEL_FILE = rm -f
12 12CHK_DIR_EXISTS= test -d
13objects: 13MKDIR = mkdir -p
14 for i in $(SUBDIRS); do mkdir -p $$i/obj/$(PLATFORM); done 14INSTALL_FILE=
15 for i in $(SUBDIRS); do mkdir -p $$i/moc/$(PLATFORM); done 15INSTALL_DIR =
16 mkdir -p libical/lib/$(PLATFORM) 16 SUBTARGETS = \
17 17 sub-libical \
18clean: 18 sub-libkcal \
19 rm -f libical/lib/$(PLATFORM)/*; 19 sub-microkde \
20 for i in $(SUBDIRS); do pushd $$i; make clean; rm -f *~;\ 20 sub-libkdepim \
21 rm -f obj/$(PLATFORM)/*; rm -f moc/$(PLATFORM)/*; rm Makefile$(PLATFORM); popd; \ 21 sub-kabc \
22 done 22 sub-korganizer \
23install: 23 sub-kaddressbook \
24 cd bin/kdepim; make install 24 sub-kabc-plugins-file \
25 cp db2file/db2file $(QPEDIR)/bin/db2file 25 sub-kabc-plugins-dir
26 cp korganizer/korganizer.desktop $(QPEDIR)/apps/Pim/korganizer.desktop 26
27 cp kmicromail/kmicromail.desktop $(QPEDIR)/apps/Pim/kmicromail.desktop 27first: all
28 cp kaddressbook/kaddressbook.desktop $(QPEDIR)/apps/Pim/kaddressbook.desktop 28
29 29all: Makefile $(SUBTARGETS)
30dist: 30
31 @echo Dont forget to do "make install" before "make dist" 31libical/$(MAKEFILE):
32 rm -f *arm.ipk 32 @$(CHK_DIR_EXISTS) "libical" || $(MKDIR) "libical"
33 rm -f *~ 33 cd libical && $(QMAKE) libical.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
34 cd ..; tar czf kdepim.src.tar.gz --exclude=obj --exclude=moc kdepim 34sub-libical: libical/$(MAKEFILE) FORCE
35 mkipks kmicrokdelibs.control 35 cd libical && $(MAKE) -f $(MAKEFILE)
36 mkipks korganizer.control 36
37 mkipks kaddressbook.control 37libkcal/$(MAKEFILE):
38 mkipks kopiemail.control 38 @$(CHK_DIR_EXISTS) "libkcal" || $(MKDIR) "libkcal"
39 mkipks korganizer-alarm.control 39 cd libkcal && $(QMAKE) libkcal.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
40 40sub-libkcal: libkcal/$(MAKEFILE) FORCE
41tmake: objects qtcompat/Makefile$(PLATFORM) microkde/Makefile$(PLATFORM) \ 41 cd libkcal && $(MAKE) -f $(MAKEFILE)
42 libkcal/Makefile$(PLATFORM) \ 42
43 libkdepim/Makefile$(PLATFORM) korganizer/Makefile$(PLATFORM) \ 43microkde/$(MAKEFILE):
44 kalarmd/Makefile$(PLATFORM) \ 44 @$(CHK_DIR_EXISTS) "microkde" || $(MKDIR) "microkde"
45 libical/src/libical/Makefile$(PLATFORM) \ 45 cd microkde && $(QMAKE) microkde.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
46 libical/src/libicalss/Makefile$(PLATFORM) \ 46sub-microkde: microkde/$(MAKEFILE) FORCE
47 kabc/Makefile$(PLATFORM) \ 47 cd microkde && $(MAKE) -f $(MAKEFILE)
48 kabc/converter/opie/Makefile$(PLATFORM) \ 48
49 kabc/formats/binary/Makefile$(PLATFORM) \ 49libkdepim/$(MAKEFILE):
50 kabc/plugins/file/Makefile$(PLATFORM) \ 50 @$(CHK_DIR_EXISTS) "libkdepim" || $(MKDIR) "libkdepim"
51 kabc/plugins/dir/Makefile$(PLATFORM) \ 51 cd libkdepim && $(QMAKE) libkdepim.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
52 kabc/plugins/ldap/Makefile$(PLATFORM) \ 52sub-libkdepim: libkdepim/$(MAKEFILE) FORCE
53 kabc/plugins/opie/Makefile$(PLATFORM) \ 53 cd libkdepim && $(MAKE) -f $(MAKEFILE)
54 kaddressbook/Makefile$(PLATFORM) \ 54
55 kmicromail/Makefile$(PLATFORM) \ 55kabc/$(MAKEFILE):
56 kmicromail/libetpan/Makefile$(PLATFORM) \ 56 @$(CHK_DIR_EXISTS) "kabc" || $(MKDIR) "kabc"
57 kmicromail/libmailwrapper/Makefile$(PLATFORM) 57 cd kabc && $(QMAKE) kabc.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
58 58sub-kabc: kabc/$(MAKEFILE) FORCE
59 59 cd kabc && $(MAKE) -f $(MAKEFILE)
60 60
61qtcompat/Makefile$(PLATFORM): qtcompat/qtcompat.pro 61korganizer/$(MAKEFILE):
62 cd qtcompat; tmake "CONFIG+=$(RELEASE_DEBUG)" qtcompat.pro -o Makefile$(PLATFORM) 62 @$(CHK_DIR_EXISTS) "korganizer" || $(MKDIR) "korganizer"
63 63 cd korganizer && $(QMAKE) korganizer.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
64microkde/Makefile$(PLATFORM): microkde/microkdeE.pro 64sub-korganizer: korganizer/$(MAKEFILE) FORCE
65 cd microkde; tmake "CONFIG+=$(RELEASE_DEBUG)" microkdeE.pro -o Makefile$(PLATFORM) 65 cd korganizer && $(MAKE) -f $(MAKEFILE)
66 66
67libkcal/Makefile$(PLATFORM): libkcal/libkcalE.pro 67kaddressbook/$(MAKEFILE):
68 cd libkcal; tmake "CONFIG+=$(RELEASE_DEBUG)" libkcalE.pro -o Makefile$(PLATFORM) 68 @$(CHK_DIR_EXISTS) "kaddressbook" || $(MKDIR) "kaddressbook"
69 69 cd kaddressbook && $(QMAKE) kaddressbook.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
70 70sub-kaddressbook: kaddressbook/$(MAKEFILE) FORCE
71libkdepim/Makefile$(PLATFORM): libkdepim/libkdepimE.pro 71 cd kaddressbook && $(MAKE) -f $(MAKEFILE)
72 cd libkdepim; tmake "CONFIG+=$(RELEASE_DEBUG)" libkdepimE.pro -o Makefile$(PLATFORM) 72
73 73kabc/plugins/file/$(MAKEFILE):
74kalarmd/Makefile$(PLATFORM): kalarmd/kalarmdE.pro 74 @$(CHK_DIR_EXISTS) "kabc/plugins/file" || $(MKDIR) "kabc/plugins/file"
75 cd kalarmd; tmake "CONFIG+=$(RELEASE_DEBUG)" kalarmdE.pro -o Makefile$(PLATFORM) 75 cd kabc/plugins/file && $(QMAKE) file.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
76 76sub-kabc-plugins-file: kabc/plugins/file/$(MAKEFILE) FORCE
77korganizer/Makefile$(PLATFORM): korganizer/korganizerE.pro 77 cd kabc/plugins/file && $(MAKE) -f $(MAKEFILE)
78 cd korganizer; tmake "CONFIG+=$(RELEASE_DEBUG)" korganizerE.pro -o Makefile$(PLATFORM) 78
79 79kabc/plugins/dir/$(MAKEFILE):
80libical/src/libical/Makefile$(PLATFORM): libical/src/libical/libicalE.pro 80 @$(CHK_DIR_EXISTS) "kabc/plugins/dir" || $(MKDIR) "kabc/plugins/dir"
81 cd libical/src/libical; tmake "CONFIG+=$(RELEASE_DEBUG)" libicalE.pro -o Makefile$(PLATFORM) 81 cd kabc/plugins/dir && $(QMAKE) dir.pro "CONFIG+=thread" "CONFIG+=debug" -o $(MAKEFILE)
82 82sub-kabc-plugins-dir: kabc/plugins/dir/$(MAKEFILE) FORCE
83libical/src/libicalss/Makefile$(PLATFORM): libical/src/libicalss/libicalssE.pro 83 cd kabc/plugins/dir && $(MAKE) -f $(MAKEFILE)
84 cd libical/src/libicalss; tmake "CONFIG+=$(RELEASE_DEBUG)" libicalssE.pro -o Makefile$(PLATFORM) 84
85 85Makefile: kopi-desktop.pro /usr/local/qtgcc/mkspecs/default/qmake.conf
86kabc/Makefile$(PLATFORM): kabc/kabcE.pro 86 $(QMAKE) "CONFIG+=thread" "CONFIG+=debug" -o Makefile kopi-desktop.pro
87 cd kabc; tmake "CONFIG+=$(RELEASE_DEBUG)" kabcE.pro -o Makefile$(PLATFORM) 87qmake: qmake_all
88 88 @$(QMAKE) "CONFIG+=thread" "CONFIG+=debug" -o Makefile kopi-desktop.pro
89kabc/converter/opie/Makefile$(PLATFORM): kabc/converter/opie/opieconverterE.pro 89
90 cd kabc/converter/opie; tmake "CONFIG+=$(RELEASE_DEBUG)" opieconverterE.pro -o Makefile$(PLATFORM) 90all: $(SUBTARGETS)
91 91qmake_all: libical/$(MAKEFILE) libkcal/$(MAKEFILE) microkde/$(MAKEFILE) libkdepim/$(MAKEFILE) kabc/$(MAKEFILE) korganizer/$(MAKEFILE) kaddressbook/$(MAKEFILE) kabc/plugins/file/$(MAKEFILE) kabc/plugins/dir/$(MAKEFILE)
92kabc/formats/binary/Makefile$(PLATFORM): kabc/formats/binary/kabcformat_binaryE.pro 92 ( [ -d libical ] && cd libical ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
93 cd kabc/formats/binary; tmake "CONFIG+=$(RELEASE_DEBUG)" kabcformat_binaryE.pro -o Makefile$(PLATFORM) 93 ( [ -d libkcal ] && cd libkcal ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
94 94 ( [ -d microkde ] && cd microkde ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
95kabc/plugins/file/Makefile$(PLATFORM): kabc/plugins/file/kabc_fileE.pro 95 ( [ -d libkdepim ] && cd libkdepim ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
96 cd kabc/plugins/file; tmake "CONFIG+=$(RELEASE_DEBUG)" kabc_fileE.pro -o Makefile$(PLATFORM) 96 ( [ -d kabc ] && cd kabc ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
97 97 ( [ -d korganizer ] && cd korganizer ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
98kabc/plugins/dir/Makefile$(PLATFORM): kabc/plugins/dir/kabc_dirE.pro 98 ( [ -d kaddressbook ] && cd kaddressbook ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
99 cd kabc/plugins/dir; tmake "CONFIG+=$(RELEASE_DEBUG)" kabc_dirE.pro -o Makefile$(PLATFORM) 99 ( [ -d kabc/plugins/file ] && cd kabc/plugins/file ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
100 100 ( [ -d kabc/plugins/dir ] && cd kabc/plugins/dir ; grep "^qmake_all:" $(MAKEFILE) && $(MAKE) -f $(MAKEFILE) qmake_all; ) || true
101kabc/plugins/ldap/Makefile$(PLATFORM): kabc/plugins/ldap/kabc_ldapE.pro 101clean uicables mocables uiclean mocclean lexclean yaccclean : qmake_all FORCE
102 cd kabc/plugins/ldap; tmake "CONFIG+=$(RELEASE_DEBUG)" kabc_ldapE.pro -o Makefile$(PLATFORM) 102 ( [ -d libical ] && cd libical ; $(MAKE) -f $(MAKEFILE) $@; ) || true
103 103 ( [ -d libkcal ] && cd libkcal ; $(MAKE) -f $(MAKEFILE) $@; ) || true
104kabc/plugins/opie/Makefile$(PLATFORM): kabc/plugins/opie/kabc_opieE.pro 104 ( [ -d microkde ] && cd microkde ; $(MAKE) -f $(MAKEFILE) $@; ) || true
105 cd kabc/plugins/opie; tmake "CONFIG+=$(RELEASE_DEBUG)" kabc_opieE.pro -o Makefile$(PLATFORM) 105 ( [ -d libkdepim ] && cd libkdepim ; $(MAKE) -f $(MAKEFILE) $@; ) || true
106 106 ( [ -d kabc ] && cd kabc ; $(MAKE) -f $(MAKEFILE) $@; ) || true
107 107 ( [ -d korganizer ] && cd korganizer ; $(MAKE) -f $(MAKEFILE) $@; ) || true
108kaddressbook/Makefile$(PLATFORM): kaddressbook/kaddressbookE.pro 108 ( [ -d kaddressbook ] && cd kaddressbook ; $(MAKE) -f $(MAKEFILE) $@; ) || true
109 cd kaddressbook; tmake "CONFIG+=$(RELEASE_DEBUG)" kaddressbookE.pro -o Makefile$(PLATFORM) 109 ( [ -d kabc/plugins/file ] && cd kabc/plugins/file ; $(MAKE) -f $(MAKEFILE) $@; ) || true
110 110 ( [ -d kabc/plugins/dir ] && cd kabc/plugins/dir ; $(MAKE) -f $(MAKEFILE) $@; ) || true
111 111uninstall_subdirs: qmake_all FORCE
112kmicromail/Makefile$(PLATFORM): kmicromail/kmicromailE.pro 112 ( [ -d libical ] && cd libical ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
113 cd kmicromail; tmake "CONFIG+=$(RELEASE_DEBUG)" kmicromailE.pro -o Makefile$(PLATFORM) 113 ( [ -d libkcal ] && cd libkcal ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
114kmicromail/libetpan/Makefile$(PLATFORM): kmicromail/libetpan/libetpanE.pro 114 ( [ -d microkde ] && cd microkde ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
115 cd kmicromail/libetpan; tmake "CONFIG+=$(RELEASE_DEBUG)" libetpanE.pro -o Makefile$(PLATFORM) 115 ( [ -d libkdepim ] && cd libkdepim ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
116kmicromail/libmailwrapper/Makefile$(PLATFORM): kmicromail/libmailwrapper/libmailwrapperE.pro 116 ( [ -d kabc ] && cd kabc ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
117 cd kmicromail/libmailwrapper; tmake "CONFIG+=$(RELEASE_DEBUG)" libmailwrapperE.pro -o Makefile$(PLATFORM) 117 ( [ -d korganizer ] && cd korganizer ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
118 ( [ -d kaddressbook ] && cd kaddressbook ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
119 ( [ -d kabc/plugins/file ] && cd kabc/plugins/file ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
120 ( [ -d kabc/plugins/dir ] && cd kabc/plugins/dir ; $(MAKE) -f $(MAKEFILE) uninstall; ) || true
121install_subdirs: qmake_all FORCE
122 ( [ -d libical ] && cd libical ; $(MAKE) -f $(MAKEFILE) install; ) || true
123 ( [ -d libkcal ] && cd libkcal ; $(MAKE) -f $(MAKEFILE) install; ) || true
124 ( [ -d microkde ] && cd microkde ; $(MAKE) -f $(MAKEFILE) install; ) || true
125 ( [ -d libkdepim ] && cd libkdepim ; $(MAKE) -f $(MAKEFILE) install; ) || true
126 ( [ -d kabc ] && cd kabc ; $(MAKE) -f $(MAKEFILE) install; ) || true
127 ( [ -d korganizer ] && cd korganizer ; $(MAKE) -f $(MAKEFILE) install; ) || true
128 ( [ -d kaddressbook ] && cd kaddressbook ; $(MAKE) -f $(MAKEFILE) install; ) || true
129 ( [ -d kabc/plugins/file ] && cd kabc/plugins/file ; $(MAKE) -f $(MAKEFILE) install; ) || true
130 ( [ -d kabc/plugins/dir ] && cd kabc/plugins/dir ; $(MAKE) -f $(MAKEFILE) install; ) || true
131distclean: qmake_all FORCE
132 ( [ -d libical ] && cd libical ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
133 ( [ -d libkcal ] && cd libkcal ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
134 ( [ -d microkde ] && cd microkde ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
135 ( [ -d libkdepim ] && cd libkdepim ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
136 ( [ -d kabc ] && cd kabc ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
137 ( [ -d korganizer ] && cd korganizer ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
138 ( [ -d kaddressbook ] && cd kaddressbook ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
139 ( [ -d kabc/plugins/file ] && cd kabc/plugins/file ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
140 ( [ -d kabc/plugins/dir ] && cd kabc/plugins/dir ; $(MAKE) -f $(MAKEFILE) $@; $(DEL_FILE) $(MAKEFILE); ) || true
141
142install: install_subdirs
143
144uninstall: uninstall_subdirs
145
146FORCE:
118 147
diff --git a/kabc/kabc.pro b/kabc/kabc.pro
index ea4bbb7..4a8d73a 100644
--- a/kabc/kabc.pro
+++ b/kabc/kabc.pro
@@ -1,214 +1,214 @@
1 TEMPLATE= lib 1 TEMPLATE= lib
2CONFIG += qt warn_on 2CONFIG += qt warn_on
3#release debug 3#release debug
4DESTDIR=../bin 4DESTDIR=../bin
5 5
6TARGET = microkabc 6TARGET = microkabc
7 7
8include( ../variables.pri ) 8include( ../variables.pri )
9 9
10INCLUDEPATH += . ./vcard/include ./vcard/include/generated ../microkde ../microkde/kdecore ../microkde/kio/kfile ../qtcompat ../microkde/kdeui 10INCLUDEPATH += . ./vcard/include ./vcard/include/generated ../microkde ../microkde/kdecore ../microkde/kio/kfile ../qtcompat ../microkde/kdeui
11 11
12#LIBS += -lmicrokde -lldap 12#LIBS += -lmicrokde -lldap
13LIBS += -L$(QPEDIR)/lib 13LIBS += -L$(QPEDIR)/lib
14DEFINES += KAB_EMBEDDED DESKTOP_VERSION 14DEFINES += KAB_EMBEDDED DESKTOP_VERSION
15unix : { 15unix : {
16 16
17OBJECTS_DIR = obj/unix 17OBJECTS_DIR = obj/unix
18MOC_DIR = moc/unix 18MOC_DIR = moc/unix
19} 19}
20win32: { 20win32: {
21DEFINES += _WIN32_ 21DEFINES += _WIN32_
22OBJECTS_DIR = obj/win 22OBJECTS_DIR = obj/win
23MOC_DIR = moc/win 23MOC_DIR = moc/win
24} 24}
25INTERFACES = \ 25INTERFACES = \
26 26
27 27
28HEADERS = \ 28HEADERS = \
29 resource.h \ 29 resource.h \
30 stdaddressbook.h \ 30 stdaddressbook.h \
31 agent.h \ 31 agent.h \
32 geo.h \ 32 geo.h \
33 key.h \ 33 key.h \
34 field.h \ 34 field.h \
35 plugin.h \ 35 plugin.h \
36 address.h \ 36 address.h \
37 addresseelist.h \ 37 addresseelist.h \
38formatfactory.h \ 38formatfactory.h \
39 formatplugin.h \ 39 formatplugin.h \
40 phonenumber.h \ 40 phonenumber.h \
41distributionlist.h \ 41distributionlist.h \
42distributionlistdialog.h \ 42distributionlistdialog.h \
43distributionlisteditor.h \ 43distributionlisteditor.h \
44vcardformatplugin.h \ 44vcardformatplugin.h \
45formats/binaryformat.h \
46formats/vcardformatplugin2.h \ 45formats/vcardformatplugin2.h \
47 picture.h \ 46 picture.h \
48 secrecy.h \ 47 secrecy.h \
49 sound.h \ 48 sound.h \
50 addressbook.h \ 49 addressbook.h \
51 timezone.h \ 50 timezone.h \
52 addressee.h \ 51 addressee.h \
53 addresseedialog.h \ 52 addresseedialog.h \
54 vcardconverter.h \ 53 vcardconverter.h \
55 vcard21parser.h \ 54 vcard21parser.h \
56 vcardformatimpl.h \ 55 vcardformatimpl.h \
57 plugins/file/resourcefile.h \ 56 plugins/file/resourcefile.h \
58 plugins/file/resourcefileconfig.h \ 57 plugins/file/resourcefileconfig.h \
59 plugins/dir/resourcedir.h \ 58 plugins/dir/resourcedir.h \
60 plugins/dir/resourcedirconfig.h \ 59 plugins/dir/resourcedirconfig.h \
61 vcardparser/vcardline.h \ 60 vcardparser/vcardline.h \
62 vcardparser/vcard.h \ 61 vcardparser/vcard.h \
63 vcardparser/vcardtool.h \ 62 vcardparser/vcardtool.h \
64 vcardparser/vcardparser.h \ 63 vcardparser/vcardparser.h \
65vcard/include/VCardAdrParam.h \ 64vcard/include/VCardAdrParam.h \
66vcard/include/VCardAdrValue.h \ 65vcard/include/VCardAdrValue.h \
67vcard/include/VCardAgentParam.h \ 66vcard/include/VCardAgentParam.h \
68vcard/include/VCardContentLine.h \ 67vcard/include/VCardContentLine.h \
69vcard/include/VCardDateParam.h \ 68vcard/include/VCardDateParam.h \
70vcard/include/VCardDateValue.h \ 69vcard/include/VCardDateValue.h \
71vcard/include/VCardEmailParam.h \ 70vcard/include/VCardEmailParam.h \
72vcard/include/VCardGeoValue.h \ 71vcard/include/VCardGeoValue.h \
73vcard/include/VCardGroup.h \ 72vcard/include/VCardGroup.h \
74vcard/include/VCardImageParam.h \ 73vcard/include/VCardImageParam.h \
75vcard/include/VCardImageValue.h \ 74vcard/include/VCardImageValue.h \
76vcard/include/VCardLangValue.h \ 75vcard/include/VCardLangValue.h \
77vcard/include/VCardNValue.h \ 76vcard/include/VCardNValue.h \
78vcard/include/VCardParam.h \ 77vcard/include/VCardParam.h \
79vcard/include/VCardPhoneNumberValue.h \ 78vcard/include/VCardPhoneNumberValue.h \
80vcard/include/VCardSourceParam.h \ 79vcard/include/VCardSourceParam.h \
81vcard/include/VCardTelParam.h \ 80vcard/include/VCardTelParam.h \
82vcard/include/VCardTextParam.h \ 81vcard/include/VCardTextParam.h \
83vcard/include/VCardTextNSParam.h \ 82vcard/include/VCardTextNSParam.h \
84vcard/include/VCardTextValue.h \ 83vcard/include/VCardTextValue.h \
85vcard/include/VCardTextBinParam.h \ 84vcard/include/VCardTextBinParam.h \
86vcard/include/VCardURIValue.h \ 85vcard/include/VCardURIValue.h \
87vcard/include/VCardVCard.h \ 86vcard/include/VCardVCard.h \
88vcard/include/VCardEntity.h \ 87vcard/include/VCardEntity.h \
89vcard/include/VCardValue.h \ 88vcard/include/VCardValue.h \
90vcard/include/VCardSoundValue.h \ 89vcard/include/VCardSoundValue.h \
91vcard/include/VCardAgentValue.h \ 90vcard/include/VCardAgentValue.h \
92vcard/include/VCardTelValue.h \ 91vcard/include/VCardTelValue.h \
93vcard/include/VCardTextBinValue.h \ 92vcard/include/VCardTextBinValue.h \
94vcard/include/VCardOrgValue.h \ 93vcard/include/VCardOrgValue.h \
95vcard/include/VCardUTCValue.h \ 94vcard/include/VCardUTCValue.h \
96vcard/include/VCardClassValue.h \ 95vcard/include/VCardClassValue.h \
97vcard/include/VCardFloatValue.h \ 96vcard/include/VCardFloatValue.h \
98vcard/include/VCardTextListValue.h \ 97vcard/include/VCardTextListValue.h \
99vcard/include/generated/AdrParam-generated.h \ 98vcard/include/generated/AdrParam-generated.h \
100vcard/include/generated/AdrValue-generated.h \ 99vcard/include/generated/AdrValue-generated.h \
101vcard/include/generated/AgentParam-generated.h \ 100vcard/include/generated/AgentParam-generated.h \
102vcard/include/generated/ContentLine-generated.h \ 101vcard/include/generated/ContentLine-generated.h \
103vcard/include/generated/DateParam-generated.h \ 102vcard/include/generated/DateParam-generated.h \
104vcard/include/generated/DateValue-generated.h \ 103vcard/include/generated/DateValue-generated.h \
105vcard/include/generated/EmailParam-generated.h \ 104vcard/include/generated/EmailParam-generated.h \
106vcard/include/generated/GeoValue-generated.h \ 105vcard/include/generated/GeoValue-generated.h \
107vcard/include/generated/Group-generated.h \ 106vcard/include/generated/Group-generated.h \
108vcard/include/generated/ImageParam-generated.h \ 107vcard/include/generated/ImageParam-generated.h \
109vcard/include/generated/ImageValue-generated.h \ 108vcard/include/generated/ImageValue-generated.h \
110vcard/include/generated/LangValue-generated.h \ 109vcard/include/generated/LangValue-generated.h \
111vcard/include/generated/NValue-generated.h \ 110vcard/include/generated/NValue-generated.h \
112vcard/include/generated/Param-generated.h \ 111vcard/include/generated/Param-generated.h \
113vcard/include/generated/PhoneNumberValue-generated.h \ 112vcard/include/generated/PhoneNumberValue-generated.h \
114vcard/include/generated/SourceParam-generated.h \ 113vcard/include/generated/SourceParam-generated.h \
115vcard/include/generated/TelParam-generated.h \ 114vcard/include/generated/TelParam-generated.h \
116vcard/include/generated/TextParam-generated.h \ 115vcard/include/generated/TextParam-generated.h \
117vcard/include/generated/TextNSParam-generated.h \ 116vcard/include/generated/TextNSParam-generated.h \
118vcard/include/generated/TextValue-generated.h \ 117vcard/include/generated/TextValue-generated.h \
119vcard/include/generated/TextBinParam-generated.h \ 118vcard/include/generated/TextBinParam-generated.h \
120vcard/include/generated/URIValue-generated.h \ 119vcard/include/generated/URIValue-generated.h \
121vcard/include/generated/VCard-generated.h \ 120vcard/include/generated/VCard-generated.h \
122vcard/include/generated/VCardEntity-generated.h \ 121vcard/include/generated/VCardEntity-generated.h \
123vcard/include/generated/Value-generated.h \ 122vcard/include/generated/Value-generated.h \
124vcard/include/generated/SoundValue-generated.h \ 123vcard/include/generated/SoundValue-generated.h \
125vcard/include/generated/AgentValue-generated.h \ 124vcard/include/generated/AgentValue-generated.h \
126vcard/include/generated/TelValue-generated.h \ 125vcard/include/generated/TelValue-generated.h \
127vcard/include/generated/TextBinValue-generated.h \ 126vcard/include/generated/TextBinValue-generated.h \
128vcard/include/generated/OrgValue-generated.h \ 127vcard/include/generated/OrgValue-generated.h \
129vcard/include/generated/UTCValue-generated.h \ 128vcard/include/generated/UTCValue-generated.h \
130vcard/include/generated/ClassValue-generated.h \ 129vcard/include/generated/ClassValue-generated.h \
131vcard/include/generated/FloatValue-generated.h \ 130vcard/include/generated/FloatValue-generated.h \
132vcard/include/generated/TextListValue-generated.h 131vcard/include/generated/TextListValue-generated.h
133 132
134 133
135# plugins/ldap/resourceldap.h \ 134# plugins/ldap/resourceldap.h \
136# plugins/ldap/resourceldapconfig.h \ 135# plugins/ldap/resourceldapconfig.h \
136#formats/binary/binaryformat.h \
137 137
138 138
139SOURCES = \ 139SOURCES = \
140distributionlist.cpp \ 140distributionlist.cpp \
141distributionlistdialog.cpp \ 141distributionlistdialog.cpp \
142distributionlisteditor.cpp \ 142distributionlisteditor.cpp \
143vcardformatplugin.cpp \ 143vcardformatplugin.cpp \
144formats/binaryformat.cpp \
145formats/vcardformatplugin2.cpp \ 144formats/vcardformatplugin2.cpp \
146formatfactory.cpp \ 145formatfactory.cpp \
147 resource.cpp \ 146 resource.cpp \
148 stdaddressbook.cpp \ 147 stdaddressbook.cpp \
149 plugin.cpp \ 148 plugin.cpp \
150 agent.cpp \ 149 agent.cpp \
151 geo.cpp \ 150 geo.cpp \
152 key.cpp \ 151 key.cpp \
153 field.cpp \ 152 field.cpp \
154 address.cpp \ 153 address.cpp \
155 phonenumber.cpp \ 154 phonenumber.cpp \
156 picture.cpp \ 155 picture.cpp \
157 secrecy.cpp \ 156 secrecy.cpp \
158 sound.cpp \ 157 sound.cpp \
159 addressbook.cpp \ 158 addressbook.cpp \
160 timezone.cpp \ 159 timezone.cpp \
161 addressee.cpp \ 160 addressee.cpp \
162 addresseelist.cpp \ 161 addresseelist.cpp \
163 addresseedialog.cpp \ 162 addresseedialog.cpp \
164 vcardconverter.cpp \ 163 vcardconverter.cpp \
165 vcard21parser.cpp \ 164 vcard21parser.cpp \
166 vcardformatimpl.cpp \ 165 vcardformatimpl.cpp \
167 plugins/file/resourcefile.cpp \ 166 plugins/file/resourcefile.cpp \
168 plugins/file/resourcefileconfig.cpp \ 167 plugins/file/resourcefileconfig.cpp \
169 plugins/dir/resourcedir.cpp \ 168 plugins/dir/resourcedir.cpp \
170 plugins/dir/resourcedirconfig.cpp \ 169 plugins/dir/resourcedirconfig.cpp \
171 vcardparser/vcardline.cpp \ 170 vcardparser/vcardline.cpp \
172 vcardparser/vcard.cpp \ 171 vcardparser/vcard.cpp \
173 vcardparser/vcardtool.cpp \ 172 vcardparser/vcardtool.cpp \
174 vcardparser/vcardparser.cpp \ 173 vcardparser/vcardparser.cpp \
175vcard/AdrParam.cpp \ 174vcard/AdrParam.cpp \
176vcard/AdrValue.cpp \ 175vcard/AdrValue.cpp \
177vcard/AgentParam.cpp \ 176vcard/AgentParam.cpp \
178vcard/ContentLine.cpp \ 177vcard/ContentLine.cpp \
179vcard/DateParam.cpp \ 178vcard/DateParam.cpp \
180vcard/DateValue.cpp \ 179vcard/DateValue.cpp \
181vcard/EmailParam.cpp \ 180vcard/EmailParam.cpp \
182vcard/Entity.cpp \ 181vcard/Entity.cpp \
183vcard/Enum.cpp \ 182vcard/Enum.cpp \
184vcard/GeoValue.cpp \ 183vcard/GeoValue.cpp \
185vcard/ImageParam.cpp \ 184vcard/ImageParam.cpp \
186vcard/ImageValue.cpp \ 185vcard/ImageValue.cpp \
187vcard/LangValue.cpp \ 186vcard/LangValue.cpp \
188vcard/NValue.cpp \ 187vcard/NValue.cpp \
189vcard/Param.cpp \ 188vcard/Param.cpp \
190vcard/PhoneNumberValue.cpp \ 189vcard/PhoneNumberValue.cpp \
191vcard/RToken.cpp \ 190vcard/RToken.cpp \
192vcard/SourceParam.cpp \ 191vcard/SourceParam.cpp \
193vcard/TelParam.cpp \ 192vcard/TelParam.cpp \
194vcard/TextParam.cpp \ 193vcard/TextParam.cpp \
195vcard/TextValue.cpp \ 194vcard/TextValue.cpp \
196vcard/TextBinParam.cpp \ 195vcard/TextBinParam.cpp \
197vcard/URIValue.cpp \ 196vcard/URIValue.cpp \
198vcard/VCardv.cpp \ 197vcard/VCardv.cpp \
199vcard/VCardEntity.cpp \ 198vcard/VCardEntity.cpp \
200vcard/Value.cpp \ 199vcard/Value.cpp \
201vcard/SoundValue.cpp \ 200vcard/SoundValue.cpp \
202vcard/AgentValue.cpp \ 201vcard/AgentValue.cpp \
203vcard/TelValue.cpp \ 202vcard/TelValue.cpp \
204vcard/TextBinValue.cpp \ 203vcard/TextBinValue.cpp \
205vcard/OrgValue.cpp \ 204vcard/OrgValue.cpp \
206vcard/UTCValue.cpp \ 205vcard/UTCValue.cpp \
207vcard/ClassValue.cpp \ 206vcard/ClassValue.cpp \
208vcard/FloatValue.cpp \ 207vcard/FloatValue.cpp \
209vcard/TextListValue.cpp 208vcard/TextListValue.cpp
210 209
211 210
212# plugins/ldap/resourceldap.cpp \ 211# plugins/ldap/resourceldap.cpp \
213# plugins/ldap/resourceldapconfig.cpp \ 212# plugins/ldap/resourceldapconfig.cpp \
214 213
214#formats/binary/binaryformat.cpp \
diff --git a/kabc/plugins/dir/dir.pro b/kabc/plugins/dir/dir.pro
new file mode 100644
index 0000000..3db201f
--- a/dev/null
+++ b/kabc/plugins/dir/dir.pro
@@ -0,0 +1,29 @@
1 TEMPLATE= lib
2CONFIG += qt warn_on release
3#release debug
4
5TARGET = microkabc_dir
6INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../qtcompat
7DESTDIR = ../../../bin
8#LIBS += -lmicrokde -lmicrokabc
9#LIBS += -L$(QPEDIR)/lib
10
11INTERFACES = \
12
13HEADERS = \
14 resourcedir.h \
15 resourcedirconfig.h
16
17SOURCES = \
18 resourcedir.cpp \
19 resourcedirconfig.cpp
20
21unix : {
22OBJECTS_DIR = obj/unix
23MOC_DIR = moc/unix
24}
25win32: {
26DEFINES += _WIN32_
27OBJECTS_DIR = obj/win
28MOC_DIR = moc/win
29} \ No newline at end of file
diff --git a/kabc/plugins/dir/resourcedir.cpp b/kabc/plugins/dir/resourcedir.cpp
index be19821..6ea2f4b 100644
--- a/kabc/plugins/dir/resourcedir.cpp
+++ b/kabc/plugins/dir/resourcedir.cpp
@@ -215,99 +215,101 @@ bool ResourceDir::save( Ticket *ticket )
215 continue; 215 continue;
216 } 216 }
217 217
218 mFormat->save( *it, &file ); 218 mFormat->save( *it, &file );
219 219
220 // mark as unchanged 220 // mark as unchanged
221 (*it).setChanged( false ); 221 (*it).setChanged( false );
222 222
223 file.close(); 223 file.close();
224 } 224 }
225 225
226 delete ticket; 226 delete ticket;
227 unlock( mPath ); 227 unlock( mPath );
228 228
229 return ok; 229 return ok;
230} 230}
231 231
232bool ResourceDir::lock( const QString &path ) 232bool ResourceDir::lock( const QString &path )
233{ 233{
234 kdDebug(5700) << "ResourceDir::lock()" << endl; 234 kdDebug(5700) << "ResourceDir::lock()" << endl;
235 235
236 QString p = path; 236 QString p = path;
237//US change the implementation how the lockfilename is getting created 237//US change the implementation how the lockfilename is getting created
238//US p.replace( QRegExp("/"), "_" ); 238//US p.replace( QRegExp("/"), "_" );
239//US QString lockName = locateLocal( "data", "kabc/lock/" + p + ".lock" ); 239//US QString lockName = locateLocal( "data", "kabc/lock/" + p + ".lock" );
240 KURL url(p); 240 KURL url(p);
241 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" ); 241 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
242 242
243 243
244 kdDebug(5700) << "-- lock name: " << lockName << endl; 244 kdDebug(5700) << "-- lock name: " << lockName << endl;
245 245
246 if ( QFile::exists( lockName ) ) return false; 246 if ( QFile::exists( lockName ) ) return false;
247 247
248 QString lockUniqueName; 248 QString lockUniqueName;
249 lockUniqueName = p + KApplication::randomString( 8 ); 249 lockUniqueName = p + KApplication::randomString( 8 );
250 250
251 url = lockUniqueName; 251 url = lockUniqueName;
252//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName ); 252//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName );
253 mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() ); 253 mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() );
254 254
255 kdDebug(5700) << "-- lock unique name: " << mLockUniqueName << endl; 255 kdDebug(5700) << "-- lock unique name: " << mLockUniqueName << endl;
256 256
257 // Create unique file 257 // Create unique file
258 QFile file( mLockUniqueName ); 258 QFile file( mLockUniqueName );
259 file.open( IO_WriteOnly ); 259 file.open( IO_WriteOnly );
260 file.close(); 260 file.close();
261 261
262 // Create lock file 262 // Create lock file
263 int result = ::link( QFile::encodeName( mLockUniqueName ), 263 int result = 0;
264#ifndef _WIN32_
265 result = ::link( QFile::encodeName( mLockUniqueName ),
264 QFile::encodeName( lockName ) ); 266 QFile::encodeName( lockName ) );
265 267#endif
266 if ( result == 0 ) { 268 if ( result == 0 ) {
267 addressBook()->emitAddressBookLocked(); 269 addressBook()->emitAddressBookLocked();
268 return true; 270 return true;
269 } 271 }
270 272
271 // TODO: check stat 273 // TODO: check stat
272 274
273 return false; 275 return false;
274} 276}
275 277
276void ResourceDir::unlock( const QString &path ) 278void ResourceDir::unlock( const QString &path )
277{ 279{
278 QString p = path; 280 QString p = path;
279//US change the implementation how the lockfilename is getting created 281//US change the implementation how the lockfilename is getting created
280//US p.replace( QRegExp( "/" ), "_" ); 282//US p.replace( QRegExp( "/" ), "_" );
281//US QString lockName = locate( "data", "kabc/lock/" + p + ".lock" ); 283//US QString lockName = locate( "data", "kabc/lock/" + p + ".lock" );
282 KURL url(p); 284 KURL url(p);
283 QString lockName = locate( "data", "kabc/lock/" + url.fileName() + ".lock" ); 285 QString lockName = locate( "data", "kabc/lock/" + url.fileName() + ".lock" );
284 286
285 ::unlink( QFile::encodeName( lockName ) ); 287 ::unlink( QFile::encodeName( lockName ) );
286 QFile::remove( mLockUniqueName ); 288 QFile::remove( mLockUniqueName );
287 addressBook()->emitAddressBookUnlocked(); 289 addressBook()->emitAddressBookUnlocked();
288} 290}
289 291
290void ResourceDir::setPath( const QString &path ) 292void ResourceDir::setPath( const QString &path )
291{ 293{
292/*US ToDo: no synchronization so far. Has to be changed in the future 294/*US ToDo: no synchronization so far. Has to be changed in the future
293 mDirWatch.stopScan(); 295 mDirWatch.stopScan();
294 mDirWatch.removeDir( mPath ); 296 mDirWatch.removeDir( mPath );
295*/ 297*/
296 mPath = path; 298 mPath = path;
297 299
298/*US ToDo: no synchronization so far. Has to be changed in the future 300/*US ToDo: no synchronization so far. Has to be changed in the future
299 mDirWatch.addDir( mPath, true ); 301 mDirWatch.addDir( mPath, true );
300 mDirWatch.startScan(); 302 mDirWatch.startScan();
301*/ 303*/
302 304
303//US simulate KDirWatch event 305//US simulate KDirWatch event
304 pathChanged(); 306 pathChanged();
305 307
306} 308}
307 309
308QString ResourceDir::path() const 310QString ResourceDir::path() const
309{ 311{
310 return mPath; 312 return mPath;
311} 313}
312 314
313void ResourceDir::setFormat( const QString &format ) 315void ResourceDir::setFormat( const QString &format )
diff --git a/kabc/plugins/file/file.pro b/kabc/plugins/file/file.pro
new file mode 100644
index 0000000..a5ade93
--- a/dev/null
+++ b/kabc/plugins/file/file.pro
@@ -0,0 +1,30 @@
1 TEMPLATE= lib
2CONFIG += qt warn_on release
3#release debug
4
5TARGET = microkabc_file
6INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../qtcompat
7
8DESTDIR = ../../../bin
9#LIBS += -lmicrokde -lmicrokabc
10#LIBS += -L$(QPEDIR)/lib
11
12INTERFACES = \
13
14HEADERS = \
15 resourcefile.h \
16 resourcefileconfig.h
17
18SOURCES = \
19 resourcefile.cpp \
20 resourcefileconfig.cpp
21
22unix : {
23OBJECTS_DIR = obj/unix
24MOC_DIR = moc/unix
25}
26win32: {
27DEFINES += _WIN32_
28OBJECTS_DIR = obj/win
29MOC_DIR = moc/win
30} \ No newline at end of file
diff --git a/kabc/plugins/file/resourcefile.cpp b/kabc/plugins/file/resourcefile.cpp
index 3920f69..4b4c935 100644
--- a/kabc/plugins/file/resourcefile.cpp
+++ b/kabc/plugins/file/resourcefile.cpp
@@ -241,99 +241,101 @@ bool ResourceFile::save( Ticket *ticket )
241 } 241 }
242 else { 242 else {
243 243
244 } 244 }
245 245
246 if ( !ok ) 246 if ( !ok )
247 addressBook()->error( i18n( "Unable to save file '%1'." ).arg( mFileName ) ); 247 addressBook()->error( i18n( "Unable to save file '%1'." ).arg( mFileName ) );
248 248
249 delete ticket; 249 delete ticket;
250 unlock( mFileName ); 250 unlock( mFileName );
251 251
252 return ok; 252 return ok;
253 253
254 qDebug("ResourceFile::save has to be changed"); 254 qDebug("ResourceFile::save has to be changed");
255 return true; 255 return true;
256} 256}
257 257
258bool ResourceFile::lock( const QString &fileName ) 258bool ResourceFile::lock( const QString &fileName )
259{ 259{
260 260
261 261
262 QString fn = fileName; 262 QString fn = fileName;
263 263
264//US change the implementation how the lockfilename is getting created 264//US change the implementation how the lockfilename is getting created
265//US fn.replace( QRegExp("/"), "_" ); 265//US fn.replace( QRegExp("/"), "_" );
266//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" ); 266//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" );
267 267
268 KURL url(fn); 268 KURL url(fn);
269 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" ); 269 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
270 270
271 271
272 272
273 if (QFile::exists( lockName )) return false; 273 if (QFile::exists( lockName )) return false;
274 274
275 QString lockUniqueName; 275 QString lockUniqueName;
276 lockUniqueName = fn + KApplication::randomString( 8 ); 276 lockUniqueName = fn + KApplication::randomString( 8 );
277 277
278 url = lockUniqueName; 278 url = lockUniqueName;
279//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName ); 279//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName );
280 mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() ); 280 mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() );
281 kdDebug(5700) << "-- lock unique name: " << mLockUniqueName << endl; 281 kdDebug(5700) << "-- lock unique name: " << mLockUniqueName << endl;
282 282
283 // Create unique file 283 // Create unique file
284 QFile file( mLockUniqueName ); 284 QFile file( mLockUniqueName );
285 file.open( IO_WriteOnly ); 285 file.open( IO_WriteOnly );
286 file.close(); 286 file.close();
287 287
288 // Create lock file 288 // Create lock file
289 int result = ::link( QFile::encodeName( mLockUniqueName ), 289 int result = 0;
290#ifndef _WIN32_
291 result = ::link( QFile::encodeName( mLockUniqueName ),
290 QFile::encodeName( lockName ) ); 292 QFile::encodeName( lockName ) );
291 293#endif
292 if ( result == 0 ) { 294 if ( result == 0 ) {
293 addressBook()->emitAddressBookLocked(); 295 addressBook()->emitAddressBookLocked();
294 return true; 296 return true;
295 } 297 }
296 298
297 // TODO: check stat 299 // TODO: check stat
298 300
299 return false; 301 return false;
300} 302}
301 303
302void ResourceFile::unlock( const QString &fileName ) 304void ResourceFile::unlock( const QString &fileName )
303{ 305{
304 QString fn = fileName; 306 QString fn = fileName;
305//US change the implementation how the lockfilename is getting created 307//US change the implementation how the lockfilename is getting created
306//US fn.replace( QRegExp( "/" ), "_" ); 308//US fn.replace( QRegExp( "/" ), "_" );
307//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" ); 309//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" );
308//US QString lockName = fn + ".lock"; 310//US QString lockName = fn + ".lock";
309 KURL url(fn); 311 KURL url(fn);
310 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" ); 312 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
311 313
312 QFile::remove( lockName ); 314 QFile::remove( lockName );
313 QFile::remove( mLockUniqueName ); 315 QFile::remove( mLockUniqueName );
314 addressBook()->emitAddressBookUnlocked(); 316 addressBook()->emitAddressBookUnlocked();
315} 317}
316 318
317void ResourceFile::setFileName( const QString &fileName ) 319void ResourceFile::setFileName( const QString &fileName )
318{ 320{
319/*US ToDo: no synchronization so far. Has to be changed in the future 321/*US ToDo: no synchronization so far. Has to be changed in the future
320 mDirWatch.stopScan(); 322 mDirWatch.stopScan();
321 mDirWatch.removeFile( mFileName ); 323 mDirWatch.removeFile( mFileName );
322*/ 324*/
323 mFileName = fileName; 325 mFileName = fileName;
324 326
325 327
326/*US ToDo: no synchronization so far. Has to be changed in the future 328/*US ToDo: no synchronization so far. Has to be changed in the future
327 mDirWatch.addFile( mFileName ); 329 mDirWatch.addFile( mFileName );
328 mDirWatch.startScan(); 330 mDirWatch.startScan();
329*/ 331*/
330//US simulate KDirWatch event 332//US simulate KDirWatch event
331 fileChanged(); 333 fileChanged();
332} 334}
333 335
334QString ResourceFile::fileName() const 336QString ResourceFile::fileName() const
335{ 337{
336 return mFileName; 338 return mFileName;
337} 339}
338 340
339void ResourceFile::setFormat( const QString &format ) 341void ResourceFile::setFormat( const QString &format )
diff --git a/kaddressbook/kcmconfigs/addresseewidget.cpp b/kaddressbook/kcmconfigs/addresseewidget.cpp
index f84b2ba..eb5bdd9 100644
--- a/kaddressbook/kcmconfigs/addresseewidget.cpp
+++ b/kaddressbook/kcmconfigs/addresseewidget.cpp
@@ -1,76 +1,77 @@
1/* 1/*
2 This file is part of KAddressBook. 2 This file is part of KAddressBook.
3 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org> 3 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#include <qgroupbox.h> 24#include <qgroupbox.h>
25#include <qlabel.h> 25#include <qlabel.h>
26#include <qlayout.h> 26#include <qlayout.h>
27#include <qlistbox.h> 27#include <qlistbox.h>
28#include <qpushbutton.h> 28#include <qpushbutton.h>
29#include <qapplication.h>
29 30
30#include <kbuttonbox.h> 31#include <kbuttonbox.h>
31#include <kcombobox.h> 32#include <kcombobox.h>
32#include <kconfig.h> 33#include <kconfig.h>
33#include <kdialog.h> 34#include <kdialog.h>
34#include <klocale.h> 35#include <klocale.h>
35#include <kglobal.h> 36#include <kglobal.h>
36#include <klineedit.h> 37#include <klineedit.h>
37#include <kstandarddirs.h> 38#include <kstandarddirs.h>
38 39
39#include "addresseewidget.h" 40#include "addresseewidget.h"
40 41
41NamePartWidget::NamePartWidget( const QString &title, QWidget *parent, 42NamePartWidget::NamePartWidget( const QString &title, QWidget *parent,
42 const char *name ) 43 const char *name )
43 : QWidget( parent, name ) 44 : QWidget( parent, name )
44{ 45{
45 if (KGlobal::getOrientation() == KGlobal::Portrait) 46 if (KGlobal::getOrientation() == KGlobal::Portrait)
46 { 47 {
47 QGridLayout* layout = new QGridLayout( this, 1, 1, KDialog::marginHintSmall(), 48 QGridLayout* layout = new QGridLayout( this, 1, 1, KDialog::marginHintSmall(),
48 KDialog::spacingHintSmall() ); 49 KDialog::spacingHintSmall() );
49 50
50 QLabel *label = new QLabel( i18n( title ), this ); 51 QLabel *label = new QLabel( i18n( title ), this );
51 layout->addWidget( label, 0, 1 ); 52 layout->addWidget( label, 0, 1 );
52 53
53 mBox = new QListBox( this ); 54 mBox = new QListBox( this );
54 mBox->setMaximumSize(70, 70); 55 mBox->setMaximumSize(70, 70);
55 layout->addMultiCellWidget( mBox, 0, 1, 0, 0 ); 56 layout->addMultiCellWidget( mBox, 0, 1, 0, 0 );
56 57
57 KButtonBox *bbox = new KButtonBox( this, Qt::Vertical ); 58 KButtonBox *bbox = new KButtonBox( this, Qt::Vertical );
58 mAddButton = bbox->addButton( i18n( "Add" ), this, SLOT( add() ) ); 59 mAddButton = bbox->addButton( i18n( "Add" ), this, SLOT( add() ) );
59 mRemoveButton = bbox->addButton( i18n( "Rem" ), this, SLOT( remove() ) ); 60 mRemoveButton = bbox->addButton( i18n( "Rem" ), this, SLOT( remove() ) );
60 bbox->layout(); 61 bbox->layout();
61 layout->addMultiCellWidget( bbox, 0, 1, 2,2); 62 layout->addMultiCellWidget( bbox, 0, 1, 2,2);
62 63
63 mEdit = new KLineEdit( this ); 64 mEdit = new KLineEdit( this );
64 layout->addWidget( mEdit, 1, 1 ); 65 layout->addWidget( mEdit, 1, 1 );
65 //mEdit->setMinimumWidth(50); 66 //mEdit->setMinimumWidth(50);
66 67
67// layout->addWidget( group ); 68// layout->addWidget( group );
68 69
69 } 70 }
70 else 71 else
71 { 72 {
72 QHBoxLayout *layout = new QHBoxLayout( this ); 73 QHBoxLayout *layout = new QHBoxLayout( this );
73 74
74 QGroupBox *group = new QGroupBox( 0, Qt::Vertical, title, this ); 75 QGroupBox *group = new QGroupBox( 0, Qt::Vertical, title, this );
75 QGridLayout *groupLayout = new QGridLayout( group->layout(), 2, 2, 76 QGridLayout *groupLayout = new QGridLayout( group->layout(), 2, 2,
76 KDialog::spacingHint() ); 77 KDialog::spacingHint() );
diff --git a/kaddressbook/mainembedded.cpp b/kaddressbook/mainembedded.cpp
index dce6a88..cf1fd3e 100644
--- a/kaddressbook/mainembedded.cpp
+++ b/kaddressbook/mainembedded.cpp
@@ -1,109 +1,110 @@
1#ifndef DESKTOP_VERSION 1#ifndef DESKTOP_VERSION
2#include <qpe/qpeapplication.h> 2#include <qpe/qpeapplication.h>
3#include <stdlib.h> 3#include <stdlib.h>
4#else 4#else
5#include <qapplication.h> 5#include <qapplication.h>
6#include <qwindowsstyle.h> 6#include <qwindowsstyle.h>
7#include <qplatinumstyle.h> 7#include <qplatinumstyle.h>
8#include <qmainwindow.h> 8#include <qmainwindow.h>
9#endif 9#endif
10 10
11#include <kstandarddirs.h> 11#include <kstandarddirs.h>
12#include <kglobal.h> 12#include <kglobal.h>
13#include <stdio.h> 13#include <stdio.h>
14#include <qdir.h> 14#include <qdir.h>
15#include "kaddressbookmain.h" 15#include "kaddressbookmain.h"
16 16
17int main( int argc, char **argv ) 17int main( int argc, char **argv )
18{ 18{
19#ifndef DESKTOP_VERSION 19#ifndef DESKTOP_VERSION
20 QPEApplication a( argc, argv ); 20 QPEApplication a( argc, argv );
21 a.setKeepRunning (); 21 a.setKeepRunning ();
22#else 22#else
23 QApplication a( argc, argv ); 23 QApplication a( argc, argv );
24 QApplication::setStyle( new QPlatinumStyle ()); 24 QApplication::setStyle( new QPlatinumStyle ());
25#endif 25#endif
26 26
27 bool exitHelp = false; 27 bool exitHelp = false;
28 if ( argc > 1 ) { 28 if ( argc > 1 ) {
29 QString command = argv[1]; 29 QString command = argv[1];
30 if ( command == "-help" ){ 30 if ( command == "-help" ){
31 printf("KA/E command line commands:\n"); 31 printf("KA/E command line commands:\n");
32 printf(" no command: Start KA/E in usual way\n"); 32 printf(" no command: Start KA/E in usual way\n");
33 printf(" -help: This output\n"); 33 printf(" -help: This output\n");
34 printf(" KA/E is exiting now. Bye!\n"); 34 printf(" KA/E is exiting now. Bye!\n");
35 exitHelp = true; 35 exitHelp = true;
36 } 36 }
37 } 37 }
38 if ( ! exitHelp ) { 38 if ( ! exitHelp ) {
39 39
40 KGlobal::setAppName( "kaddressbook" ); 40 KGlobal::setAppName( "kaddressbook" );
41#ifndef DESKTOP_VERSION 41#ifndef DESKTOP_VERSION
42 if ( QApplication::desktop()->width() > 320 ) 42 if ( QApplication::desktop()->width() > 320 )
43 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons22/"); 43 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons22/");
44 else 44 else
45 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons16/"); 45 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons16/");
46#else 46#else
47 QString fileName ; 47 QString fileName ;
48 fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/"; 48 fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/icons22/";
49 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName)); 49 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName));
50 QApplication::addLibraryPath ( qApp->applicationDirPath () );
50 51
51#endif 52#endif
52 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "kaddressbook"))); 53 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "kaddressbook")));
53 KAddressBookMain m ; 54 KAddressBookMain m ;
54//US MainWindow m; 55//US MainWindow m;
55//US QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& ))); 56//US QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& )));
56 57
57#ifndef DESKTOP_VERSION 58#ifndef DESKTOP_VERSION
58 a.showMainWidget( &m ); 59 a.showMainWidget( &m );
59#else 60#else
60 a.setMainWidget(m ); 61 a.setMainWidget( &m );
61 m->show(); 62 m.show();
62#endif 63#endif
63 a.exec(); 64 a.exec();
64 65
65 } 66 }
66 qDebug("KA: Bye! "); 67 qDebug("KA: Bye! ");
67} 68}
68 69
69/* 70/*
70#include <stdlib.h> 71#include <stdlib.h>
71 72
72#include <qstring.h> 73#include <qstring.h>
73 74
74#include <kabc/stdaddressbook.h> 75#include <kabc/stdaddressbook.h>
75#include <kaboutdata.h> 76#include <kaboutdata.h>
76#include <kcmdlineargs.h> 77#include <kcmdlineargs.h>
77#include <kcrash.h> 78#include <kcrash.h>
78#include <kdebug.h> 79#include <kdebug.h>
79#include <klocale.h> 80#include <klocale.h>
80#include <kstartupinfo.h> 81#include <kstartupinfo.h>
81#include <kuniqueapplication.h> 82#include <kuniqueapplication.h>
82#include <kwin.h> 83#include <kwin.h>
83 84
84#include "kaddressbookmain.h" 85#include "kaddressbookmain.h"
85#include "kabcore.h" 86#include "kabcore.h"
86 87
87extern "C" { 88extern "C" {
88 89
89void crashHandler( int ) 90void crashHandler( int )
90{ 91{
91 KABC::StdAddressBook::handleCrash(); 92 KABC::StdAddressBook::handleCrash();
92 ::exit( 0 ); 93 ::exit( 0 );
93} 94}
94 95
95} 96}
96 97
97class KAddressBookApp : public KUniqueApplication { 98class KAddressBookApp : public KUniqueApplication {
98 public: 99 public:
99 KAddressBookApp() : mMainWin( 0 ) {} 100 KAddressBookApp() : mMainWin( 0 ) {}
100 ~KAddressBookApp() {} 101 ~KAddressBookApp() {}
101 102
102 int newInstance(); 103 int newInstance();
103 104
104 private: 105 private:
105 KAddressBookMain *mMainWin; 106 KAddressBookMain *mMainWin;
106}; 107};
107 108
108int KAddressBookApp::newInstance() 109int KAddressBookApp::newInstance()
109{ 110{
diff --git a/kopi-desktop.pro b/kopi-desktop.pro
index 1a5fabd..b255756 100644
--- a/kopi-desktop.pro
+++ b/kopi-desktop.pro
@@ -1,6 +1,6 @@
1 1
2 2
3TEMPLATE = subdirs 3TEMPLATE = subdirs
4SUBDIRS = libical libkcal microkde libkdepim kabc korganizer kaddressbook 4SUBDIRS = libical libkcal microkde libkdepim kabc korganizer kaddressbook kabc/plugins/file kabc/plugins/dir
5#kalarmd 5#kalarmd
6 6
diff --git a/kopiemail.control b/kopiemail.control
index 3d563f0..7a93a1b 100644
--- a/kopiemail.control
+++ b/kopiemail.control
@@ -1,14 +1,14 @@
1Files: bin/ompi apps/Pim/kmicromail.desktop pics/kdepim/kmicromail/* lib/libssl* lib/libcrypto.* lib/libkmicro* 1Files: bin/ompi apps/Pim/kmicromail.desktop pics/kdepim/kmicromail/* lib/libssl* lib/libcrypto.* lib/libkmicro*
2 2
3Priority: optional 3Priority: optional
4Section: qpe/pim 4Section: qpe/pim
5Maintainer: Lutz Rogowski <lutz@pi-sync.net> 5Maintainer: Lutz Rogowski <lutz@pi-sync.net>
6Architecture: arm 6Architecture: arm
7Version: 1.9.2a 7Version: 1.9.2b
8License: GPL 8License: GPL
9Depends: lib/libmicrokde.so 9Depends: lib/libmicrokde.so
10Description: KOrganizer/Pi and Kaddressbook/Pi 10Description: KOrganizer/Pi and Kaddressbook/Pi
11 The embedded version of KOrganizer/Platform-independend, 11 The embedded version of KOrganizer/Platform-independend,
12 the KDE calendar and scheduling program 12 the KDE calendar and scheduling program
13 optimized for 640x480 and 320x240 resolution 13 optimized for 640x480 and 320x240 resolution
14 on Zaurus PDA 14 on Zaurus PDA
diff --git a/microkde/kdecore/klibloader.cpp b/microkde/kdecore/klibloader.cpp
index c07d50f..c091e05 100644
--- a/microkde/kdecore/klibloader.cpp
+++ b/microkde/kdecore/klibloader.cpp
@@ -1,98 +1,95 @@
1/* This file is part of the KDE libraries 1/* This file is part of the KDE libraries
2 Copyright (C) 1999 Torben Weis <weis@kde.org> 2 Copyright (C) 1999 Torben Weis <weis@kde.org>
3 Copyright (C) 2000 Michael Matz <matz@kde.org> 3 Copyright (C) 2000 Michael Matz <matz@kde.org>
4 4
5 This library is free software; you can redistribute it and/or 5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public 6 modify it under the terms of the GNU Library General Public
7 License version 2 as published by the Free Software Foundation. 7 License version 2 as published by the Free Software Foundation.
8 8
9 This library is distributed in the hope that it will be useful, 9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details. 12 Library General Public License for more details.
13 13
14 You should have received a copy of the GNU Library General Public License 14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to 15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 16 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 Boston, MA 02111-1307, USA. 17 Boston, MA 02111-1307, USA.
18*/ 18*/
19//US #include <config.h> 19//US #include <config.h>
20#include <qclipboard.h> 20#include <qclipboard.h>
21#include <qfile.h> 21#include <qfile.h>
22#include <qtimer.h> 22#include <qtimer.h>
23#include <qobjectdict.h> 23#include <qobjectdict.h>
24#include <qwidgetlist.h> 24#include <qwidgetlist.h>
25#include <qwidget.h> 25#include <qwidget.h>
26 26
27#include "kapplication.h" 27#include "kapplication.h"
28#include "klibloader.h" 28#include "klibloader.h"
29#include "kstandarddirs.h" 29#include "kstandarddirs.h"
30#include "kdebug.h" 30#include "kdebug.h"
31#include "klocale.h" 31#include "klocale.h"
32 32
33/*US 33/*US
34#ifndef NDEBUG 34#ifndef NDEBUG
35#include "ltdl.h" 35#include "ltdl.h"
36#endif 36#endif
37*/ 37*/
38 38
39//US do everything through qlibrary 39//US do everything through qlibrary
40#ifndef DESKTOP_VERSION 40#ifndef DESKTOP_VERSION
41#include <qpe/qpeapplication.h> 41#include <qpe/qpeapplication.h>
42#include <qtopia/qlibrary.h> 42#include <qtopia/qlibrary.h>
43#else
44#include <qlibrary.h>
43#endif 45#endif
44 46
45/*US 47
46#ifdef Q_WS_X11
47#include <X11/Xlib.h>
48#include <X11/Xatom.h>
49#endif
50*/
51template class QAsciiDict<KLibrary>; 48template class QAsciiDict<KLibrary>;
52 49
53#include <stdlib.h> //getenv 50#include <stdlib.h> //getenv
54 51
55/*US 52/*US
56#if HAVE_DLFCN_H 53#if HAVE_DLFCN_H
57# include <dlfcn.h> 54# include <dlfcn.h>
58#endif 55#endif
59 56
60#ifdef RTLD_GLOBAL 57#ifdef RTLD_GLOBAL
61# define LT_GLOBAL RTLD_GLOBAL 58# define LT_GLOBAL RTLD_GLOBAL
62#else 59#else
63# ifdef DL_GLOBAL 60# ifdef DL_GLOBAL
64# define LT_GLOBAL DL_GLOBAL 61# define LT_GLOBAL DL_GLOBAL
65# endif 62# endif
66#endif 63#endif
67#ifndef LT_GLOBAL 64#ifndef LT_GLOBAL
68# define LT_GLOBAL 0 65# define LT_GLOBAL 0
69#endif 66#endif
70*/ 67*/
71 68
72/*US 69/*US
73extern "C" { 70extern "C" {
74extern int lt_dlopen_flag; 71extern int lt_dlopen_flag;
75} 72}
76*/ 73*/
77 74
78KLibFactory::KLibFactory( QObject* parent, const char* name ) 75KLibFactory::KLibFactory( QObject* parent, const char* name )
79 : QObject( parent, name ) 76 : QObject( parent, name )
80{ 77{
81} 78}
82 79
83KLibFactory::~KLibFactory() 80KLibFactory::~KLibFactory()
84{ 81{
85// kdDebug(150) << "Deleting KLibFactory " << this << endl; 82// kdDebug(150) << "Deleting KLibFactory " << this << endl;
86} 83}
87 84
88QObject* KLibFactory::create( QObject* parent, const char* name, const char* classname, const QStringList &args ) 85QObject* KLibFactory::create( QObject* parent, const char* name, const char* classname, const QStringList &args )
89{ 86{
90 QObject* obj = createObject( parent, name, classname, args ); 87 QObject* obj = createObject( parent, name, classname, args );
91 if ( obj ) 88 if ( obj )
92 emit objectCreated( obj ); 89 emit objectCreated( obj );
93 return obj; 90 return obj;
94} 91}
95 92
96 93
97QObject* KLibFactory::createObject( QObject*, const char*, const char*, const QStringList &) 94QObject* KLibFactory::createObject( QObject*, const char*, const char*, const QStringList &)
98{ 95{
@@ -147,97 +144,96 @@ QString KLibrary::name() const
147 144
148QString KLibrary::fileName() const 145QString KLibrary::fileName() const
149{ 146{
150 return m_filename; 147 return m_filename;
151} 148}
152 149
153KLibFactory* KLibrary::factory() 150KLibFactory* KLibrary::factory()
154{ 151{
155 if ( m_factory ) 152 if ( m_factory )
156 return m_factory; 153 return m_factory;
157 154
158 QCString symname; 155 QCString symname;
159 symname.sprintf("init_%s", name().latin1() ); 156 symname.sprintf("init_%s", name().latin1() );
160 157
161 void* sym = symbol( symname ); 158 void* sym = symbol( symname );
162 if ( !sym ) 159 if ( !sym )
163 { 160 {
164 qDebug("KLibrary: The library %s does not offer an %s function", name().latin1(), symname.data()); 161 qDebug("KLibrary: The library %s does not offer an %s function", name().latin1(), symname.data());
165#ifndef NDEBUG 162#ifndef NDEBUG
166//US qDebug("KLibrary: errorcode: %s", lt_dlerror()); 163//US qDebug("KLibrary: errorcode: %s", lt_dlerror());
167#endif 164#endif
168 kdWarning(150) << "KLibrary: The library " << name().latin1() << " does not offer an init_" << name().latin1() << " function" << endl; 165 kdWarning(150) << "KLibrary: The library " << name().latin1() << " does not offer an init_" << name().latin1() << " function" << endl;
169 return 0; 166 return 0;
170 } 167 }
171 168
172 typedef KLibFactory* (*t_func)(); 169 typedef KLibFactory* (*t_func)();
173 t_func func = (t_func)sym; 170 t_func func = (t_func)sym;
174 m_factory = func(); 171 m_factory = func();
175 172
176 if( !m_factory ) 173 if( !m_factory )
177 { 174 {
178 kdWarning(150) << "KLibrary: The library " << name() << " does not offer a KDE compatible factory" << endl; 175 kdWarning(150) << "KLibrary: The library " << name() << " does not offer a KDE compatible factory" << endl;
179 return 0; 176 return 0;
180 } 177 }
181 178
182 connect( m_factory, SIGNAL( objectCreated( QObject * ) ), 179 connect( m_factory, SIGNAL( objectCreated( QObject * ) ),
183 this, SLOT( slotObjectCreated( QObject * ) ) ); 180 this, SLOT( slotObjectCreated( QObject * ) ) );
184 181
185 return m_factory; 182 return m_factory;
186} 183}
187 184
188void* KLibrary::symbol( const char* symname ) const 185void* KLibrary::symbol( const char* symname ) const
189{ 186{
190//US void* sym = lt_dlsym( (lt_dlhandle) m_handle, symname ); 187//US void* sym = lt_dlsym( (lt_dlhandle) m_handle, symname );
191 void* sym = m_handle->resolve( symname ); 188 void* sym = m_handle->resolve( symname );
192 if ( !sym ) 189 if ( !sym )
193 { 190 {
194//US kdWarning(150) << "KLibrary: " << lt_dlerror() << endl; 191//US kdWarning(150) << "KLibrary: " << lt_dlerror() << endl;
195 kdWarning(150) << "KLibrary: " << m_libname << ", symbol:" << symname << " not found " << endl;
196 return 0; 192 return 0;
197 } 193 }
198 194
199 return sym; 195 return sym;
200} 196}
201 197
202bool KLibrary::hasSymbol( const char* symname ) const 198bool KLibrary::hasSymbol( const char* symname ) const
203{ 199{
204//US void* sym = lt_dlsym( (lt_dlhandle) m_handle, symname ); 200//US void* sym = lt_dlsym( (lt_dlhandle) m_handle, symname );
205 void* sym = m_handle->resolve( symname ); 201 void* sym = m_handle->resolve( symname );
206 return (sym != 0L ); 202 return (sym != 0L );
207} 203}
208 204
209void KLibrary::unload() const 205void KLibrary::unload() const
210{ 206{
211 if (KLibLoader::s_self) 207 if (KLibLoader::s_self)
212 KLibLoader::s_self->unloadLibrary(QFile::encodeName(name())); 208 KLibLoader::s_self->unloadLibrary(QFile::encodeName(name()));
213} 209}
214 210
215void KLibrary::slotObjectCreated( QObject *obj ) 211void KLibrary::slotObjectCreated( QObject *obj )
216{ 212{
217 if ( !obj ) 213 if ( !obj )
218 return; 214 return;
219 215
220 if ( m_timer && m_timer->isActive() ) 216 if ( m_timer && m_timer->isActive() )
221 m_timer->stop(); 217 m_timer->stop();
222 218
223 if ( m_objs.containsRef( obj ) ) 219 if ( m_objs.containsRef( obj ) )
224 return; // we know this object already 220 return; // we know this object already
225 221
226 connect( obj, SIGNAL( destroyed() ), 222 connect( obj, SIGNAL( destroyed() ),
227 this, SLOT( slotObjectDestroyed() ) ); 223 this, SLOT( slotObjectDestroyed() ) );
228 224
229 m_objs.append( obj ); 225 m_objs.append( obj );
230} 226}
231 227
232void KLibrary::slotObjectDestroyed() 228void KLibrary::slotObjectDestroyed()
233{ 229{
234 m_objs.removeRef( sender() ); 230 m_objs.removeRef( sender() );
235 231
236 if ( m_objs.count() == 0 ) 232 if ( m_objs.count() == 0 )
237 { 233 {
238// kdDebug(150) << "KLibrary: shutdown timer for " << name() << " started!" 234// kdDebug(150) << "KLibrary: shutdown timer for " << name() << " started!"
239// << endl; 235// << endl;
240 236
241 if ( !m_timer ) 237 if ( !m_timer )
242 { 238 {
243 m_timer = new QTimer( this, "klibrary_shutdown_timer" ); 239 m_timer = new QTimer( this, "klibrary_shutdown_timer" );
@@ -432,98 +428,101 @@ KLibrary* KLibLoader::globalLibrary( const char *name )
432KLibrary *tmp; 428KLibrary *tmp;
433/*US 429/*US
434int olt_dlopen_flag = lt_dlopen_flag; 430int olt_dlopen_flag = lt_dlopen_flag;
435 431
436 lt_dlopen_flag |= LT_GLOBAL; 432 lt_dlopen_flag |= LT_GLOBAL;
437 kdDebug(150) << "Loading the next library global with flag " 433 kdDebug(150) << "Loading the next library global with flag "
438 << lt_dlopen_flag 434 << lt_dlopen_flag
439 << "." << endl; 435 << "." << endl;
440*/ 436*/
441 tmp = library(name); 437 tmp = library(name);
442/*US 438/*US
443 lt_dlopen_flag = olt_dlopen_flag; 439 lt_dlopen_flag = olt_dlopen_flag;
444*/ 440*/
445return tmp; 441return tmp;
446} 442}
447 443
448 444
449KLibrary* KLibLoader::library( const char *name ) 445KLibrary* KLibLoader::library( const char *name )
450{ 446{
451 if (!name) 447 if (!name)
452 return 0; 448 return 0;
453 449
454 KLibWrapPrivate* wrap = m_libs[name]; 450 KLibWrapPrivate* wrap = m_libs[name];
455 if (wrap) { 451 if (wrap) {
456 /* Nothing to do to load the library. */ 452 /* Nothing to do to load the library. */
457 wrap->ref_count++; 453 wrap->ref_count++;
458 return wrap->lib; 454 return wrap->lib;
459 } 455 }
460 456
461 /* Test if this library was loaded at some time, but got 457 /* Test if this library was loaded at some time, but got
462 unloaded meanwhile, whithout being dlclose()'ed. */ 458 unloaded meanwhile, whithout being dlclose()'ed. */
463 QPtrListIterator<KLibWrapPrivate> it(d->loaded_stack); 459 QPtrListIterator<KLibWrapPrivate> it(d->loaded_stack);
464 for (; it.current(); ++it) { 460 for (; it.current(); ++it) {
465 if (it.current()->name == name) 461 if (it.current()->name == name)
466 wrap = it.current(); 462 wrap = it.current();
467 } 463 }
468 464
469 if (wrap) { 465 if (wrap) {
470 d->pending_close.removeRef(wrap); 466 d->pending_close.removeRef(wrap);
471 if (!wrap->lib) { 467 if (!wrap->lib) {
472 /* This lib only was in loaded_stack, but not in m_libs. */ 468 /* This lib only was in loaded_stack, but not in m_libs. */
473 wrap->lib = new KLibrary( name, wrap->filename, wrap->handle ); 469 wrap->lib = new KLibrary( name, wrap->filename, wrap->handle );
474 } 470 }
475 wrap->ref_count++; 471 wrap->ref_count++;
476 } else { 472 } else {
477 QString libfile = findLibrary( name ); 473 QString libfile = findLibrary( name );
478 if ( libfile.isEmpty() ) 474 if ( libfile.isEmpty() )
479 return 0; 475 return 0;
480 476#ifdef DESKTOP_VERSION
477 QLibrary *qlib = new QLibrary( libfile.latin1() );
478#else
481 QLibrary *qlib = new QLibrary( libfile.latin1(), QLibrary::Immediately ); 479 QLibrary *qlib = new QLibrary( libfile.latin1(), QLibrary::Immediately );
480#endif
482 481
483//US lt_dlhandle handle = lt_dlopen( libfile.latin1() ); 482//US lt_dlhandle handle = lt_dlopen( libfile.latin1() );
484//US if ( !handle ) 483//US if ( !handle )
485 if ( !qlib ) 484 if ( !qlib )
486 { 485 {
487//US const char* errmsg = lt_dlerror(); 486//US const char* errmsg = lt_dlerror();
488 char* errmsg; 487 char* errmsg;
489 sprintf(errmsg, "KLibLoader::library could not load library: %s", libfile.latin1()); 488 sprintf(errmsg, "KLibLoader::library could not load library: %s", libfile.latin1());
490 qDebug(errmsg); 489 qDebug(errmsg);
491 490
492 if(errmsg) 491 if(errmsg)
493 d->errorMessage = QString::fromLatin1(errmsg); 492 d->errorMessage = QString::fromLatin1(errmsg);
494 else 493 else
495 d->errorMessage = QString::null; 494 d->errorMessage = QString::null;
496 kdWarning(150) << "library=" << name << ": file=" << libfile << ": " << d->errorMessage << endl; 495 kdWarning(150) << "library=" << name << ": file=" << libfile << ": " << d->errorMessage << endl;
497 return 0; 496 return 0;
498 } 497 }
499 else 498 else
500 d->errorMessage = QString::null; 499 d->errorMessage = QString::null;
501 500
502 KLibrary *lib = new KLibrary( name, libfile, qlib ); 501 KLibrary *lib = new KLibrary( name, libfile, qlib );
503 wrap = new KLibWrapPrivate(lib, qlib); 502 wrap = new KLibWrapPrivate(lib, qlib);
504 d->loaded_stack.prepend(wrap); 503 d->loaded_stack.prepend(wrap);
505 } 504 }
506 m_libs.insert( name, wrap ); 505 m_libs.insert( name, wrap );
507 506
508 connect( wrap->lib, SIGNAL( destroyed() ), 507 connect( wrap->lib, SIGNAL( destroyed() ),
509 this, SLOT( slotLibraryDestroyed() ) ); 508 this, SLOT( slotLibraryDestroyed() ) );
510 509
511 return wrap->lib; 510 return wrap->lib;
512} 511}
513 512
514QString KLibLoader::lastErrorMessage() const 513QString KLibLoader::lastErrorMessage() const
515{ 514{
516 return d->errorMessage; 515 return d->errorMessage;
517} 516}
518 517
519void KLibLoader::unloadLibrary( const char *libname ) 518void KLibLoader::unloadLibrary( const char *libname )
520{ 519{
521 KLibWrapPrivate *wrap = m_libs[ libname ]; 520 KLibWrapPrivate *wrap = m_libs[ libname ];
522 if (!wrap) 521 if (!wrap)
523 return; 522 return;
524 if (--wrap->ref_count) 523 if (--wrap->ref_count)
525 return; 524 return;
526 525
527// kdDebug(150) << "closing library " << libname << endl; 526// kdDebug(150) << "closing library " << libname << endl;
528 527
529 m_libs.remove( libname ); 528 m_libs.remove( libname );
@@ -554,94 +553,96 @@ void KLibLoader::slotLibraryDestroyed()
554 wrap->lib = 0; /* the KLibrary object is already away */ 553 wrap->lib = 0; /* the KLibrary object is already away */
555 m_libs.remove( it.currentKey() ); 554 m_libs.remove( it.currentKey() );
556 close_pending( wrap ); 555 close_pending( wrap );
557 return; 556 return;
558 } 557 }
559} 558}
560 559
561void KLibLoader::close_pending(KLibWrapPrivate *wrap) 560void KLibLoader::close_pending(KLibWrapPrivate *wrap)
562{ 561{
563 if (wrap && !d->pending_close.containsRef( wrap )) 562 if (wrap && !d->pending_close.containsRef( wrap ))
564 d->pending_close.append( wrap ); 563 d->pending_close.append( wrap );
565 564
566 /* First delete all KLibrary objects in pending_close, but _don't_ unload 565 /* First delete all KLibrary objects in pending_close, but _don't_ unload
567 the DSO behind it. */ 566 the DSO behind it. */
568 QPtrListIterator<KLibWrapPrivate> it(d->pending_close); 567 QPtrListIterator<KLibWrapPrivate> it(d->pending_close);
569 for (; it.current(); ++it) { 568 for (; it.current(); ++it) {
570 wrap = it.current(); 569 wrap = it.current();
571 if (wrap->lib) { 570 if (wrap->lib) {
572 disconnect( wrap->lib, SIGNAL( destroyed() ), 571 disconnect( wrap->lib, SIGNAL( destroyed() ),
573 this, SLOT( slotLibraryDestroyed() ) ); 572 this, SLOT( slotLibraryDestroyed() ) );
574 delete wrap->lib; 573 delete wrap->lib;
575 wrap->lib = 0; 574 wrap->lib = 0;
576 } 575 }
577 } 576 }
578 577
579 if (d->unload_mode == KLibLoaderPrivate::DONT_UNLOAD) return; 578 if (d->unload_mode == KLibLoaderPrivate::DONT_UNLOAD) return;
580 579
581 bool deleted_one = false; 580 bool deleted_one = false;
582 while ((wrap = d->loaded_stack.first())) { 581 while ((wrap = d->loaded_stack.first())) {
583 /* Let's first see, if we want to try to unload this lib. 582 /* Let's first see, if we want to try to unload this lib.
584 If the env. var KDE_DOUNLOAD is set, we try to unload every lib. 583 If the env. var KDE_DOUNLOAD is set, we try to unload every lib.
585 If not, we look at the lib itself, and unload it only, if it exports 584 If not, we look at the lib itself, and unload it only, if it exports
586 the symbol __kde_do_unload. */ 585 the symbol __kde_do_unload. */
587 if (d->unload_mode != KLibLoaderPrivate::UNLOAD 586 if (d->unload_mode != KLibLoaderPrivate::UNLOAD
588 && wrap->unload_mode != KLibWrapPrivate::UNLOAD) 587 && wrap->unload_mode != KLibWrapPrivate::UNLOAD)
589 break; 588 break;
590 589
591 /* Now ensure, that the libs are only unloaded in the reverse direction 590 /* Now ensure, that the libs are only unloaded in the reverse direction
592 they were loaded. */ 591 they were loaded. */
593 if (!d->pending_close.containsRef( wrap )) { 592 if (!d->pending_close.containsRef( wrap )) {
594 if (!deleted_one) 593 if (!deleted_one)
595 /* Only diagnose, if we really haven't deleted anything. */ 594 /* Only diagnose, if we really haven't deleted anything. */
596// kdDebug(150) << "try to dlclose " << wrap->name << ": not yet" << endl; 595// kdDebug(150) << "try to dlclose " << wrap->name << ": not yet" << endl;
597 break; 596 break;
598 } 597 }
599 598
600// kdDebug(150) << "try to dlclose " << wrap->name << ": yes, done." << endl; 599// kdDebug(150) << "try to dlclose " << wrap->name << ": yes, done." << endl;
601 600
601#if 0
602#ifndef Q_WS_QWS 602#ifndef Q_WS_QWS
603 if ( !deleted_one ) { 603 if ( !deleted_one ) {
604 /* Only do the hack once in this loop. 604 /* Only do the hack once in this loop.
605 WABA: *HACK* 605 WABA: *HACK*
606 We need to make sure to clear the clipboard before unloading a DSO 606 We need to make sure to clear the clipboard before unloading a DSO
607 because the DSO could have defined an object derived from QMimeSource 607 because the DSO could have defined an object derived from QMimeSource
608 and placed that on the clipboard. */ 608 and placed that on the clipboard. */
609 /*kapp->clipboard()->clear();*/ 609 /*kapp->clipboard()->clear();*/
610 610
611 /* Well.. let's do something more subtle... convert the clipboard context 611 /* Well.. let's do something more subtle... convert the clipboard context
612 to text. That should be safe as it only uses objects defined by Qt. */ 612 to text. That should be safe as it only uses objects defined by Qt. */
613 613
614 QWidgetList *widgetlist = QApplication::topLevelWidgets(); 614 QWidgetList *widgetlist = QApplication::topLevelWidgets();
615 QWidget *co = widgetlist->first(); 615 QWidget *co = widgetlist->first();
616 while (co) { 616 while (co) {
617 if (qstrcmp(co->name(), "internal clipboard owner") == 0) { 617 if (qstrcmp(co->name(), "internal clipboard owner") == 0) {
618 if (XGetSelectionOwner(co->x11Display(), XA_PRIMARY) == co->winId()) 618 if (XGetSelectionOwner(co->x11Display(), XA_PRIMARY) == co->winId())
619 kapp->clipboard()->setText(kapp->clipboard()->text()); 619 kapp->clipboard()->setText(kapp->clipboard()->text());
620 620
621 break; 621 break;
622 } 622 }
623 co = widgetlist->next(); 623 co = widgetlist->next();
624 } 624 }
625 delete widgetlist; 625 delete widgetlist;
626 } 626 }
627#else 627#else
628 // FIXME(E): Implement in Qt Embedded 628 // FIXME(E): Implement in Qt Embedded
629#endif 629#endif
630 630
631#endif // 0
631 deleted_one = true; 632 deleted_one = true;
632//US lt_dlclose(wrap->handle); 633//US lt_dlclose(wrap->handle);
633 wrap->handle->unload(); 634 wrap->handle->unload();
634 635
635 d->pending_close.removeRef(wrap); 636 d->pending_close.removeRef(wrap);
636 /* loaded_stack is AutoDelete, so wrap is freed */ 637 /* loaded_stack is AutoDelete, so wrap is freed */
637 d->loaded_stack.remove(); 638 d->loaded_stack.remove();
638 } 639 }
639} 640}
640 641
641void KLibLoader::virtual_hook( int, void* ) 642void KLibLoader::virtual_hook( int, void* )
642{ /*BASE::virtual_hook( id, data );*/ } 643{ /*BASE::virtual_hook( id, data );*/ }
643 644
644void KLibFactory::virtual_hook( int, void* ) 645void KLibFactory::virtual_hook( int, void* )
645{ /*BASE::virtual_hook( id, data );*/ } 646{ /*BASE::virtual_hook( id, data );*/ }
646 647
647//US #include "klibloader.moc" 648//US #include "klibloader.moc"
diff --git a/microkde/kdecore/kstandarddirs.cpp b/microkde/kdecore/kstandarddirs.cpp
index 1a1e027..7f51d78 100644
--- a/microkde/kdecore/kstandarddirs.cpp
+++ b/microkde/kdecore/kstandarddirs.cpp
@@ -1,94 +1,93 @@
1/* This file is part of the KDE libraries 1/* This file is part of the KDE libraries
2 Copyright (C) 1999 Sirtaj Singh Kang <taj@kde.org> 2 Copyright (C) 1999 Sirtaj Singh Kang <taj@kde.org>
3 Copyright (C) 1999 Stephan Kulow <coolo@kde.org> 3 Copyright (C) 1999 Stephan Kulow <coolo@kde.org>
4 Copyright (C) 1999 Waldo Bastian <bastian@kde.org> 4 Copyright (C) 1999 Waldo Bastian <bastian@kde.org>
5 5
6 This library is free software; you can redistribute it and/or 6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Library General Public 7 modify it under the terms of the GNU Library General Public
8 License version 2 as published by the Free Software Foundation. 8 License version 2 as published by the Free Software Foundation.
9 9
10 This library is distributed in the hope that it will be useful, 10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
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/*
22 * Author: Stephan Kulow <coolo@kde.org> and Sirtaj Singh Kang <taj@kde.org> 22 * Author: Stephan Kulow <coolo@kde.org> and Sirtaj Singh Kang <taj@kde.org>
23 * Version:$Id$ 23 * Version:$Id$
24 * Generated:Thu Mar 5 16:05:28 EST 1998 24 * Generated:Thu Mar 5 16:05:28 EST 1998
25 */ 25 */
26 26
27//US #include "config.h" 27//US #include "config.h"
28 28
29#include <stdlib.h> 29#include <stdlib.h>
30#include <assert.h> 30#include <assert.h>
31//US#include <errno.h> 31//US#include <errno.h>
32//US #ifdef HAVE_SYS_STAT_H 32//US #ifdef HAVE_SYS_STAT_H
33//US #include <sys/stat.h> 33//US #include <sys/stat.h>
34//US #endif 34//US #endif
35//US#include <sys/types.h> 35//US#include <sys/types.h>
36//US#include <dirent.h> 36//US#include <dirent.h>
37//US#include <pwd.h> 37//US#include <pwd.h>
38 38
39#include <qregexp.h> 39#include <qregexp.h>
40#include <qasciidict.h> 40#include <qasciidict.h>
41#include <qdict.h> 41#include <qdict.h>
42#include <qdir.h> 42#include <qdir.h>
43#include <qfileinfo.h> 43#include <qfileinfo.h>
44#include <qstring.h> 44#include <qstring.h>
45#include <qstringlist.h> 45#include <qstringlist.h>
46#include <qpe/qpeapplication.h>
47 46
48#include "kstandarddirs.h" 47#include "kstandarddirs.h"
49#include "kconfig.h" 48#include "kconfig.h"
50#include "kdebug.h" 49#include "kdebug.h"
51//US #include "kinstance.h" 50//US #include "kinstance.h"
52#include "kshell.h" 51#include "kshell.h"
53//US#include <sys/param.h> 52//US#include <sys/param.h>
54//US#include <unistd.h> 53//US#include <unistd.h>
55 54
56//US 55//US
57QString KStandardDirs::mAppDir = QString::null; 56QString KStandardDirs::mAppDir = QString::null;
58 57
59 58
60template class QDict<QStringList>; 59template class QDict<QStringList>;
61 60
62#if 0 61#if 0
63#include <qtextedit.h> 62#include <qtextedit.h>
64void ddd( QString op ) 63void ddd( QString op )
65{ 64{
66 static QTextEdit * dot = 0; 65 static QTextEdit * dot = 0;
67 if ( ! dot ) 66 if ( ! dot )
68 dot = new QTextEdit(); 67 dot = new QTextEdit();
69 68
70 dot->show(); 69 dot->show();
71 70
72 dot->append( op ); 71 dot->append( op );
73 72
74} 73}
75#endif 74#endif
76class KStandardDirs::KStandardDirsPrivate 75class KStandardDirs::KStandardDirsPrivate
77{ 76{
78public: 77public:
79 KStandardDirsPrivate() 78 KStandardDirsPrivate()
80 : restrictionsActive(false), 79 : restrictionsActive(false),
81 dataRestrictionActive(false) 80 dataRestrictionActive(false)
82 { } 81 { }
83 82
84 bool restrictionsActive; 83 bool restrictionsActive;
85 bool dataRestrictionActive; 84 bool dataRestrictionActive;
86 QAsciiDict<bool> restrictions; 85 QAsciiDict<bool> restrictions;
87 QStringList xdgdata_prefixes; 86 QStringList xdgdata_prefixes;
88 QStringList xdgconf_prefixes; 87 QStringList xdgconf_prefixes;
89}; 88};
90 89
91static const char* const types[] = {"html", "icon", "apps", "sound", 90static const char* const types[] = {"html", "icon", "apps", "sound",
92 "data", "locale", "services", "mime", 91 "data", "locale", "services", "mime",
93 "servicetypes", "config", "exe", 92 "servicetypes", "config", "exe",
94 "wallpaper", "lib", "pixmap", "templates", 93 "wallpaper", "lib", "pixmap", "templates",
@@ -1180,97 +1179,97 @@ bool KStandardDirs::makeDir(const QString& dir2, int mode)
1180 if (dirObj.mkdir(base) != true) 1179 if (dirObj.mkdir(base) != true)
1181 { 1180 {
1182 qDebug("KStandardDirs::makeDir could not create: %s" , base.latin1()); 1181 qDebug("KStandardDirs::makeDir could not create: %s" , base.latin1());
1183 return false; 1182 return false;
1184 } 1183 }
1185 } 1184 }
1186 1185
1187 i = pos + 1; 1186 i = pos + 1;
1188 } 1187 }
1189 return true; 1188 return true;
1190 1189
1191} 1190}
1192 1191
1193static QString readEnvPath(const char *env) 1192static QString readEnvPath(const char *env)
1194{ 1193{
1195#ifdef _WIN32_ 1194#ifdef _WIN32_
1196 return ""; 1195 return "";
1197#else 1196#else
1198 QCString c_path = getenv(env); 1197 QCString c_path = getenv(env);
1199 if (c_path.isEmpty()) 1198 if (c_path.isEmpty())
1200 return QString::null; 1199 return QString::null;
1201 return QFile::decodeName(c_path); 1200 return QFile::decodeName(c_path);
1202#endif 1201#endif
1203} 1202}
1204 1203
1205void KStandardDirs::addKDEDefaults() 1204void KStandardDirs::addKDEDefaults()
1206{ 1205{
1207 //qDebug("ERROR: KStandardDirs::addKDEDefaults() called "); 1206 //qDebug("ERROR: KStandardDirs::addKDEDefaults() called ");
1208 //return; 1207 //return;
1209 QStringList kdedirList; 1208 QStringList kdedirList;
1210 1209
1211 // begin KDEDIRS 1210 // begin KDEDIRS
1212 QString kdedirs = readEnvPath("MICROKDEDIRS"); 1211 QString kdedirs = readEnvPath("MICROKDEDIRS");
1213 if (!kdedirs.isEmpty()) 1212 if (!kdedirs.isEmpty())
1214 { 1213 {
1215 tokenize(kdedirList, kdedirs, ":"); 1214 tokenize(kdedirList, kdedirs, ":");
1216 } 1215 }
1217 else 1216 else
1218 { 1217 {
1219 QString kdedir = readEnvPath("MICROKDEDIR"); 1218 QString kdedir = readEnvPath("MICROKDEDIR");
1220 if (!kdedir.isEmpty()) 1219 if (!kdedir.isEmpty())
1221 { 1220 {
1222 kdedir = KShell::tildeExpand(kdedir); 1221 kdedir = KShell::tildeExpand(kdedir);
1223 kdedirList.append(kdedir); 1222 kdedirList.append(kdedir);
1224 } 1223 }
1225 } 1224 }
1226//US kdedirList.append(KDEDIR); 1225//US kdedirList.append(KDEDIR);
1227//US for embedded, add qtopia dir as kdedir 1226//US for embedded, add qtopia dir as kdedir
1228 kdedirList.append(QPEApplication::qpeDir()); 1227 kdedirList.append(readEnvPath("QPEDIR" ));
1229 1228
1230#ifdef __KDE_EXECPREFIX 1229#ifdef __KDE_EXECPREFIX
1231 QString execPrefix(__KDE_EXECPREFIX); 1230 QString execPrefix(__KDE_EXECPREFIX);
1232 if (execPrefix!="NONE") 1231 if (execPrefix!="NONE")
1233 kdedirList.append(execPrefix); 1232 kdedirList.append(execPrefix);
1234#endif 1233#endif
1235 1234
1236 QString localKdeDir; 1235 QString localKdeDir;
1237 1236
1238//US if (getuid()) 1237//US if (getuid())
1239 if (true) 1238 if (true)
1240 { 1239 {
1241 localKdeDir = readEnvPath("MICROKDEHOME"); 1240 localKdeDir = readEnvPath("MICROKDEHOME");
1242 if (!localKdeDir.isEmpty()) 1241 if (!localKdeDir.isEmpty())
1243 { 1242 {
1244 if (localKdeDir.at(localKdeDir.length()-1) != '/') 1243 if (localKdeDir.at(localKdeDir.length()-1) != '/')
1245 localKdeDir += '/'; 1244 localKdeDir += '/';
1246 } 1245 }
1247 else 1246 else
1248 { 1247 {
1249 localKdeDir = QDir::homeDirPath() + "/kdepim/"; 1248 localKdeDir = QDir::homeDirPath() + "/kdepim/";
1250 } 1249 }
1251 } 1250 }
1252 else 1251 else
1253 { 1252 {
1254 // We treat root different to prevent root messing up the 1253 // We treat root different to prevent root messing up the
1255 // file permissions in the users home directory. 1254 // file permissions in the users home directory.
1256 localKdeDir = readEnvPath("MICROKDEROOTHOME"); 1255 localKdeDir = readEnvPath("MICROKDEROOTHOME");
1257 if (!localKdeDir.isEmpty()) 1256 if (!localKdeDir.isEmpty())
1258 { 1257 {
1259 if (localKdeDir.at(localKdeDir.length()-1) != '/') 1258 if (localKdeDir.at(localKdeDir.length()-1) != '/')
1260 localKdeDir += '/'; 1259 localKdeDir += '/';
1261 } 1260 }
1262 else 1261 else
1263 { 1262 {
1264//US struct passwd *pw = getpwuid(0); 1263//US struct passwd *pw = getpwuid(0);
1265//US localKdeDir = QFile::decodeName((pw && pw->pw_dir) ? pw->pw_dir : "/root") + "/.microkde/"; 1264//US localKdeDir = QFile::decodeName((pw && pw->pw_dir) ? pw->pw_dir : "/root") + "/.microkde/";
1266 qDebug("KStandardDirs::addKDEDefaults: 1 has to be fixed"); 1265 qDebug("KStandardDirs::addKDEDefaults: 1 has to be fixed");
1267 } 1266 }
1268 1267
1269 } 1268 }
1270 1269
1271//US localKdeDir = appDir(); 1270//US localKdeDir = appDir();
1272 1271
1273//US 1272//US
1274// qDebug("KStandardDirs::addKDEDefaults: localKdeDir=%s", localKdeDir.latin1()); 1273// qDebug("KStandardDirs::addKDEDefaults: localKdeDir=%s", localKdeDir.latin1());
1275 if (localKdeDir != "-/") 1274 if (localKdeDir != "-/")
1276 { 1275 {
diff --git a/microkde/kdeui/ktoolbar.cpp b/microkde/kdeui/ktoolbar.cpp
index 92cb8d2..79b0f9d 100644
--- a/microkde/kdeui/ktoolbar.cpp
+++ b/microkde/kdeui/ktoolbar.cpp
@@ -979,97 +979,97 @@ KToolBar::IconText KToolBar::iconText() const
979 return d->m_iconText; 979 return d->m_iconText;
980} 980}
981 981
982 982
983void KToolBar::setIconSize(int size) 983void KToolBar::setIconSize(int size)
984{ 984{
985 setIconSize( size, true ); 985 setIconSize( size, true );
986} 986}
987 987
988void KToolBar::setIconSize(int size, bool update) 988void KToolBar::setIconSize(int size, bool update)
989{ 989{
990 bool doUpdate=false; 990 bool doUpdate=false;
991 991
992 if ( size != d->m_iconSize ) { 992 if ( size != d->m_iconSize ) {
993 d->m_iconSize = size; 993 d->m_iconSize = size;
994 doUpdate=true; 994 doUpdate=true;
995 } 995 }
996 996
997 if (update == false) 997 if (update == false)
998 return; 998 return;
999 999
1000 if (doUpdate) 1000 if (doUpdate)
1001 emit modechange(); // tell buttons what happened 1001 emit modechange(); // tell buttons what happened
1002 1002
1003 // ugly hack to force a QMainWindow::triggerLayout( TRUE ) 1003 // ugly hack to force a QMainWindow::triggerLayout( TRUE )
1004 if ( mainWindow() ) { 1004 if ( mainWindow() ) {
1005 QMainWindow *mw = mainWindow(); 1005 QMainWindow *mw = mainWindow();
1006 mw->setUpdatesEnabled( FALSE ); 1006 mw->setUpdatesEnabled( FALSE );
1007 mw->setToolBarsMovable( !mw->toolBarsMovable() ); 1007 mw->setToolBarsMovable( !mw->toolBarsMovable() );
1008 mw->setToolBarsMovable( !mw->toolBarsMovable() ); 1008 mw->setToolBarsMovable( !mw->toolBarsMovable() );
1009 mw->setUpdatesEnabled( TRUE ); 1009 mw->setUpdatesEnabled( TRUE );
1010 } 1010 }
1011} 1011}
1012 1012
1013 1013
1014int KToolBar::iconSize() const 1014int KToolBar::iconSize() const
1015{ 1015{
1016/*US 1016/*US
1017 if ( !d->m_iconSize ) // default value? 1017 if ( !d->m_iconSize ) // default value?
1018 { 1018 {
1019 if (!::qstrcmp(QObject::name(), "mainToolBar")) 1019 if (!::qstrcmp(QObject::name(), "mainToolBar"))
1020 return KGlobal::iconLoader()->currentSize(KIcon::MainToolbar); 1020 return KGlobal::iconLoader()->currentSize(KIcon::MainToolbar);
1021 else 1021 else
1022 return KGlobal::iconLoader()->currentSize(KIcon::Toolbar); 1022 return KGlobal::iconLoader()->currentSize(KIcon::Toolbar);
1023 } 1023 }
1024 return d->m_iconSize; 1024 return d->m_iconSize;
1025*/ 1025*/
1026 int ret = 18; 1026 int ret = 18;
1027 if ( QApplication::desktop()->width() > 320 && QApplication::desktop()->width() < 650 ) 1027 if ( QApplication::desktop()->width() > 320 )
1028 ret = 30; 1028 ret = 30;
1029 return ret; 1029 return ret;
1030} 1030}
1031 1031
1032 1032
1033void KToolBar::setEnableContextMenu(bool enable ) 1033void KToolBar::setEnableContextMenu(bool enable )
1034{ 1034{
1035 d->m_enableContext = enable; 1035 d->m_enableContext = enable;
1036} 1036}
1037 1037
1038 1038
1039bool KToolBar::contextMenuEnabled() const 1039bool KToolBar::contextMenuEnabled() const
1040{ 1040{
1041 return d->m_enableContext; 1041 return d->m_enableContext;
1042} 1042}
1043 1043
1044 1044
1045void KToolBar::setItemNoStyle(int id, bool no_style ) 1045void KToolBar::setItemNoStyle(int id, bool no_style )
1046{ 1046{
1047 Id2WidgetMap::Iterator it = id2widget.find( id ); 1047 Id2WidgetMap::Iterator it = id2widget.find( id );
1048 if ( it == id2widget.end() ) 1048 if ( it == id2widget.end() )
1049 return; 1049 return;
1050//US KToolBarButton * button = dynamic_cast<KToolBarButton *>( *it ); 1050//US KToolBarButton * button = dynamic_cast<KToolBarButton *>( *it );
1051 KToolBarButton * button = (KToolBarButton *)( *it ); 1051 KToolBarButton * button = (KToolBarButton *)( *it );
1052 if (button) 1052 if (button)
1053 button->setNoStyle( no_style ); 1053 button->setNoStyle( no_style );
1054} 1054}
1055 1055
1056 1056
1057void KToolBar::setFlat (bool flag) 1057void KToolBar::setFlat (bool flag)
1058{ 1058{
1059 if ( !mainWindow() ) 1059 if ( !mainWindow() )
1060 return; 1060 return;
1061 if ( flag ) 1061 if ( flag )
1062//US mainWindow()->moveDockWindow( this, DockMinimized ); 1062//US mainWindow()->moveDockWindow( this, DockMinimized );
1063 mainWindow()->moveToolBar( this, QMainWindow::Minimized ); 1063 mainWindow()->moveToolBar( this, QMainWindow::Minimized );
1064 else 1064 else
1065//US mainWindow()->moveDockWindow( this, DockTop ); 1065//US mainWindow()->moveDockWindow( this, DockTop );
1066 mainWindow()->moveToolBar( this, QMainWindow::Top ); 1066 mainWindow()->moveToolBar( this, QMainWindow::Top );
1067 // And remember to save the new look later 1067 // And remember to save the new look later
1068/*US 1068/*US
1069 if ( mainWindow()->inherits( "KMainWindow" ) ) 1069 if ( mainWindow()->inherits( "KMainWindow" ) )
1070 static_cast<KMainWindow *>(mainWindow())->setSettingsDirty(); 1070 static_cast<KMainWindow *>(mainWindow())->setSettingsDirty();
1071*/ 1071*/
1072} 1072}
1073 1073
1074 1074
1075int KToolBar::count() const 1075int KToolBar::count() const
diff --git a/microkde/kresources/factory.cpp b/microkde/kresources/factory.cpp
index 827ec38..2253de4 100644
--- a/microkde/kresources/factory.cpp
+++ b/microkde/kresources/factory.cpp
@@ -1,78 +1,79 @@
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#include <klibloader.h> 30#include <klibloader.h>
30 31//#endif
31#include <qfile.h> 32#include <qfile.h>
32 33
33#include "resource.h" 34#include "resource.h"
34#include "factory.h" 35#include "factory.h"
35 36
36using namespace KRES; 37using namespace KRES;
37 38
38QDict<Factory> *Factory::mSelves = 0; 39QDict<Factory> *Factory::mSelves = 0;
39static KStaticDeleter< QDict<Factory> > staticDeleter; 40static KStaticDeleter< QDict<Factory> > staticDeleter;
40 41
41Factory *Factory::self( const QString& resourceFamily ) 42Factory *Factory::self( const QString& resourceFamily )
42{ 43{
43 44
44 45
45 Factory *factory = 0; 46 Factory *factory = 0;
46 if ( !mSelves ) 47 if ( !mSelves )
47 { 48 {
48 mSelves = staticDeleter.setObject( new QDict<Factory> ); 49 mSelves = staticDeleter.setObject( new QDict<Factory> );
49 } 50 }
50 51
51 factory = mSelves->find( resourceFamily ); 52 factory = mSelves->find( resourceFamily );
52 53
53 if ( !factory ) { 54 if ( !factory ) {
54 factory = new Factory( resourceFamily ); 55 factory = new Factory( resourceFamily );
55 mSelves->insert( resourceFamily, factory ); 56 mSelves->insert( resourceFamily, factory );
56 } 57 }
57 58
58 return factory; 59 return factory;
59} 60}
60 61
61Factory::Factory( const QString& resourceFamily ) : 62Factory::Factory( const QString& resourceFamily ) :
62 mResourceFamily( resourceFamily ) 63 mResourceFamily( resourceFamily )
63{ 64{
64//US so far we have three types available for resourceFamily "contact" 65//US so far we have three types available for resourceFamily "contact"
65// and that are "file", "dir", "ldap" 66// and that are "file", "dir", "ldap"
66/*US 67/*US
67 68
68 KTrader::OfferList plugins = KTrader::self()->query( "KResources/Plugin", QString( "[X-KDE-ResourceFamily] == '%1'" ) 69 KTrader::OfferList plugins = KTrader::self()->query( "KResources/Plugin", QString( "[X-KDE-ResourceFamily] == '%1'" )
69 .arg( resourceFamily ) ); 70 .arg( resourceFamily ) );
70 KTrader::OfferList::ConstIterator it; 71 KTrader::OfferList::ConstIterator it;
71 for ( it = plugins.begin(); it != plugins.end(); ++it ) { 72 for ( it = plugins.begin(); it != plugins.end(); ++it ) {
72 QVariant type = (*it)->property( "X-KDE-ResourceType" ); 73 QVariant type = (*it)->property( "X-KDE-ResourceType" );
73 if ( !type.toString().isEmpty() ) 74 if ( !type.toString().isEmpty() )
74 mTypeMap.insert( type.toString(), *it ); 75 mTypeMap.insert( type.toString(), *it );
75 } 76 }
76*/ 77*/
77 78
78//US new 79//US new
diff --git a/microkde/microkde.pro b/microkde/microkde.pro
index 1e9b022..05833a9 100644
--- a/microkde/microkde.pro
+++ b/microkde/microkde.pro
@@ -53,118 +53,116 @@ KDGanttMinimizeSplitter.h \
53 krestrictedline.h \ 53 krestrictedline.h \
54 krun.h \ 54 krun.h \
55 ksimpleconfig.h \ 55 ksimpleconfig.h \
56 kstaticdeleter.h \ 56 kstaticdeleter.h \
57 ksystemtray.h \ 57 ksystemtray.h \
58 ktempfile.h \ 58 ktempfile.h \
59 ktextedit.h \ 59 ktextedit.h \
60 kunload.h \ 60 kunload.h \
61 kurl.h \ 61 kurl.h \
62 kdeui/kguiitem.h \ 62 kdeui/kguiitem.h \
63 kdeui/kcmodule.h \ 63 kdeui/kcmodule.h \
64 kdeui/kbuttonbox.h \ 64 kdeui/kbuttonbox.h \
65 kdeui/klistbox.h \ 65 kdeui/klistbox.h \
66 kdeui/klistview.h \ 66 kdeui/klistview.h \
67 kdeui/kjanuswidget.h \ 67 kdeui/kjanuswidget.h \
68 kdeui/kseparator.h \ 68 kdeui/kseparator.h \
69 kdeui/knuminput.h \ 69 kdeui/knuminput.h \
70 kdeui/knumvalidator.h \ 70 kdeui/knumvalidator.h \
71 kdeui/ksqueezedtextlabel.h \ 71 kdeui/ksqueezedtextlabel.h \
72 kio/job.h \ 72 kio/job.h \
73 kio/kfile/kurlrequester.h \ 73 kio/kfile/kurlrequester.h \
74 kresources/resource.h \ 74 kresources/resource.h \
75 kresources/factory.h \ 75 kresources/factory.h \
76 kresources/managerimpl.h \ 76 kresources/managerimpl.h \
77 kresources/manager.h \ 77 kresources/manager.h \
78 kresources/selectdialog.h \ 78 kresources/selectdialog.h \
79 kresources/configpage.h \ 79 kresources/configpage.h \
80 kresources/configwidget.h \ 80 kresources/configwidget.h \
81 kresources/configdialog.h \ 81 kresources/configdialog.h \
82 kresources/kcmkresources.h \ 82 kresources/kcmkresources.h \
83 kdecore/kmdcodec.h \ 83 kdecore/kmdcodec.h \
84 kdecore/kconfigbase.h \ 84 kdecore/kconfigbase.h \
85 kdecore/klocale.h \ 85 kdecore/klocale.h \
86 kdecore/kcatalogue.h \ 86 kdecore/kcatalogue.h \
87 kdecore/ksharedptr.h \ 87 kdecore/ksharedptr.h \
88 kdecore/kshell.h \ 88 kdecore/kshell.h \
89 kdecore/kstandarddirs.h \ 89 kdecore/kstandarddirs.h \
90 kdecore/kstringhandler.h \ 90 kdecore/kstringhandler.h \
91 kdecore/kshortcut.h \ 91 kdecore/kshortcut.h \
92 kutils/kcmultidialog.h \ 92 kutils/kcmultidialog.h \
93 kdeui/kxmlguiclient.h \ 93 kdeui/kxmlguiclient.h \
94 kdeui/kstdaction.h \ 94 kdeui/kstdaction.h \
95 kdeui/kmainwindow.h \ 95 kdeui/kmainwindow.h \
96 kdeui/ktoolbar.h \ 96 kdeui/ktoolbar.h \
97 kdeui/ktoolbarbutton.h \ 97 kdeui/ktoolbarbutton.h \
98 kdeui/ktoolbarhandler.h \ 98 kdeui/ktoolbarhandler.h \
99 kdeui/kaction.h \ 99 kdeui/kaction.h \
100 kdeui/kactionclasses.h \ 100 kdeui/kactionclasses.h \
101 kdeui/kactioncollection.h 101 kdeui/kactioncollection.h \
102 kdecore/klibloader.h
102 103
103 104
104# kdecore/klibloader.h \ 105# kdecore/klibloader.h \
105 106
106 107
107SOURCES = \ 108SOURCES = \
108KDGanttMinimizeSplitter.cpp \ 109KDGanttMinimizeSplitter.cpp \
109 kapplication.cpp \ 110 kapplication.cpp \
110 kcalendarsystem.cpp \ 111 kcalendarsystem.cpp \
111 kcalendarsystemgregorian.cpp \ 112 kcalendarsystemgregorian.cpp \
112 kcolorbutton.cpp \ 113 kcolorbutton.cpp \
113 kcolordialog.cpp \ 114 kcolordialog.cpp \
114 kconfig.cpp \ 115 kconfig.cpp \
115 kdatetbl.cpp \ 116 kdatetbl.cpp \
116 kdialog.cpp \ 117 kdialog.cpp \
117 kdialogbase.cpp \ 118 kdialogbase.cpp \
118 keditlistbox.cpp \ 119 keditlistbox.cpp \
119 kemailsettings.cpp \ 120 kemailsettings.cpp \
120 kfontdialog.cpp \ 121 kfontdialog.cpp \
121 kfiledialog.cpp \ 122 kfiledialog.cpp \
122 kglobal.cpp \ 123 kglobal.cpp \
123 kglobalsettings.cpp \ 124 kglobalsettings.cpp \
124 kiconloader.cpp \ 125 kiconloader.cpp \
125 kmessagebox.cpp \ 126 kmessagebox.cpp \
126 ktextedit.cpp \ 127 ktextedit.cpp \
127 kprocess.cpp \ 128 kprocess.cpp \
128 krun.cpp \ 129 krun.cpp \
129 ksystemtray.cpp \ 130 ksystemtray.cpp \
130 ktempfile.cpp \ 131 ktempfile.cpp \
131 kurl.cpp \ 132 kurl.cpp \
132 kdecore/kcatalogue.cpp \ 133 kdecore/kcatalogue.cpp \
133 kdecore/klocale.cpp \ 134 kdecore/klocale.cpp \
134 kdecore/kmdcodec.cpp \ 135 kdecore/kmdcodec.cpp \
135 kdecore/kshell.cpp \ 136 kdecore/kshell.cpp \
136 kdecore/kstandarddirs.cpp \ 137 kdecore/kstandarddirs.cpp \
137 kdecore/kstringhandler.cpp \ 138 kdecore/kstringhandler.cpp \
138 kdeui/kbuttonbox.cpp \ 139 kdeui/kbuttonbox.cpp \
139 kdeui/kcmodule.cpp \ 140 kdeui/kcmodule.cpp \
140 kdeui/kguiitem.cpp \ 141 kdeui/kguiitem.cpp \
141 kdeui/kjanuswidget.cpp \ 142 kdeui/kjanuswidget.cpp \
142 kdeui/klistbox.cpp \ 143 kdeui/klistbox.cpp \
143 kdeui/klistview.cpp \ 144 kdeui/klistview.cpp \
144 kdeui/knuminput.cpp \ 145 kdeui/knuminput.cpp \
145 kdeui/knumvalidator.cpp \ 146 kdeui/knumvalidator.cpp \
146 kdeui/kseparator.cpp \ 147 kdeui/kseparator.cpp \
147 kdeui/ksqueezedtextlabel.cpp \ 148 kdeui/ksqueezedtextlabel.cpp \
148 kio/kfile/kurlrequester.cpp \ 149 kio/kfile/kurlrequester.cpp \
149 kresources/configpage.cpp \ 150 kresources/configpage.cpp \
150 kresources/configdialog.cpp \ 151 kresources/configdialog.cpp \
151 kresources/configwidget.cpp \ 152 kresources/configwidget.cpp \
152 kresources/factory.cpp \ 153 kresources/factory.cpp \
153 kresources/kcmkresources.cpp \ 154 kresources/kcmkresources.cpp \
154 kresources/managerimpl.cpp \ 155 kresources/managerimpl.cpp \
155 kresources/resource.cpp \ 156 kresources/resource.cpp \
156 kresources/selectdialog.cpp \ 157 kresources/selectdialog.cpp \
157 kutils/kcmultidialog.cpp \ 158 kutils/kcmultidialog.cpp \
158 kdeui/kaction.cpp \ 159 kdeui/kaction.cpp \
159 kdeui/kactionclasses.cpp \ 160 kdeui/kactionclasses.cpp \
160 kdeui/kactioncollection.cpp \ 161 kdeui/kactioncollection.cpp \
161 kdeui/kmainwindow.cpp \ 162 kdeui/kmainwindow.cpp \
162 kdeui/ktoolbar.cpp \ 163 kdeui/ktoolbar.cpp \
163 kdeui/ktoolbarbutton.cpp \ 164 kdeui/ktoolbarbutton.cpp \
164 kdeui/ktoolbarhandler.cpp \ 165 kdeui/ktoolbarhandler.cpp \
165 kdeui/kstdaction.cpp \ 166 kdeui/kstdaction.cpp \
166 kdeui/kxmlguiclient.cpp 167 kdeui/kxmlguiclient.cpp \
167 168 kdecore/klibloader.cpp \ No newline at end of file
168
169
170# kdecore/klibloader.cpp \ \ No newline at end of file