Browse Source

Rename a number of libraries and executables to avoid conflicts with KDE4

tags/r14.0.0
Timothy Pearson 6 years ago
parent
commit
dfe289850f
100 changed files with 396 additions and 5869 deletions
  1. 13
    13
      CMakeLists.txt
  2. 5
    5
      KDE2PORTING.html
  3. 7
    7
      KDE3PORTING.html
  4. 16
    16
      Mainpage.dox
  5. 11
    11
      Makefile.am.in
  6. 8
    8
      README
  7. 2
    2
      TODO
  8. 1
    1
      arts/knotify/Makefile.am
  9. 3
    3
      configure.in.in
  10. 3
    3
      dcop/Makefile.am
  11. 2
    2
      dcop/testdcop.cpp
  12. 2
    2
      dnssd/CMakeLists.txt
  13. 5
    5
      dnssd/Makefile.am
  14. 1
    1
      dnssd/README
  15. 0
    39
      dnssd/kcm_kdnssd.kcfg
  16. 39
    0
      dnssd/kcm_tdednssd.kcfg
  17. 1
    1
      dnssd/settings.kcfgc
  18. 1
    1
      doc/CMakeLists.txt
  19. 1
    1
      doc/Makefile.am
  20. 0
    13
      doc/kspell/CMakeLists.txt
  21. 0
    174
      doc/kspell/index.docbook
  22. 1
    1
      doc/tdelibs/man-kbuildsycoca.8.docbook
  23. 13
    0
      doc/tdespell/CMakeLists.txt
  24. 0
    0
      doc/tdespell/Makefile.am
  25. 174
    0
      doc/tdespell/index.docbook
  26. 4
    4
      interfaces/CMakeLists.txt
  27. 2
    2
      interfaces/Makefile.am
  28. 1
    1
      interfaces/khexedit/Makefile.am
  29. 1
    1
      interfaces/khexedit/byteseditinterface.h
  30. 0
    51
      interfaces/kimproxy/library/CMakeLists.txt
  31. 0
    26
      interfaces/kimproxy/library/Makefile.am
  32. 0
    653
      interfaces/kimproxy/library/kimproxy.cpp
  33. 0
    654
      interfaces/kimproxy/library/kimproxy.h
  34. 0
    38
      interfaces/kimproxy/library/kimproxyiface.h
  35. 0
    60
      interfaces/kmediaplayer/CMakeLists.txt
  36. 0
    18
      interfaces/kmediaplayer/Makefile.am
  37. 0
    46
      interfaces/kmediaplayer/kfileaudiopreview/CMakeLists.txt
  38. 0
    13
      interfaces/kmediaplayer/kfileaudiopreview/Makefile.am
  39. 0
    146
      interfaces/kmediaplayer/kfileaudiopreview/kfileaudiopreview.cpp
  40. 0
    79
      interfaces/kmediaplayer/player.cpp
  41. 0
    143
      interfaces/kmediaplayer/player.h
  42. 0
    89
      interfaces/kmediaplayer/view.cpp
  43. 0
    56
      interfaces/kscript/CMakeLists.txt
  44. 0
    21
      interfaces/kscript/Makefile.am
  45. 0
    43
      interfaces/kscript/sample/CMakeLists.txt
  46. 0
    13
      interfaces/kscript/sample/Makefile.am
  47. 0
    104
      interfaces/kscript/scriptloader.cpp
  48. 0
    59
      interfaces/kscript/scriptloader.h
  49. 0
    132
      interfaces/kscript/scriptmanager.cpp
  50. 1
    1
      interfaces/kspeech/Makefile.am
  51. 1
    1
      interfaces/kspeech/kspeech.h
  52. 0
    96
      interfaces/ktexteditor/CMakeLists.txt
  53. 0
    52
      interfaces/ktexteditor/Makefile.am
  54. 0
    82
      interfaces/ktexteditor/blockselectioninterface.h
  55. 0
    74
      interfaces/ktexteditor/clipboardinterface.h
  56. 0
    202
      interfaces/ktexteditor/codecompletioninterface.h
  57. 0
    93
      interfaces/ktexteditor/configinterface.h
  58. 0
    116
      interfaces/ktexteditor/configinterfaceextension.h
  59. 0
    84
      interfaces/ktexteditor/cursorinterface.h
  60. 0
    85
      interfaces/ktexteditor/document.h
  61. 0
    60
      interfaces/ktexteditor/documentinfo.h
  62. 0
    64
      interfaces/ktexteditor/dynwordwrapinterface.h
  63. 0
    137
      interfaces/ktexteditor/editinterface.h
  64. 0
    74
      interfaces/ktexteditor/editinterfaceext.h
  65. 0
    65
      interfaces/ktexteditor/editor.h
  66. 0
    58
      interfaces/ktexteditor/editorchooser.h
  67. 0
    63
      interfaces/ktexteditor/encodinginterface.h
  68. 0
    92
      interfaces/ktexteditor/highlightinginterface.h
  69. 0
    242
      interfaces/ktexteditor/ktexteditor.cpp
  70. 0
    171
      interfaces/ktexteditor/markinterface.h
  71. 0
    83
      interfaces/ktexteditor/markinterfaceextension.h
  72. 0
    88
      interfaces/ktexteditor/plugin.h
  73. 0
    66
      interfaces/ktexteditor/popupmenuinterface.h
  74. 0
    63
      interfaces/ktexteditor/printinterface.h
  75. 0
    65
      interfaces/ktexteditor/searchinterface.h
  76. 0
    100
      interfaces/ktexteditor/selectioninterface.h
  77. 0
    74
      interfaces/ktexteditor/selectioninterfaceext.h
  78. 0
    71
      interfaces/ktexteditor/sessionconfiginterface.h
  79. 0
    131
      interfaces/ktexteditor/templateinterface.h
  80. 0
    79
      interfaces/ktexteditor/texthintinterface.h
  81. 0
    84
      interfaces/ktexteditor/undointerface.h
  82. 0
    68
      interfaces/ktexteditor/view.h
  83. 0
    95
      interfaces/ktexteditor/viewcursorinterface.h
  84. 0
    63
      interfaces/ktexteditor/viewstatusmsginterface.h
  85. 0
    66
      interfaces/ktexteditor/wordwrapinterface.h
  86. 0
    0
      interfaces/tdeimproxy/CMakeLists.txt
  87. 0
    0
      interfaces/tdeimproxy/Makefile.am
  88. 0
    0
      interfaces/tdeimproxy/TODO
  89. 0
    0
      interfaces/tdeimproxy/interface/CMakeLists.txt
  90. 0
    0
      interfaces/tdeimproxy/interface/Makefile.am
  91. 0
    0
      interfaces/tdeimproxy/interface/dcopinstantmessenger.desktop
  92. 0
    0
      interfaces/tdeimproxy/interface/kcm_instantmessenger.desktop
  93. 0
    0
      interfaces/tdeimproxy/interface/kimiface.h
  94. 51
    0
      interfaces/tdeimproxy/library/CMakeLists.txt
  95. 26
    0
      interfaces/tdeimproxy/library/Makefile.am
  96. 0
    0
      interfaces/tdeimproxy/library/icons/CMakeLists.txt
  97. 0
    0
      interfaces/tdeimproxy/library/icons/Makefile.am
  98. 0
    0
      interfaces/tdeimproxy/library/icons/cr16-action-presence_away.png
  99. 0
    0
      interfaces/tdeimproxy/library/icons/cr16-action-presence_offline.png
  100. 0
    0
      interfaces/tdeimproxy/library/icons/cr16-action-presence_online.png

+ 13
- 13
CMakeLists.txt View File

@@ -932,11 +932,11 @@ add_subdirectory( tdecore )
932 932
 if( WITH_ELFICON )
933 933
   add_subdirectory( tdelfeditor )
934 934
 endif( WITH_ELFICON )
935
-add_subdirectory( kunittest )
935
+add_subdirectory( tdeunittest )
936 936
 add_subdirectory( tdeui )
937 937
 add_subdirectory( tdesu )
938 938
 add_subdirectory( kjs )
939
-add_subdirectory( kwallet )
939
+add_subdirectory( tdewallet )
940 940
 add_subdirectory( kio )
941 941
 add_subdirectory( kded )
942 942
 
@@ -945,34 +945,34 @@ add_subdirectory( kded )
945 945
 
946 946
 add_subdirectory( kdoctools )
947 947
 add_subdirectory( doc )
948
-add_subdirectory( kparts )
949
-add_subdirectory( kutils )
950
-add_subdirectory( kspell2 )
951
-add_subdirectory( kmdi )
948
+add_subdirectory( tdeparts )
949
+add_subdirectory( tdeutils )
950
+add_subdirectory( tdespell2 )
951
+add_subdirectory( tdemdi )
952 952
 add_subdirectory( kinit )
953 953
 add_subdirectory( tdeprint )
954 954
 add_subdirectory( kab )
955
-add_subdirectory( kresources )
955
+add_subdirectory( tderesources )
956 956
 add_subdirectory( kabc )
957 957
 add_subdirectory( arts )
958 958
 add_subdirectory( interfaces )
959 959
 add_subdirectory( kate )
960
-add_subdirectory( kcert )
960
+add_subdirectory( tdecert )
961 961
 if( XRANDR_FOUND )
962
-  add_subdirectory( krandr )
962
+  add_subdirectory( tderandr )
963 963
 endif( XRANDR_FOUND )
964
-add_subdirectory( khtml )
964
+add_subdirectory( tdehtml )
965 965
 add_subdirectory( kcmshell )
966 966
 add_subdirectory( kconf_update )
967 967
 add_subdirectory( kdewidgets )
968 968
 add_subdirectory( kimgio )
969 969
 add_subdirectory( kioslave )
970 970
 add_subdirectory( kstyles )
971
-add_subdirectory( libkmid )
972
-add_subdirectory( libkscreensaver )
971
+add_subdirectory( libtdemid )
972
+add_subdirectory( libtdescreensaver )
973 973
 add_subdirectory( networkstatus )
974 974
 add_subdirectory( knewstuff )
975
-add_subdirectory( krsync )
975
+add_subdirectory( tdersync )
976 976
 add_subdirectory( licenses )
977 977
 add_subdirectory( dnssd )
978 978
 add_subdirectory( pics )

+ 5
- 5
KDE2PORTING.html View File

@@ -28,7 +28,7 @@ or <a href="http://doc.trolltech.com/porting.html">this page online</a>.<P>
28 28
 <LI><A HREF="#KHelpMenu">KHelpMenu</A></LI>
29 29
 <LI><A HREF="#KToolBar">KToolBar</A></LI>
30 30
 <LI><A HREF="#launching">Starting other programs</A></LI>
31
-<LI><A HREF="#khtmlw">khtmlw</A></LI>
31
+<LI><A HREF="#tdehtmlw">tdehtmlw</A></LI>
32 32
 <LI><A HREF="#KIntegerLine">KIntegerLine, KIntLineEdit</A></LI>
33 33
 <LI><A HREF="#KDNDIcon">KDNDIcon, KDNDDropZone, KDNDWidget, tdecore/drag.h</A></LI>
34 34
 <LI><A HREF="#TDEConfigBase">TDEConfigBase, TDEConfig, KSimpleConfig</A></LI>
@@ -347,9 +347,9 @@ This makes KRun the recommended way to run another program in KDE 2.
347 347
 
348 348
 <H4><P ALIGN="RIGHT"><A HREF="#TOC">Return to the Table of Contents</A></P></H4>
349 349
 
350
-<H3><A NAME="khtmlw">khtmlw</A></H3>
350
+<H3><A NAME="tdehtmlw">tdehtmlw</A></H3>
351 351
 
352
-khtmlw has been replaced with khtml.<BR>
352
+tdehtmlw has been replaced with tdehtml.<BR>
353 353
 <UL>
354 354
 	<LI>KHTMLView has vanished. Just use KHTMLWidget, which does scrollbar
355 355
   managing for free.
@@ -361,7 +361,7 @@ khtmlw has been replaced with khtml.<BR>
361 361
 	w-&gt;openURL(myURL);
362 362
   </PRE>
363 363
 
364
-	<LI>khtml uses QString's instead of char *'s now. This means, that most
364
+	<LI>tdehtml uses QString's instead of char *'s now. This means, that most
365 365
   of the api has changed. In all functions:<P>
366 366
   <PRE>
367 367
      const char * -&gt; QString
@@ -406,7 +406,7 @@ khtmlw has been replaced with khtml.<BR>
406 406
 </TR>
407 407
 </TABLE><P>
408 408
 
409
-<LI>Don't forget to change the link-flags! (-lkhtml -lkjava instead of -lkhtmlw)
409
+<LI>Don't forget to change the link-flags! (-ltdehtml -lkjava instead of -ltdehtmlw)
410 410
 </UL>
411 411
 
412 412
 <H4><P ALIGN="RIGHT"><A HREF="#TOC">Return to the Table of Contents</A></P></H4>

+ 7
- 7
KDE3PORTING.html View File

@@ -20,9 +20,9 @@ or <a href="http://doc.trolltech.com/3.0/porting.html">this page online</a>.<P>
20 20
 <LI><A HREF="#tdecore">Changes in tdecore</A></LI>
21 21
 <LI><A HREF="#tdeui">Changes in tdeui</A></LI>
22 22
 <LI><A HREF="#kio">Changes in kio</A></LI>
23
-<LI><A HREF="#kparts">Changes in kparts</A></LI>
24
-<LI><A HREF="#kspell">Changes in kspell</A></LI>
25
-<LI><A HREF="#khtmlpart">API-cleanup in KHTML</A></LI>
23
+<LI><A HREF="#tdeparts">Changes in tdeparts</A></LI>
24
+<LI><A HREF="#tdespell">Changes in tdespell</A></LI>
25
+<LI><A HREF="#tdehtmlpart">API-cleanup in KHTML</A></LI>
26 26
 <LI><A HREF="#kfile">Changes in kfile</A></LI>
27 27
 <LI><A HREF="#kcontrol">TDE Control Center</A></LI>
28 28
 <LI><A HREF="#kicker">Panel Applets and Extensions</A></LI>
@@ -416,7 +416,7 @@ TQString&) is not a slot anymore.
416 416
 
417 417
 <H4>KOpenWithHandler / KFileOpenWithHandler</H4>
418 418
 Those two classes are deprecated, no need to create a KFileOpenWithHandler anymore.
419
-The merging of libkio, libksycoca, libkfile and libkssl into a single libkio has
419
+The merging of libkio, libtdesycoca, libkfile and libkssl into a single libkio has
420 420
 allowed to fix this dependency problem: KRun can now use the OpenWith dialog directly.
421 421
 
422 422
 <H4>KMimeType, KService</H4>
@@ -440,7 +440,7 @@ The createFilterDevice method is deprecated. Use deviceForFile instead.
440 440
 
441 441
 <H4><P ALIGN="RIGHT"><A HREF="#TOC">Return to the Table of Contents</A></P></H4>
442 442
 
443
-<H3><A NAME="kparts">Changes in kparts</A></H3>
443
+<H3><A NAME="tdeparts">Changes in tdeparts</A></H3>
444 444
 
445 445
 <H4>KParts::Factory</H4>
446 446
 The createPart method is no more virtual and the createPartObject method
@@ -468,7 +468,7 @@ setURLArgs does the job.
468 468
 
469 469
 <H4><P ALIGN="RIGHT"><A HREF="#TOC">Return to the Table of Contents</A></P></H4>
470 470
 
471
-<H3><A NAME="kspell">Changes in kspell</A></H3>
471
+<H3><A NAME="tdespell">Changes in tdespell</A></H3>
472 472
 
473 473
 <H4>KSpell</H4>
474 474
 The API has been cleaned up to be in line with the rest of tdelibs, in particular:
@@ -495,7 +495,7 @@ The API has been cleaned up to be in line with the rest of tdelibs, in particula
495 495
 
496 496
 <H4><P ALIGN="RIGHT"><A HREF="#TOC">Return to the Table of Contents</A></P></H4>
497 497
 
498
-<H3><A NAME="khtmlpart">API-cleanups in KHTML</A></H3>
498
+<H3><A NAME="tdehtmlpart">API-cleanups in KHTML</A></H3>
499 499
 
500 500
 There were a few relatively minor API-adjustements in KHTMLPart. In particular:
501 501
 <ul><li>enableJScript(bool) has been replaced by setJScriptEnabled(bool)

+ 16
- 16
Mainpage.dox View File

@@ -14,8 +14,8 @@
14 14
 	* - <a target="_top" href="tdeui/html/index.html"><b>tdeui</b></a>
15 15
         *   (<a target="_top" href="tdeui/html/classes.html">classes</a>)\n
16 16
 	*   <i>Trinity User interface classes such as widgets.</i>
17
-	* - <a target="_top" href="khtml/html/index.html"><b>khtml</b></a>
18
-        *   (<a target="_top" href="khtml/html/classes.html">classes</a>)\n
17
+	* - <a target="_top" href="tdehtml/html/index.html"><b>tdehtml</b></a>
18
+        *   (<a target="_top" href="tdehtml/html/classes.html">classes</a>)\n
19 19
 	*   <i>The Trinity HTML component.</i>
20 20
 	* - <a target="_top" href="kjs/html/index.html"><b>kjs</b></a>
21 21
         *   (<a target="_top" href="kjs/html/classes.html">classes</a>)\n
@@ -24,8 +24,8 @@
24 24
         *   (<a target="_top" href="kio/kio/html/classes.html">classes</a>)\n
25 25
 	*   <i>Low level access to network files. Also provides access to facilities
26 26
 	*   such as KDirWatcher which monitors directories for changes.</i>
27
-	* - <a target="_top" href="kparts/html/index.html"><b>kparts</b></a>
28
-        *   (<a target="_top" href="kparts/html/classes.html">classes</a>)\n
27
+	* - <a target="_top" href="tdeparts/html/index.html"><b>tdeparts</b></a>
28
+        *   (<a target="_top" href="tdeparts/html/classes.html">classes</a>)\n
29 29
 	*   <i>Support for re-usable, embeddable, extendable applications.</i>
30 30
 	* - <a target="_top" href="dcop/html/index.html"><b>dcop</b></a>
31 31
         *   (<a target="_top" href="dcop/html/classes.html">classes</a>)\n
@@ -33,17 +33,17 @@
33 33
 	* - <a target="_top" href="tdefx/html/index.html"><b>tdefx</b></a>
34 34
         *   (<a target="_top" href="tdefx/html/classes.html">classes</a>)\n
35 35
 	*   <i>A library with pixmap effects.</i>
36
-	* - <a target="_top" href="kmdi/html/index.html"><b>kmdi</b></a>
37
-        *   (<a target="_top" href="kmdi/html/classes.html">classes</a>)\n
36
+	* - <a target="_top" href="tdemdi/html/index.html"><b>tdemdi</b></a>
37
+        *   (<a target="_top" href="tdemdi/html/classes.html">classes</a>)\n
38 38
 	*   <i>MultiDocument Interface library.</i>
39
-	* - <a target="_top" href="libkmid/html/index.html"><b>libkmid</b></a>
40
-        *   (<a target="_top" href="libkmid/html/classes.html">classes</a>)\n
39
+	* - <a target="_top" href="libtdemid/html/index.html"><b>libtdemid</b></a>
40
+        *   (<a target="_top" href="libtdemid/html/classes.html">classes</a>)\n
41 41
 	*   <i>Midi library.</i>
42 42
 	* - <a target="_top" href="tdeprint/html/index.html"><b>tdeprint</b></a>
43 43
         *   (<a target="_top" href="tdeprint/html/classes.html">classes</a>)\n
44 44
 	*   <i>High level  printer control functionality.</i>
45
-	* - <a target="_top" href="krandr/html/index.html"><b>krandr</b></a>
46
-        *   (<a target="_top" href="krandr/html/classes.html">classes</a>)\n
45
+	* - <a target="_top" href="tderandr/html/index.html"><b>tderandr</b></a>
46
+        *   (<a target="_top" href="tderandr/html/classes.html">classes</a>)\n
47 47
 	*   <i>High level Xorg configuration via XRandr.</i>
48 48
 	* - <a target="_top" href="interfaces/html/index.html"><b>interfaces</b></a>
49 49
         *   (<a target="_top" href="interfaces/html/classes.html">classes</a>)\n
@@ -52,11 +52,11 @@
52 52
 	* - <a target="_top" href="kabc/html/index.html"><b>kabc</b></a>
53 53
         *   (<a target="_top" href="kabc/html/classes.html">classes</a>)\n
54 54
 	*   <i>Access to the Trinity address book.</i>
55
-	* - <a target="_top" href="kresources/html/index.html"><b>kresources</b></a>
56
-        *   (<a target="_top" href="kresources/html/classes.html">classes</a>)\n
55
+	* - <a target="_top" href="tderesources/html/index.html"><b>tderesources</b></a>
56
+        *   (<a target="_top" href="tderesources/html/classes.html">classes</a>)\n
57 57
 	*   <i>The Trinity resources system.</i>
58
-	* - <a target="_top" href="kutils/html/index.html"><b>kutils</b></a>
59
-        *   (<a target="_top" href="kutils/html/classes.html">classes</a>)\n
58
+	* - <a target="_top" href="tdeutils/html/index.html"><b>tdeutils</b></a>
59
+        *   (<a target="_top" href="tdeutils/html/classes.html">classes</a>)\n
60 60
 	*   <i>High-level utils, like search/replace support.</i>
61 61
 	* - <a target="_top" href="arts/html/index.html"><b>arts</b></a>
62 62
         *   (<a target="_top" href="arts/html/classes.html">classes</a>)\n
@@ -67,8 +67,8 @@
67 67
 	* - <a target="_top" href="dnssd/html/index.html"><b>dnssd</b></a>
68 68
         *   (<a target="_top" href="dnssd/html/classes.html">classes</a>)\n
69 69
 	*   <i>Network sevices publishing and discovery.</i>
70
-	* - <a target="_top" href="kunittest/html/index.html"><b>kunittest</b></a>
71
-        *   (<a target="_top" href="kunittest/html/classes.html">classes</a>)\n
70
+	* - <a target="_top" href="tdeunittest/html/index.html"><b>tdeunittest</b></a>
71
+        *   (<a target="_top" href="tdeunittest/html/classes.html">classes</a>)\n
72 72
 	*   <i>Unit testing framework in Trinity.</i>
73 73
 
74 74
 	*

+ 11
- 11
Makefile.am.in View File

@@ -18,17 +18,17 @@
18 18
 #    Boston, MA 02110-1301, USA.
19 19
 
20 20
 
21
-COMPILE_FIRST = dcop libltdl tdefx tdecore kunittest tdeui tdesu kjs kwallet kio kded kded_post
21
+COMPILE_FIRST = dcop libltdl tdefx tdecore tdeunittest tdeui tdesu kjs tdewallet kio kded kded_post
22 22
 COMPILE_BEFORE_doc = kdoctools
23
-COMPILE_AFTER_kparts = kspell2 kmdi tdeprint kinit kate interfaces kcert khtml krandr
24
-COMPILE_AFTER_tdeprint = kate khtml
25
-COMPILE_BEFORE_khtml = kutils
26
-COMPILE_BEFORE_kabc = kab kresources
27
-COMPILE_BEFORE_kate = interfaces kutils
28
-COMPILE_BEFORE_kmdi = kutils
29
-COMPILE_BEFORE_kspell2 = kutils
30
-COMPILE_BEFORE_kcmshell = kutils
31
-COMPILE_BEFORE_kdewidgets = kabc khtml
23
+COMPILE_AFTER_tdeparts = tdespell2 tdemdi tdeprint kinit kate interfaces tdecert tdehtml tderandr
24
+COMPILE_AFTER_tdeprint = kate tdehtml
25
+COMPILE_BEFORE_tdehtml = tdeutils
26
+COMPILE_BEFORE_kabc = kab tderesources
27
+COMPILE_BEFORE_kate = interfaces tdeutils
28
+COMPILE_BEFORE_tdemdi = tdeutils
29
+COMPILE_BEFORE_tdespell2 = tdeutils
30
+COMPILE_BEFORE_kcmshell = tdeutils
31
+COMPILE_BEFORE_kdewidgets = kabc tdehtml
32 32
 COMPILE_BEFORE_interfaces = arts kabc
33 33
 
34 34
 $(top_srcdir)/acinclude.m4: $(top_srcdir)/libltdl/ltdl.m4
@@ -54,7 +54,7 @@ messages:
54 54
 	find $$dirs -maxdepth 1 -name "*.cc" -print >> files ;\
55 55
 	find $$dirs -maxdepth 1 -name "*.h" -print >> files ;\
56 56
 	echo ./tdecore/tde-config.cpp.in >> files ;\
57
-	$(EXTRACTRC) `find $$dirs -maxdepth 1 \( -name "*.rc" -o -name "*.ui" \) ` ./dnssd/kcm_kdnssd.kcfg > rc.cpp; \
57
+	$(EXTRACTRC) `find $$dirs -maxdepth 1 \( -name "*.rc" -o -name "*.ui" \) ` ./dnssd/kcm_tdednssd.kcfg > rc.cpp; \
58 58
 	: > kde.pot ;\
59 59
 	$(XGETTEXT) -ktranslate -x qt-messages.pot rc.cpp `cat files` && cat messages.po qt-messages.pot > $(podir)/tdelibs.pot
60 60
 	$(XGETTEXT) common_texts.cpp -o kde.pot

+ 8
- 8
README View File

@@ -27,7 +27,7 @@ Here is an alphabetical list:
27 27
     communicate with KDE applications. It's also the base for KParts.
28 28
 
29 29
 * interfaces
30
-    kparts interface for text editors, mediaplayer and scripting.
30
+    tdeparts interface for text editors, mediaplayer and scripting.
31 31
 
32 32
 * kab
33 33
     OBSOLETE, see kabc: Used to be the address book library, but now only
@@ -39,7 +39,7 @@ Here is an alphabetical list:
39 39
 * kate
40 40
     KPart for 'kate', the KDE advanced text editor.
41 41
 
42
-* kcert
42
+* tdecert
43 43
     Personal certification manager.
44 44
 
45 45
 * kconf_update
@@ -73,7 +73,7 @@ Here is an alphabetical list:
73 73
     Contains mostly stuff convert XML docbook files via XSLT into
74 74
     human readable stuff.
75 75
 
76
-* khtml
76
+* tdehtml
77 77
     The next generation HTML rendering widget designed for Konqueror.  This
78 78
     supports HTML 4, CSS, and a variety of other web related standards.
79 79
 
@@ -86,7 +86,7 @@ Here is an alphabetical list:
86 86
 
87 87
 * kio
88 88
     Classes that fetch and decode URLs are contained here. This library also
89
-    contains "ksycoca", the system configure cache containing services,
89
+    contains "tdesycoca", the system configure cache containing services,
90 90
     applications, servicetypes and mimetypes.
91 91
 
92 92
 * kioslave
@@ -95,21 +95,21 @@ Here is an alphabetical list:
95 95
 * kjs
96 96
     Implementation of ECMAScript (aka JavaScript).
97 97
 
98
-* kparts
98
+* tdeparts
99 99
     KDE component model.
100 100
 
101 101
 * kstyles
102 102
     The theme engine lies within. It handles nearly anything relating to
103 103
     customizing the appearance of widgets.
104 104
 
105
-* kwallet
105
+* tdewallet
106 106
     Client and backend to store values in encrypted files.
107 107
 
108
-* libkmid
108
+* libtdemid
109 109
     MIDI file handling and midi mapper (manages output of midi files to
110 110
     various devices).
111 111
 
112
-* libkscreensaver
112
+* libtdescreensaver
113 113
     Library for making KDE screensavers.
114 114
 
115 115
 * libltdl

+ 2
- 2
TODO View File

@@ -152,7 +152,7 @@ that we would like to make for the next binary incompatible release.
152 152
   - merge KProcIO into TDEProcess; add setBuffered() for separate channels.
153 153
   - use QByteArray for writeStdin(). better than the buf+len arg, as it is ref-counted.
154 154
 
155
-- To discuss: Migrate the about dialog to use qhtml or khtml rather then the current
155
+- To discuss: Migrate the about dialog to use qhtml or tdehtml rather then the current
156 156
   setup of all of the widgets and sub widgets.  Might be a lot simpler, require a lot
157 157
   less code and be much more flexible for additions/enhancments.  Sidenote: currently
158 158
   the about information seems to be duplicated.
@@ -180,7 +180,7 @@ that we would like to make for the next binary incompatible release.
180 180
 
181 181
 - KWallet::Wallet::* functions - remove the default = 0 argument for mainwindow for the dialog
182 182
 
183
-- Make libkwalletclient part of libkio and get rid of libkwalletclient.
183
+- Make libtdewalletclient part of libkio and get rid of libtdewalletclient.
184 184
 
185 185
 - Get rid of libtdesu dependency in libkio, get rid of SessionData::AuthData*,
186 186
   get rid of SlaveInterface::authorizationKey and SlaveInterface::delAuthorization

+ 1
- 1
arts/knotify/Makefile.am View File

@@ -15,7 +15,7 @@ knotify_la_METASOURCES = AUTO
15 15
 check_PROGRAMS		= knotifytest
16 16
 knotifytest_SOURCES	= knotifytest.cpp
17 17
 knotifytest_LDADD	= $(LIB_TDECORE)
18
-knotifytest_LDFLAGS	= $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -lktexteditor
18
+knotifytest_LDFLAGS	= $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -ltdetexteditor
19 19
 
20 20
 noinst_HEADERS	=  knotify.h
21 21
 

+ 3
- 3
configure.in.in View File

@@ -255,12 +255,12 @@ AC_SUBST(LIB_TDEUI, '$(top_builddir)/tdeui/libtdeui.la')
255 255
 AC_SUBST(LIB_KIO, '$(top_builddir)/kio/libkio.la')
256 256
 AC_SUBST(LIB_KFILE, '$(top_builddir)/kio/libkio.la')
257 257
 AC_SUBST(LIB_KSYCOCA, '$(top_builddir)/kio/libkio.la')
258
-AC_SUBST(LIB_KHTML, '$(top_builddir)/khtml/libkhtml.la')
258
+AC_SUBST(LIB_KHTML, '$(top_builddir)/tdehtml/libtdehtml.la')
259 259
 AC_SUBST(LIB_TDEPRINT, '$(top_builddir)/tdeprint/libtdeprint.la')
260
-AC_SUBST(LIB_KPARTS, '$(top_builddir)/kparts/libkparts.la')
260
+AC_SUBST(LIB_KPARTS, '$(top_builddir)/tdeparts/libtdeparts.la')
261 261
 AC_SUBST(LIB_KIMGIO, '$(top_builddir)/kimgio/libkimgio.la')
262 262
 AC_SUBST(LIB_KNEWSTUFF, '$(top_builddir)/knewstuff/libknewstuff.la')
263
-AC_SUBST(LIB_KUNITTEST, '$(top_builddir)/kunittest/libkunittest.la')
263
+AC_SUBST(LIB_KUNITTEST, '$(top_builddir)/tdeunittest/libtdeunittest.la')
264 264
 case $host in 
265 265
 	*cygwin*) lib_kded='$(top_builddir)/kded/libtdeinit_kded.la' ;;
266 266
 	*) lib_kded='' ;;

+ 3
- 3
dcop/Makefile.am View File

@@ -50,15 +50,15 @@ dcopserver_la_LIBADD  = libDCOP.la $(LIB_QT)
50 50
 
51 51
 dcopserver_shutdown_SOURCES = dcopserver_shutdown.c
52 52
 
53
-testdcop_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -lktexteditor
53
+testdcop_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -ltdetexteditor
54 54
 testdcop_SOURCES = testdcop.cpp
55 55
 testdcop_LDADD = libDCOP.la
56 56
 
57
-dcop_deadlock_test_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -lktexteditor
57
+dcop_deadlock_test_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -ltdetexteditor
58 58
 dcop_deadlock_test_SOURCES = dcop_deadlock_test.cpp
59 59
 dcop_deadlock_test_LDADD = ../tdecore/libtdecore.la
60 60
 
61
-testdcopc_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -lktexteditor
61
+testdcopc_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_KIO) -ltdetexteditor
62 62
 testdcopc_SOURCES = testdcopc.c dcopc.c
63 63
 testdcopc_LDADD =  KDE-ICE/libkICE.la $(LIBSM)
64 64
 

+ 2
- 2
dcop/testdcop.cpp View File

@@ -258,12 +258,12 @@ int main(int argc, char **argv)
258 258
 	foundApp.data(), foundObj.data());
259 259
 
260 260
   // Find an object called "object1" in any application.
261
-  boolResult = client->findObject( "", "ksycoca", "", data, foundApp, foundObj);
261
+  boolResult = client->findObject( "", "tdesycoca", "", data, foundApp, foundObj);
262 262
   tqDebug("findObject: result = %s, %s, %s\n", boolResult ? "true" : "false",
263 263
 	foundApp.data(), foundObj.data());
264 264
 
265 265
   // Find ourselves in any application.
266
-  boolResult = client->findObject( "testdcop", "ksycoca", "", data, foundApp, foundObj);
266
+  boolResult = client->findObject( "testdcop", "tdesycoca", "", data, foundApp, foundObj);
267 267
   tqDebug("findObject: result = %s, %s, %s\n", boolResult ? "true" : "false",
268 268
 	foundApp.data(), foundObj.data());
269 269
 

+ 2
- 2
dnssd/CMakeLists.txt View File

@@ -31,9 +31,9 @@ install( FILES
31 31
   DESTINATION ${INCLUDE_INSTALL_DIR}/dnssd )
32 32
 
33 33
 
34
-##### kdnssd ####################################
34
+##### tdednssd ####################################
35 35
 
36
-set( target kdnssd )
36
+set( target tdednssd )
37 37
 
38 38
 set( ${target}_SRCS
39 39
   remoteservice.cpp responder.cpp servicebase.cpp

+ 5
- 5
dnssd/Makefile.am View File

@@ -7,16 +7,16 @@ noinst_HEADERS = sdevent.h
7 7
 # let automoc handle all of the meta source files (moc)
8 8
 METASOURCES = AUTO
9 9
 
10
-lib_LTLIBRARIES =  libkdnssd.la
10
+lib_LTLIBRARIES =  libtdednssd.la
11 11
 
12
-libkdnssd_la_SOURCES = remoteservice.cpp responder.cpp servicebase.cpp \
12
+libtdednssd_la_SOURCES = remoteservice.cpp responder.cpp servicebase.cpp \
13 13
 				settings.kcfgc publicservice.cpp query.cpp domainbrowser.cpp servicebrowser.cpp
14 14
 dnssdincludedir = $(includedir)/dnssd
15 15
 dnssdinclude_HEADERS = domainbrowser.h query.h remoteservice.h \
16 16
 	publicservice.h servicebase.h servicebrowser.h settings.h
17
-libkdnssd_la_LIBADD = ../tdecore/libtdecore.la $(AVAHI_LIBS) $(LIB_QT)
18
-libkdnssd_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) -version-info 1:0
17
+libtdednssd_la_LIBADD = ../tdecore/libtdecore.la $(AVAHI_LIBS) $(LIB_QT)
18
+libtdednssd_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) -version-info 1:0
19 19
 
20
-#kde_kcfg_DATA = kcm_kdnssd.kcfg
20
+#kde_kcfg_DATA = kcm_tdednssd.kcfg
21 21
 
22 22
 include ../admin/Doxyfile.am

+ 1
- 1
dnssd/README View File

@@ -1,7 +1,7 @@
1 1
 Checklist to ensure that zeroconf will work:
2 2
 
3 3
 1) Install Avahi, at least version 0.3
4
-2) compile kdnssd-avahi and install it to replace 'stub' libkdnssd.so provided by tdelibs
4
+2) compile tdednssd-avahi and install it to replace 'stub' libtdednssd.so provided by tdelibs
5 5
 3) check /etc/nsswitch.conf and ensure that there is 'mdns' before 'dns' in
6 6
 line starting with 'host:'. It should be something like:
7 7
 host: files mdns dns

+ 0
- 39
dnssd/kcm_kdnssd.kcfg View File

@@ -1,39 +0,0 @@
1
-<?xml version="1.0" encoding="UTF-8"?>
2
-<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
3
-      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
-      xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
5
-      http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
6
- <kcfgfile name="kdnssdrc" />
7
- <group name="browsing" >
8
-  <entry key="DomainList" type="StringList" >
9
-   <label>Additional domains for browsing</label>
10
-   <whatsthis>List of 'wide-area' (non link-local) domains that should be browsed.</whatsthis>
11
-  </entry>
12
-  <entry key="BrowseLocal" type="Bool" >
13
-   <label>Browse local network</label>
14
-   <whatsthis>If true .local domain will be browsed. It is always link-local, using multicast DNS.</whatsthis>
15
-   <default>true</default>
16
-  </entry>
17
-  <entry key="Recursive" type="Bool" >
18
-   <label>Recursive search for domains</label>
19
-   <whatsthis>Removed in KDE 3.5.0</whatsthis>
20
-   <default>false</default>
21
-  </entry>
22
- </group>
23
- <group name="publishing" >
24
-  <entry key="PublishType" type="Enum" >
25
-   <label>Select publishing in LAN (multicast) or WAN (unicast, needs configured DNS server)</label>
26
-   <whatsthis>Specifies if publishing should be by default link-local using multicast DNS (LAN) or 'wide-area' using normal DNS server (WAN).</whatsthis>
27
-   <default>LAN</default>
28
-   <choices>
29
-    <choice name="LAN" />
30
-    <choice name="WAN" />
31
-   </choices>
32
-  </entry>
33
-  <entry key="PublishDomain" type="String" >
34
-   <label>Name of default publishing domain for WAN</label>
35
-   <whatsthis>Domain name for publishing using 'wide-area' (normal DNS) ZeroConf. This must match domain specified in /etc/mdnsd.conf. This value is used only if PublishType is set to WAN.
36
-</whatsthis>
37
-  </entry>
38
- </group>
39
-</kcfg>

+ 39
- 0
dnssd/kcm_tdednssd.kcfg View File

@@ -0,0 +1,39 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
3
+      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+      xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
5
+      http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
6
+ <kcfgfile name="tdednssdrc" />
7
+ <group name="browsing" >
8
+  <entry key="DomainList" type="StringList" >
9
+   <label>Additional domains for browsing</label>
10
+   <whatsthis>List of 'wide-area' (non link-local) domains that should be browsed.</whatsthis>
11
+  </entry>
12
+  <entry key="BrowseLocal" type="Bool" >
13
+   <label>Browse local network</label>
14
+   <whatsthis>If true .local domain will be browsed. It is always link-local, using multicast DNS.</whatsthis>
15
+   <default>true</default>
16
+  </entry>
17
+  <entry key="Recursive" type="Bool" >
18
+   <label>Recursive search for domains</label>
19
+   <whatsthis>Removed in KDE 3.5.0</whatsthis>
20
+   <default>false</default>
21
+  </entry>
22
+ </group>
23
+ <group name="publishing" >
24
+  <entry key="PublishType" type="Enum" >
25
+   <label>Select publishing in LAN (multicast) or WAN (unicast, needs configured DNS server)</label>
26
+   <whatsthis>Specifies if publishing should be by default link-local using multicast DNS (LAN) or 'wide-area' using normal DNS server (WAN).</whatsthis>
27
+   <default>LAN</default>
28
+   <choices>
29
+    <choice name="LAN" />
30
+    <choice name="WAN" />
31
+   </choices>
32
+  </entry>
33
+  <entry key="PublishDomain" type="String" >
34
+   <label>Name of default publishing domain for WAN</label>
35
+   <whatsthis>Domain name for publishing using 'wide-area' (normal DNS) ZeroConf. This must match domain specified in /etc/mdnsd.conf. This value is used only if PublishType is set to WAN.
36
+</whatsthis>
37
+  </entry>
38
+ </group>
39
+</kcfg>

+ 1
- 1
dnssd/settings.kcfgc View File

@@ -1,5 +1,5 @@
1 1
 ClassName=Configuration
2
-File=kcm_kdnssd.kcfg
2
+File=kcm_tdednssd.kcfg
3 3
 GlobalEnums=false
4 4
 Inherits=TDEConfigSkeleton
5 5
 ItemAccessors=false

+ 1
- 1
doc/CMakeLists.txt View File

@@ -10,4 +10,4 @@
10 10
 #################################################
11 11
 
12 12
 add_subdirectory( common )
13
-add_subdirectory( kspell )
13
+add_subdirectory( tdespell )

+ 1
- 1
doc/Makefile.am View File

@@ -1,3 +1,3 @@
1 1
 
2
-SUBDIRS = common kspell tdelibs
2
+SUBDIRS = common tdespell tdelibs
3 3
 

+ 0
- 13
doc/kspell/CMakeLists.txt View File

@@ -1,13 +0,0 @@
1
-#################################################
2
-#
3
-#  (C) 2010 Serghei Amelian
4
-#  serghei (DOT) amelian (AT) gmail.com
5
-#
6
-#  Improvements and feedback are welcome
7
-#
8
-#  This file is released under GPL >= 2
9
-#
10
-#################################################
11
-
12
-tde_create_handbook( SRCDIR ${CMAKE_SOURCE_DIR}/kdoctools DESTINATION kspell )
13
-add_dependencies( kspell-en-handbook meinproc )

+ 0
- 174
doc/kspell/index.docbook View File

@@ -1,174 +0,0 @@
1
-<?xml version="1.0" ?>
2
-<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
3
-  <!ENTITY kappname "&kspell;">
4
-  <!ENTITY % English "INCLUDE" > <!-- change language only here -->
5
-  <!ENTITY % addindex "IGNORE">
6
-]>
7
-
8
-<book lang="&language;">
9
-
10
-<bookinfo>
11
-<title>The &kspell; Handbook</title>
12
-
13
-<authorgroup>
14
-<author>&David.Sweet; &David.Sweet.mail;</author>
15
-
16
-<!-- TRANS:ROLES_OF_TRANSLATORS -->
17
-
18
-</authorgroup>
19
-
20
-<date>2003-02-24</date>
21
-<releaseinfo>1.00.00</releaseinfo>
22
-<abstract>
23
-<para>&kspell; is the spelling checker used by &tde; applications such
24
-as &kate;, &kmail;, and &kword;. It is a &GUI; frontend to <application>International ISpell</application> and <application>ASpell</application>.</para>
25
-
26
-</abstract>
27
-<keywordset>
28
-<keyword>spell</keyword>
29
-<keyword>spelling</keyword>
30
-<keyword>kspell</keyword>
31
-<keyword>ispell</keyword>
32
-<keyword>aspell</keyword>
33
-<keyword>check</keyword>
34
-<keyword>checker</keyword>
35
-<keyword>KDE</keyword>
36
-</keywordset>
37
-</bookinfo>
38
-
39
-<chapter id="misspelled-word-dialog">
40
-<title>Misspelled Word Dialog</title>
41
-
42
-<!-- This one might need a paragraph of its own) --> 
43
-<para>(If you do not have <application>Ispell</application> installed
44
-you can obtain it from the <ulink
45
-url="http://fmg-www.cs.ucla.edu/geoff/ispell.html">International
46
-ISpell home page</ulink>.  ASpell is available from the <ulink
47
-url="http://aspell.sourceforge.net/">ASpell home page</ulink>.)
48
-</para>
49
-
50
-<sect1 id="general-use">
51
-<title>General Use</title>
52
-
53
-<para><anchor id="spelldlg"/>
54
-The top line in the dialog displays a possibly misspelled word which was found in your
55
-document. &kspell; attempts to find an appropriate replacement word. One or
56
-several may be found. The best guess is shown to the right of <guilabel>Replacement:</guilabel>.
57
-To accept this replacement, click on <guibutton>Replace</guibutton>. You may also select a word
58
-from the list of <guilabel>Suggestions</guilabel> and then click <guibutton>Replace</guibutton> to replace the
59
-misspelled word with the selected word.</para>
60
-
61
-<para>To keep your original spelling, click on <guilabel>Ignore</guilabel>.</para>
62
-
63
-<para>To stop the spellchecking -- keeping the changes you've already made -- click
64
-on <guibutton>Stop</guibutton>.</para>
65
-
66
-<para>To stop the spellchecking and cancel the changes you've already made, click on
67
-<guibutton>Cancel</guibutton>.</para>
68
-
69
-<para>Clicking on <guibutton>Replace All</guibutton> will initially perform the same function as
70
-clicking on <guibutton>Replace</guibutton>, but will automatically replace the misspelled word
71
-with the chosen replacement word, if it appears again (at a later point) in your
72
-document.</para>
73
-
74
-<para>The <guibutton>Ignore All</guibutton> button ignores this and all future occurrences of the
75
-misspelled word.</para>
76
-
77
-<para>Clicking on <guibutton>Add</guibutton> will add the misspelled word to your personal dictionary
78
-(this is distinct from the original system dictionary, so the additions you make
79
-will not be seen by other users).</para>
80
-</sect1>
81
-</chapter>
82
-
83
-<chapter id="configuration-dialog">
84
-<title>Configuration Dialog </title>
85
-<anchor id="configuration"/>
86
-
87
-<sect1 id="dictionaries">
88
-<title>Dictionaries</title>
89
-
90
-<para>You can choose the dictionary to use for spellchecking from the list of
91
-installed dictionaries.</para>
92
-</sect1>
93
-
94
-<sect1 id="encodings">
95
-<title>Encodings</title>
96
-
97
-<para>The most commonly used character encodings are:
98
-<variablelist>
99
-<varlistentry>
100
-<term>US-ASCII</term>
101
-<listitem>
102
-<para>This is the character set used for English text.</para>
103
-</listitem>
104
-</varlistentry>
105
-<varlistentry>
106
-<term>ISO-8859-1</term>
107
-<listitem>
108
-<para>This is used for Western European languages.</para>
109
-</listitem>
110
-</varlistentry>
111
-<varlistentry>
112
-<term>UTF-8</term>
113
-<listitem>
114
-<para>This is a Unicode encoding that can be used for almost any language, if 
115
-your system has the necessary fonts.</para>
116
-</listitem>
117
-</varlistentry>
118
-</variablelist>
119
-</para>
120
-
121
-<para>You should select the one that matches the character set you are using.
122
-In some cases, dictionaries will support more than one encoding.  A
123
-dictionary might, for example, accept accented characters when <guilabel>ISO-8859-1</guilabel> is
124
-selected, but accept email-style character combinations (like <literal>'a</literal> for an
125
-accented <literal>a</literal>) when <guilabel>US-ASCII</guilabel> is selected. Please see
126
-your dictionary's distribution for more information.</para>
127
-</sect1>
128
-
129
-<sect1 id="spell-checking-client">
130
-<title>Spell-checking client</title>
131
-
132
-<para>You may choose to use <application>Ispell</application> or <application>Aspell</application> as the spell-checking
133
-backend for &kspell;. <application>Ispell</application> is more widely available and may
134
-have better international support, but <application>Aspell</application> is gaining
135
-popularity as it claims to give better suggestions for word replacements.</para>
136
-</sect1>
137
-
138
-<sect1 id="other">
139
-<title>Other</title>
140
-
141
-<para>It is recommend that you do not change the first two options unless you have
142
-read the International <application>ISpell</application> man page.</para>
143
-</sect1>
144
-</chapter>
145
-
146
-<chapter id="contact-information">
147
-<title>Contact Information</title>
148
-
149
-<para>For more information about &kspell;, visit the <ulink url="http://www.chaos.umd.edu/~dsweet/KDE/KSpell">&kspell; 
150
-Home Page</ulink>. In particular, you will find information about programming the &kspell; C++ class.</para>
151
-
152
-<para>You may email the author/maintainer with questions and/or comments at
153
-&David.Sweet.mail;.</para>
154
-
155
-<para>
156
-Documentation Copyright &copy; 2003 &David.Sweet; &David.Sweet.mail;
157
-</para>
158
-
159
-<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
160
-
161
-&underFDL;               <!-- FDL: do not remove -->
162
-
163
-</chapter>
164
-&documentation.index; 
165
-</book>
166
-<!--
167
-Local Variables:
168
-mode: sgml
169
-sgml-omittag: nil
170
-sgml-shorttag: t
171
-sgml-general-insert-case: lower
172
-End:
173
--->
174
-

+ 1
- 1
doc/tdelibs/man-kbuildsycoca.8.docbook View File

@@ -204,7 +204,7 @@ installations</para>
204 204
 <refsect1>
205 205
 <title>See Also</title>
206 206
 
207
-<para>ksycoca(3), kblah(4), knogga(6)</para>
207
+<para>tdesycoca(3), kblah(4), knogga(6)</para>
208 208
 
209 209
 </refsect1>
210 210
 

+ 13
- 0
doc/tdespell/CMakeLists.txt View File

@@ -0,0 +1,13 @@
1
+#################################################
2
+#
3
+#  (C) 2010 Serghei Amelian
4
+#  serghei (DOT) amelian (AT) gmail.com
5
+#
6
+#  Improvements and feedback are welcome
7
+#
8
+#  This file is released under GPL >= 2
9
+#
10
+#################################################
11
+
12
+tde_create_handbook( SRCDIR ${CMAKE_SOURCE_DIR}/kdoctools DESTINATION tdespell )
13
+add_dependencies( tdespell-en-handbook meinproc )

doc/kspell/Makefile.am → doc/tdespell/Makefile.am View File


+ 174
- 0
doc/tdespell/index.docbook View File

@@ -0,0 +1,174 @@
1
+<?xml version="1.0" ?>
2
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
3
+  <!ENTITY kappname "&tdespell;">
4
+  <!ENTITY % English "INCLUDE" > <!-- change language only here -->
5
+  <!ENTITY % addindex "IGNORE">
6
+]>
7
+
8
+<book lang="&language;">
9
+
10
+<bookinfo>
11
+<title>The &tdespell; Handbook</title>
12
+
13
+<authorgroup>
14
+<author>&David.Sweet; &David.Sweet.mail;</author>
15
+
16
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
17
+
18
+</authorgroup>
19
+
20
+<date>2003-02-24</date>
21
+<releaseinfo>1.00.00</releaseinfo>
22
+<abstract>
23
+<para>&tdespell; is the spelling checker used by &tde; applications such
24
+as &kate;, &kmail;, and &kword;. It is a &GUI; frontend to <application>International ISpell</application> and <application>ASpell</application>.</para>
25
+
26
+</abstract>
27
+<keywordset>
28
+<keyword>spell</keyword>
29
+<keyword>spelling</keyword>
30
+<keyword>tdespell</keyword>
31
+<keyword>ispell</keyword>
32
+<keyword>aspell</keyword>
33
+<keyword>check</keyword>
34
+<keyword>checker</keyword>
35
+<keyword>KDE</keyword>
36
+</keywordset>
37
+</bookinfo>
38
+
39
+<chapter id="misspelled-word-dialog">
40
+<title>Misspelled Word Dialog</title>
41
+
42
+<!-- This one might need a paragraph of its own) --> 
43
+<para>(If you do not have <application>Ispell</application> installed
44
+you can obtain it from the <ulink
45
+url="http://fmg-www.cs.ucla.edu/geoff/ispell.html">International
46
+ISpell home page</ulink>.  ASpell is available from the <ulink
47
+url="http://aspell.sourceforge.net/">ASpell home page</ulink>.)
48
+</para>
49
+
50
+<sect1 id="general-use">
51
+<title>General Use</title>
52
+
53
+<para><anchor id="spelldlg"/>
54
+The top line in the dialog displays a possibly misspelled word which was found in your
55
+document. &tdespell; attempts to find an appropriate replacement word. One or
56
+several may be found. The best guess is shown to the right of <guilabel>Replacement:</guilabel>.
57
+To accept this replacement, click on <guibutton>Replace</guibutton>. You may also select a word
58
+from the list of <guilabel>Suggestions</guilabel> and then click <guibutton>Replace</guibutton> to replace the
59
+misspelled word with the selected word.</para>
60
+
61
+<para>To keep your original spelling, click on <guilabel>Ignore</guilabel>.</para>
62
+
63
+<para>To stop the spellchecking -- keeping the changes you've already made -- click
64
+on <guibutton>Stop</guibutton>.</para>
65
+
66
+<para>To stop the spellchecking and cancel the changes you've already made, click on
67
+<guibutton>Cancel</guibutton>.</para>
68
+
69
+<para>Clicking on <guibutton>Replace All</guibutton> will initially perform the same function as
70
+clicking on <guibutton>Replace</guibutton>, but will automatically replace the misspelled word
71
+with the chosen replacement word, if it appears again (at a later point) in your
72
+document.</para>
73
+
74
+<para>The <guibutton>Ignore All</guibutton> button ignores this and all future occurrences of the
75
+misspelled word.</para>
76
+
77
+<para>Clicking on <guibutton>Add</guibutton> will add the misspelled word to your personal dictionary
78
+(this is distinct from the original system dictionary, so the additions you make
79
+will not be seen by other users).</para>
80
+</sect1>
81
+</chapter>
82
+
83
+<chapter id="configuration-dialog">
84
+<title>Configuration Dialog </title>
85
+<anchor id="configuration"/>
86
+
87
+<sect1 id="dictionaries">
88
+<title>Dictionaries</title>
89
+
90
+<para>You can choose the dictionary to use for spellchecking from the list of
91
+installed dictionaries.</para>
92
+</sect1>
93
+
94
+<sect1 id="encodings">
95
+<title>Encodings</title>
96
+
97
+<para>The most commonly used character encodings are:
98
+<variablelist>
99
+<varlistentry>
100
+<term>US-ASCII</term>
101
+<listitem>
102
+<para>This is the character set used for English text.</para>
103
+</listitem>
104
+</varlistentry>
105
+<varlistentry>
106
+<term>ISO-8859-1</term>
107
+<listitem>
108
+<para>This is used for Western European languages.</para>
109
+</listitem>
110
+</varlistentry>
111
+<varlistentry>
112
+<term>UTF-8</term>
113
+<listitem>
114
+<para>This is a Unicode encoding that can be used for almost any language, if 
115
+your system has the necessary fonts.</para>
116
+</listitem>
117
+</varlistentry>
118
+</variablelist>
119
+</para>
120
+
121
+<para>You should select the one that matches the character set you are using.
122
+In some cases, dictionaries will support more than one encoding.  A
123
+dictionary might, for example, accept accented characters when <guilabel>ISO-8859-1</guilabel> is
124
+selected, but accept email-style character combinations (like <literal>'a</literal> for an
125
+accented <literal>a</literal>) when <guilabel>US-ASCII</guilabel> is selected. Please see
126
+your dictionary's distribution for more information.</para>
127
+</sect1>
128
+
129
+<sect1 id="spell-checking-client">
130
+<title>Spell-checking client</title>
131
+
132
+<para>You may choose to use <application>Ispell</application> or <application>Aspell</application> as the spell-checking
133
+backend for &tdespell;. <application>Ispell</application> is more widely available and may
134
+have better international support, but <application>Aspell</application> is gaining
135
+popularity as it claims to give better suggestions for word replacements.</para>
136
+</sect1>
137
+
138
+<sect1 id="other">
139
+<title>Other</title>
140
+
141
+<para>It is recommend that you do not change the first two options unless you have
142
+read the International <application>ISpell</application> man page.</para>
143
+</sect1>
144
+</chapter>
145
+
146
+<chapter id="contact-information">
147
+<title>Contact Information</title>
148
+
149
+<para>For more information about &tdespell;, visit the <ulink url="http://www.chaos.umd.edu/~dsweet/KDE/KSpell">&tdespell; 
150
+Home Page</ulink>. In particular, you will find information about programming the &tdespell; C++ class.</para>
151
+
152
+<para>You may email the author/maintainer with questions and/or comments at
153
+&David.Sweet.mail;.</para>
154
+
155
+<para>
156
+Documentation Copyright &copy; 2003 &David.Sweet; &David.Sweet.mail;
157
+</para>
158
+
159
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
160
+
161
+&underFDL;               <!-- FDL: do not remove -->
162
+
163
+</chapter>
164
+&documentation.index; 
165
+</book>
166
+<!--
167
+Local Variables:
168
+mode: sgml
169
+sgml-omittag: nil
170
+sgml-shorttag: t
171
+sgml-general-insert-case: lower
172
+End:
173
+-->
174
+

+ 4
- 4
interfaces/CMakeLists.txt View File

@@ -9,12 +9,12 @@
9 9
 #
10 10
 #################################################
11 11
 
12
-add_subdirectory( ktexteditor )
13
-add_subdirectory( kscript )
12
+add_subdirectory( tdetexteditor )
13
+add_subdirectory( tdescript )
14 14
 add_subdirectory( kregexpeditor )
15
-add_subdirectory( kmediaplayer )
15
+add_subdirectory( tdemediaplayer )
16 16
 add_subdirectory( kio )
17 17
 add_subdirectory( terminal )
18 18
 add_subdirectory( khexedit )
19
-add_subdirectory( kimproxy )
19
+add_subdirectory( tdeimproxy )
20 20
 add_subdirectory( kspeech )

+ 2
- 2
interfaces/Makefile.am View File

@@ -1,5 +1,5 @@
1
-SUBDIRS = ktexteditor kscript kregexpeditor kmediaplayer kio terminal khexedit kimproxy kspeech
1
+SUBDIRS = tdetexteditor tdescript kregexpeditor tdemediaplayer kio terminal khexedit tdeimproxy kspeech
2 2
 
3
-DOXYGEN_REFERENCES = tdecore tdefx tdeui kparts dcop
3
+DOXYGEN_REFERENCES = tdecore tdefx tdeui tdeparts dcop
4 4
 DOXYGEN_SET_RECURSIVE = YES
5 5
 include ../admin/Doxyfile.am

+ 1
- 1
interfaces/khexedit/Makefile.am View File

@@ -1,5 +1,5 @@
1 1
 
2
-INCLUDES= -I$(top_srcdir)/kparts $(all_includes)
2
+INCLUDES= -I$(top_srcdir)/tdeparts $(all_includes)
3 3
 
4 4
 # the service type
5 5
 servicetypedir = $(kde_servicetypesdir)

+ 1
- 1
interfaces/khexedit/byteseditinterface.h View File

@@ -19,7 +19,7 @@
19 19
 #define BYTESEDITINTERFACE_H
20 20
 
21 21
 // kde specific
22
-#include <kparts/componentfactory.h>
22
+#include <tdeparts/componentfactory.h>
23 23
 
24 24
 #include <tqwidget.h>
25 25
 

+ 0
- 51
interfaces/kimproxy/library/CMakeLists.txt View File

@@ -1,51 +0,0 @@
1
-#################################################
2
-#
3
-#  (C) 2010 Serghei Amelian
4
-#  serghei (DOT) amelian (AT) gmail.com
5
-#
6
-#  Improvements and feedback are welcome
7
-#
8
-#  This file is released under GPL >= 2
9
-#
10
-#################################################
11
-
12
-add_subdirectory( icons )
13
-
14
-include_directories(
15
-  ${TQT_INCLUDE_DIRS}
16
-  ${CMAKE_CURRENT_BINARY_DIR}
17
-  ${CMAKE_BINARY_DIR}/tdecore
18
-  ${CMAKE_SOURCE_DIR}/dcop
19
-  ${CMAKE_SOURCE_DIR}/tdecore
20
-  ${CMAKE_SOURCE_DIR}/tdeui
21
-  ${CMAKE_SOURCE_DIR}/kio/kio
22
-)
23
-
24
-link_directories(
25
-  ${TQT_LIBRARY_DIRS}
26
-)
27
-
28
-
29
-##### headers ###################################
30
-
31
-install( FILES
32
-    kimproxy.h kimproxyiface.h
33
-  DESTINATION ${INCLUDE_INSTALL_DIR} )
34
-
35
-
36
-##### kimproxy ##################################
37
-
38
-set( target kimproxy )
39
-
40
-set( ${target}_SRCS
41
-  kimproxy.cpp kimproxyiface.skel
42
-  ${CMAKE_SOURCE_DIR}/interfaces/kimproxy/interface/kimiface.stub
43
-)
44
-
45
-tde_add_library( ${target} SHARED AUTOMOC
46
-  SOURCES ${${target}_SRCS}
47
-  VERSION 0.0.0
48
-  LINK kio-shared
49
-  DESTINATION ${LIB_INSTALL_DIR}
50
-  DEPENDENCIES dcopidl
51
-)

+ 0
- 26
interfaces/kimproxy/library/Makefile.am View File

@@ -1,26 +0,0 @@
1
-SUBDIRS = icons
2
-
3
-INCLUDES = $(all_includes)
4
-
5
-noinst_HEADERS = kimproxyiface.h
6
-
7
-METASOURCES = AUTO
8
-
9
-AM_CPPFLAGS = $(all_includes)
10
-
11
-messages: rc.cpp
12
-	$(XGETTEXT) *.cpp -o $(podir)/kimproxy.pot
13
-
14
-kimproxyincludedir = $(includedir)
15
-kimproxyinclude_HEADERS = kimproxy.h kimproxyiface.h
16
-
17
-lib_LTLIBRARIES =  libkimproxy.la
18
-libkimproxy_la_LDFLAGS = -no-undefined $(all_libraries)
19
-libkimproxy_la_LIBADD = $(LIB_KIO) $(LIB_QT) $(LIB_TDECORE) $(top_builddir)/dcop/libDCOP.la $(LIB_TDEUI)
20
-libkimproxy_la_SOURCES = kimproxy.cpp kimiface.stub kimproxyiface.skel
21
-
22
-kimiface_DIR = $(top_srcdir)/interfaces/kimproxy/interface
23
-
24
-include $(top_srcdir)/admin/Doxyfile.am
25
-DOXYGEN_REFERENCES = kabc dcop
26
-

+ 0
- 653
interfaces/kimproxy/library/kimproxy.cpp View File

@@ -1,653 +0,0 @@
1
-/*    
2
-	kimproxy.cpp
3
-	
4
-	IM service library for KDE
5
-	
6
-	Copyright (c) 2004 Will Stephenson   <lists@stevello.free-online.co.uk>
7
-
8
-    This library is free software; you can redistribute it and/or
9
-    modify it under the terms of the GNU Library General Public
10
-    License as published by the Free Software Foundation; either
11
-    version 2 of the License, or (at your option) any later version.
12
-
13
-    This library is distributed in the hope that it will be useful,
14
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
15
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16
-    Library General Public License for more details.
17
-
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
20
-    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
-    Boston, MA 02110-1301, USA.
22
-*/
23
-
24
-#include <tqglobal.h>
25
-#include <tqpixmapcache.h>
26
-#include <dcopclient.h>
27
-#include <kapplication.h>
28
-#include <kdcopservicestarter.h> 
29
-#include <kdebug.h>
30
-#include <kmessagebox.h>
31
-#include <ksimpleconfig.h>
32
-#include <kiconloader.h>
33
-#include <kservice.h>
34
-#include <kservicetype.h>
35
-
36
-#include "kimiface_stub.h"
37
-
38
-#include "kimproxy.h"
39
-
40
-static KStaticDeleter<KIMProxy> _staticDeleter;
41
-
42
-KIMProxy * KIMProxy::s_instance = 0L;
43
-
44
-struct AppPresenceCurrent
45
-{
46
-	TQCString appId;
47
-	int presence;
48
-};
49
-
50
-class ContactPresenceListCurrent : public TQValueList<AppPresenceCurrent>
51
-{
52
-	public:
53
-		// return value indicates if the supplied parameter was better than any existing presence
54
-		bool update( const AppPresenceCurrent );
55
-		AppPresenceCurrent best();
56
-};
57
-
58
-
59
-struct KIMProxy::Private
60
-{
61
-	DCOPClient * dc;
62
-	// list of the strings in use by KIMIface
63
-	TQStringList presence_strings;
64
-	// list of the icon names in use by KIMIface
65
-	TQStringList presence_icons;
66
-	// map of presences
67
-	PresenceStringMap presence_map;
68
-};
69
-
70
-bool ContactPresenceListCurrent::update( AppPresenceCurrent ap )
71
-{
72
-	if ( isEmpty() )
73
-	{
74
-		append( ap );
75
-		return true;
76
-	}
77
-	
78
-	bool bestChanged = false;
79
-	AppPresenceCurrent best;
80
-	best.presence = -1;
81
-	ContactPresenceListCurrent::iterator it = begin();
82
-	const ContactPresenceListCurrent::iterator itEnd = end();
83
-	ContactPresenceListCurrent::iterator existing = itEnd;
84
-
85
-	while ( it != itEnd )
86
-	{
87
-		if ( (*it).presence > best.presence )
88
-			best = (*it);
89
-		if ( (*it).appId == ap.appId )
90
-			existing = it;
91
-		++it;
92
-	}
93
-	
94
-	if ( ap.presence > best.presence ||
95
-      best.appId == ap.appId )
96
-		bestChanged = true;
97
-	
98
-	if ( existing != itEnd )
99
-	{
100
-		remove( existing );
101
-		append( ap );
102
-	}
103
-	return bestChanged;
104
-}
105
-
106
-AppPresenceCurrent ContactPresenceListCurrent::best()
107
-{
108
-	AppPresenceCurrent best;
109
-	best.presence = -1;
110
-	ContactPresenceListCurrent::iterator it = begin();
111
-	const ContactPresenceListCurrent::iterator itEnd = end();
112
-	while ( it != itEnd )
113
-	{
114
-		if ( (*it).presence > best.presence )
115
-			best = (*it);
116
-		++it;
117
-	}
118
-	// if it's still -1 here, we have no presence data, so we return Unknown
119
-	if ( best.presence == -1 )
120
-		best.presence = 0;
121
-	return best;
122
-}
123
-
124
-// int bestPresence( AppPresence* ap )
125
-// {
126
-// 	Q_ASSERT( ap );
127
-// 	AppPresence::const_iterator it;
128
-// 	it = ap->begin();
129
-// 	int best = 0; // unknown
130
-// 	if ( it != ap->end() )
131
-// 	{
132
-// 		best = it.data();
133
-// 		++it;
134
-// 		for ( ; it != ap->end(); ++it )
135
-// 		{
136
-// 			if ( it.data() > best )
137
-// 				best = it.data(); 
138
-// 		}
139
-// 	}
140
-// 	return best;
141
-// }
142
-// 
143
-// TQCString bestAppId( AppPresence* ap )
144
-// {
145
-// 	Q_ASSERT( ap );
146
-// 	AppPresence::const_iterator it;
147
-// 	TQCString bestAppId;
148
-// 	it = ap->begin();
149
-// 	if ( it != ap->end() )
150
-// 	{
151
-// 		int best = it.data();
152
-// 		bestAppId = it.key();
153
-// 		++it;
154
-// 		for ( ; it != ap->end(); ++it )
155
-// 		{
156
-// 			if ( it.data() > best )
157
-// 			{
158
-// 				best = it.data();
159
-// 				bestAppId = it.key();
160
-// 			}
161
-// 		}
162
-// 	}
163
-// 	return bestAppId;
164
-// }
165
-
166
-KIMProxy * KIMProxy::instance( DCOPClient * client ) 
167
-{
168
-	if ( client )
169
-	{
170
-		if ( !s_instance )
171
-			_staticDeleter.setObject( s_instance, new KIMProxy( client ) );
172
-		return s_instance;
173
-	}
174
-	else
175
-		return 0L;
176
-}
177
-
178
-KIMProxy::KIMProxy( DCOPClient* dc ) : DCOPObject( "KIMProxyIface" ), TQObject(), d( new Private )
179
-{
180
-	m_im_client_stubs.setAutoDelete( true );
181
-
182
-	d->dc = dc;
183
-	m_initialized = false;
184
-	connect( d->dc, TQT_SIGNAL( applicationRemoved( const TQCString& ) ) , this, TQT_SLOT( unregisteredFromDCOP( const TQCString& ) ) );
185
-	connect( d->dc, TQT_SIGNAL( applicationRegistered( const TQCString& ) ) , this, TQT_SLOT( registeredToDCOP( const TQCString& ) ) );
186
-	d->dc->setNotifications( true );
187
-
188
-	d->presence_strings.append( "Unknown" );
189
-	d->presence_strings.append( "Offline" );
190
-	d->presence_strings.append( "Connecting" );
191
-	d->presence_strings.append( "Away" );
192
-	d->presence_strings.append( "Online" );
193
-	
194
-	d->presence_icons.append( "presence_unknown" );
195
-	d->presence_icons.append( "presence_offline" );
196
-	d->presence_icons.append( "presence_connecting" );
197
-	d->presence_icons.append( "presence_away" );
198
-	d->presence_icons.append( "presence_online" );
199
-	
200
-	//TQCString senderApp = "Kopete";
201
-	//TQCString senderObjectId = "KIMIface";
202
-	TQCString method = "contactPresenceChanged( TQString, TQCString, int )";
203
-	//TQCString receiverObjectId = "KIMProxyIface";
204
-	
205
-	// FIXME: make this work when the sender object id is set to KIMIFace
206
-	if ( !connectDCOPSignal( 0, 0, method, method, false ) )
207
-		kdWarning() << "Couldn't connect DCOP signal. Won't receive any status notifications!" << endl;
208
-}
209
-
210
-KIMProxy::~KIMProxy( )
211
-{
212
-	//d->dc->setNotifications( false );
213
-}
214
-
215
-bool KIMProxy::initialize()
216
-{
217
-	if ( !m_initialized )
218
-	{
219
-		m_initialized = true; // we should only do this once, as registeredToDCOP() will catch any new starts
220
-		// So there is no error from a failed query when using tdelibs 3.2, which don't have this servicetype
221
-		if ( KServiceType::serviceType( IM_SERVICE_TYPE ) ) 
222
-		{
223
-			//kdDebug( 790 ) << k_funcinfo << endl;
224
-			TQCString dcopObjectId = "KIMIface";
225
-	
226
-			// see what apps implementing our service type are out there
227
-			KService::List offers = KServiceType::offers( IM_SERVICE_TYPE );
228
-			KService::List::iterator offer;
229
-			typedef TQValueList<TQCString> QCStringList;
230
-			QCStringList registeredApps = d->dc->registeredApplications();
231
-			QCStringList::iterator app;
232
-			const QCStringList::iterator end = registeredApps.end();
233
-			// for each registered app
234
-			for ( app = registeredApps.begin(); app != end; ++app )
235
-			{
236
-				//kdDebug( 790 ) << " considering: " << *app << endl;
237
-				//for each offer
238
-				for ( offer = offers.begin(); offer != offers.end(); ++offer )
239
-				{
240
-					TQCString dcopService = (*offer)->property("X-DCOP-ServiceName").toString().latin1();
241
-					if ( !dcopService.isEmpty() )
242
-					{
243
-						//kdDebug( 790 ) << " is it: " << dcopService << "?" << endl;
244
-						// get the application name ( minus any process ID )
245
-						TQCString instanceName =  (*app).left( dcopService.length() );
246
-						// if the application implements the dcop service, add it 
247
-						if ( instanceName == dcopService )
248
-						{
249
-							m_apps_available = true;
250
-							//kdDebug( 790 ) << " app name: " << (*offer)->name() << ", has instance " << *app << ", dcopService: " << dcopService << endl;
251
-							if ( !m_im_client_stubs.find( dcopService ) )
252
-							{
253
-								kdDebug( 790 ) << "App " << *app << ", dcopObjectId " << dcopObjectId << " found, using it for presence info." << endl;
254
-								m_im_client_stubs.insert( *app, new KIMIface_stub( d->dc, *app, dcopObjectId ) );
255
-								pollApp( *app );
256
-							}
257
-						}
258
-					}
259
-				}
260
-			}
261
-		}
262
-	}
263
-	return !m_im_client_stubs.isEmpty();
264
-}
265
-
266
-void KIMProxy::registeredToDCOP( const TQCString& appId )
267
-{
268
-	//kdDebug( 790 ) << k_funcinfo << " appId '" << appId << "'" << endl;
269
-	// check that appId implements our service
270
-	// if the appId ends with a number, i.e. a pid like in foobar-12345,
271
-	if ( appId.isEmpty() )
272
-		return;
273
-
274
-	bool newApp = false;
275
-	// get an up to date list of offers in case a new app was installed
276
-	// and check each of the offers that implement the service type we're looking for,
277
-	// to see if any of them are the app that just registered
278
-	const KService::List offers = KServiceType::offers( IM_SERVICE_TYPE );
279
-	KService::List::const_iterator it;
280
-	for ( it = offers.begin(); it != offers.end(); ++it )
281
-	{
282
-		TQCString dcopObjectId = "KIMIface";
283
-		TQCString dcopService = (*it)->property("X-DCOP-ServiceName").toString().latin1();
284
-		if ( appId.left( dcopService.length() ) == dcopService )
285
-		{
286
-			// if it's not already known, insert it
287
-			if ( !m_im_client_stubs.find( appId ) )
288
-			{
289
-				newApp = true;
290
-				kdDebug( 790 ) << "App: " << appId << ", dcopService: " << dcopService << " started, using it for presence info."<< endl;
291
-				m_im_client_stubs.insert( appId, new KIMIface_stub( d->dc, appId, dcopObjectId ) );
292
-			}
293
-		}
294
-		//else
295
-		//	kdDebug( 790 ) << "App doesn't implement our ServiceType" << endl;
296
-	}
297
-	//if ( newApp )
298
-	//	emit sigPresenceInfoExpired();
299
-}
300
-
301
-void KIMProxy::unregisteredFromDCOP( const TQCString& appId )
302
-{
303
-	//kdDebug( 790 ) << k_funcinfo << appId << endl;
304
-	if ( m_im_client_stubs.find( appId ) )
305
-	{
306
-		kdDebug( 790 ) << appId << " quit, removing its presence info." << endl;
307
-		
308
-		PresenceStringMap::Iterator it = d->presence_map.begin();
309
-		const PresenceStringMap::Iterator end = d->presence_map.end();
310
-		for ( ; it != end; ++it )
311
-		{
312
-			ContactPresenceListCurrent list = it.data();
313
-			ContactPresenceListCurrent::iterator cpIt = list.begin();
314
-			while( cpIt != list.end() )
315
-			{
316
-				ContactPresenceListCurrent::iterator gone = cpIt++;
317
-				if ( (*gone).appId == appId )
318
-				{
319
-					list.remove( gone );
320
-				}
321
-			}
322
-		}
323
-		m_im_client_stubs.remove( appId );
324
-		emit sigPresenceInfoExpired();
325
-	}
326
-}
327
-
328
-void KIMProxy::contactPresenceChanged( TQString uid, TQCString appId, int presence )
329
-{
330
-	// update the presence map
331
-	//kdDebug( 790 ) << k_funcinfo << "uid: " << uid << " appId: " << appId << " presence " << presence << endl;
332
-	ContactPresenceListCurrent current;
333
-	current = d->presence_map[ uid ];
334
-  //kdDebug( 790 ) << "current best presence from : " << current.best().appId << " is: " << current.best().presence << endl;
335
-	AppPresenceCurrent newPresence;
336
-	newPresence.appId = appId;
337
-	newPresence.presence = presence;
338
-
339
-	if ( current.update( newPresence ) )
340
-	{
341
-		d->presence_map.insert( uid, current );
342
-		emit sigContactPresenceChanged( uid );
343
-	}
344
-}
345
-
346
-int KIMProxy::presenceNumeric( const TQString& uid )
347
-{
348
-	AppPresenceCurrent ap;
349
-	ap.presence = 0;
350
-	if ( initialize() )
351
-	{
352
-		ContactPresenceListCurrent presence = d->presence_map[ uid ];
353
-		ap = presence.best();
354
-	}
355
-	return ap.presence;
356
-}
357
-
358
-TQString KIMProxy::presenceString( const TQString& uid )
359
-{
360
-	AppPresenceCurrent ap;
361
-	ap.presence = 0;
362
-	if ( initialize() )
363
-	{
364
-		ContactPresenceListCurrent presence = d->presence_map[ uid ];
365
-		ap = presence.best();
366
-	}
367
-	if ( ap.appId.isEmpty() )
368
-		return TQString::null;
369
-	else
370
-		return d->presence_strings[ ap.presence ];
371
-}
372
-
373
-TQPixmap KIMProxy::presenceIcon( const TQString& uid )
374
-{
375
-	AppPresenceCurrent ap;
376
-	ap.presence = 0;
377
-	if ( initialize() )
378
-	{
379
-		ContactPresenceListCurrent presence = d->presence_map[ uid ];
380
-		ap = presence.best();
381
-	}
382
-	if ( ap.appId.isEmpty() )
383
-	{
384
-		//kdDebug( 790 ) << k_funcinfo << "returning a null TQPixmap because we were asked for an icon for a uid we know nothing about" << endl;
385
-		return TQPixmap();
386
-	}
387
-	else
388
-	{
389
-		//kdDebug( 790 ) << k_funcinfo << "returning this: " << d->presence_icons[ ap.presence ] << endl;
390
-		return SmallIcon( d->presence_icons[ ap.presence ]);
391
-	}
392
-}
393
-
394
-TQStringList KIMProxy::allContacts()
395
-{
396
-	TQStringList value = d->presence_map.keys();
397
-	return value;
398
-}
399
-
400
-TQStringList KIMProxy::reachableContacts()
401
-{
402
-	TQStringList value;
403
-	
404
-	if ( initialize() )
405
-	{
406
-		TQDictIterator<KIMIface_stub> it( m_im_client_stubs );
407
-		for ( ; it.current(); ++it )
408
-		{
409
-			value += it.current()->reachableContacts( );
410
-		}
411
-	}
412
-	return value;
413
-}
414
-
415
-TQStringList KIMProxy::onlineContacts()
416
-{
417
-	TQStringList value;
418
-	PresenceStringMap::iterator it = d->presence_map.begin();
419
-	const PresenceStringMap::iterator end= d->presence_map.end();
420
-	for ( ; it != end; ++it )
421
-		if ( it.data().best().presence > 2 /*Better than Connecting, ie Away or Online*/ )
422
-			value.append( it.key() );
423
-		
424
-	return value;
425
-}
426
-
427
-TQStringList KIMProxy::fileTransferContacts()
428
-{
429
-	TQStringList value;
430
-	
431
-	if ( initialize() )
432
-	{
433
-		TQDictIterator<KIMIface_stub> it( m_im_client_stubs );
434
-		for ( ; it.current(); ++it )
435
-		{
436
-			value += it.current()->fileTransferContacts( );
437
-		}
438
-	}
439
-	return value;
440
-}
441
-
442
-bool KIMProxy::isPresent( const TQString& uid )
443
-{
444
-	return ( !d->presence_map[ uid ].isEmpty() );
445
-}
446
-
447
-TQString KIMProxy::displayName( const TQString& uid )
448
-{
449
-	TQString name;
450
-	if ( initialize() )
451
-	{
452
-		if ( KIMIface_stub* s = stubForUid( uid ) )
453
-			name = s->displayName( uid );
454
-	}
455
-	//kdDebug( 790 ) << k_funcinfo << name << endl;
456
-    return name;
457
-}
458
-
459
-bool KIMProxy::canReceiveFiles( const TQString & uid )
460
-{
461
-	if ( initialize() )
462
-	{
463
-		if ( KIMIface_stub* s = stubForUid( uid ) )
464
-			return s->canReceiveFiles( uid );
465
-	}
466
-	return false;
467
-}
468
-
469
-bool KIMProxy::canRespond( const TQString & uid )
470
-{
471
-	if ( initialize() )
472
-	{
473
-		if ( KIMIface_stub* s = stubForUid( uid ) )
474
-			return s->canRespond( uid );
475
-	}
476
-	return false;
477
-}
478
-
479
-TQString KIMProxy::context( const TQString & uid )
480
-{
481
-	if ( initialize() )
482
-	{
483
-		if ( KIMIface_stub* s = stubForUid( uid ) )
484
-			return s->context( uid );
485
-	}
486
-	return TQString::null;
487
-}
488
-	
489
-void KIMProxy::chatWithContact( const TQString& uid )
490
-{
491
-	if ( initialize() )
492
-	{
493
-		if ( KIMIface_stub* s = stubForUid( uid ) )
494
-		{
495
-			kapp->updateRemoteUserTimestamp( s->app() );
496
-			s->chatWithContact( uid );
497
-		}
498
-	}
499
-	return;
500
-}
501
-
502
-void KIMProxy::messageContact( const TQString& uid, const TQString& message )
503
-{
504
-	if ( initialize() )
505
-	{
506
-		if ( KIMIface_stub* s = stubForUid( uid ) )
507
-		{
508
-			kapp->updateRemoteUserTimestamp( s->app() );
509
-			s->messageContact( uid, message );
510
-		}
511
-	}
512
-	return;
513
-}
514
-
515
-void KIMProxy::sendFile(const TQString &uid, const KURL &sourceURL, const TQString &altFileName, uint fileSize )
516
-{
517
-	if ( initialize() )
518
-	{
519
-		TQDictIterator<KIMIface_stub> it( m_im_client_stubs );
520
-		for ( ; it.current(); ++it )
521
-		{
522
-			if ( it.current()->canReceiveFiles( uid ) )
523
-			{
524
-				kapp->updateRemoteUserTimestamp( it.current()->app() );
525
-				it.current()->sendFile( uid, sourceURL, altFileName, fileSize );
526
-				break;
527
-			}
528
-		}	
529
-	}
530
-	return;
531
-}
532
-
533
-bool KIMProxy::addContact( const TQString &contactId, const TQString &protocol )
534
-{
535
-	if ( initialize() )
536
-	{
537
-		if ( KIMIface_stub* s = stubForProtocol( protocol ) )
538
-		return s->addContact( contactId, protocol );
539
-	}
540
-	return false;
541
-}
542
-
543
-TQString KIMProxy::locate( const TQString & contactId, const TQString & protocol )
544
-{
545
-	if ( initialize() )
546
-	{
547
-		if ( KIMIface_stub* s = stubForProtocol( protocol ) )
548
-		return s->locate( contactId, protocol );
549
-	}
550
-	return TQString::null;
551
-}
552
-
553
-bool KIMProxy::imAppsAvailable()
554
-{
555
-	return ( !m_im_client_stubs.isEmpty() );
556
-}
557
-
558
-bool KIMProxy::startPreferredApp()
559
-{
560
-	TQString preferences = TQString("[X-DCOP-ServiceName] = '%1'").arg( preferredApp() );
561
-	// start/find an instance of DCOP/InstantMessenger
562
-	TQString error;
563
-	TQCString dcopService;
564
-	// Get a preferred IM client.
565
-	// The app will notify itself to us using registeredToDCOP, so we don't need to record a stub for it here
566
-	// FIXME: error in preferences, see debug output
567
-	preferences = TQString::null;
568
-	int result = KDCOPServiceStarter::self()->findServiceFor( IM_SERVICE_TYPE, TQString::null, preferences, &error, &dcopService );
569
-
570
-	kdDebug( 790 ) << k_funcinfo << "error was: " << error << ", dcopService: " << dcopService << endl;
571
-
572
-	return ( result == 0 );
573
-}
574
-
575
-
576
-void KIMProxy::pollAll( const TQString &uid )
577
-{
578
-/*	// We only need to call this function if we don't have any data at all
579
-	// otherwise, the data will be kept fresh by received presence change
580
-	// DCOP signals
581
-	if ( !d->presence_map.contains( uid ) )
582
-	{
583
-		AppPresence *presence = new AppPresence();
584
-		// record current presence from known clients
585
-		TQDictIterator<KIMIface_stub> it( m_im_client_stubs );
586
-		for ( ; it.current(); ++it )
587
-		{
588
-			presence->insert( it.currentKey().ascii(), it.current()->presenceStatus( uid ) ); // m_im_client_stubs has qstring keys...
589
-		}
590
-		d->presence_map.insert( uid, presence );
591
-	}*/
592
-}
593
-
594
-void KIMProxy::pollApp( const TQCString & appId )
595
-{
596
-	//kdDebug( 790 ) << k_funcinfo << endl;
597
-	KIMIface_stub * appStub = m_im_client_stubs[ appId ];
598
-	TQStringList contacts = m_im_client_stubs[ appId ]->allContacts();
599
-	TQStringList::iterator it = contacts.begin();
600
-	TQStringList::iterator end = contacts.end();
601
-	for ( ; it != end; ++it )
602
-	{
603
-		ContactPresenceListCurrent current = d->presence_map[ *it ];
604
-		AppPresenceCurrent ap;
605
-		ap.appId = appId;
606
-		ap.presence = appStub->presenceStatus( *it );
607
-		current.append( ap );
608
-
609
-		d->presence_map.insert( *it, current );
610
-		if ( current.update( ap ) )
611
-			emit sigContactPresenceChanged( *it );
612
-		//kdDebug( 790 ) << " uid: " << *it << " presence: " << ap.presence << endl;
613
-	}
614
-}
615
-
616
-KIMIface_stub * KIMProxy::stubForUid( const TQString &uid )
617
-{
618
-	// get best appPresence
619
-	AppPresenceCurrent ap = d->presence_map[ uid ].best();
620
-	// look up the presence string from that app
621
-		return m_im_client_stubs.find( ap.appId );
622
-}
623
-
624
-KIMIface_stub * KIMProxy::stubForProtocol( const TQString &protocol)
625
-{
626
-	KIMIface_stub * app;
627
-	// see if the preferred client supports this protocol
628
-	TQString preferred = preferredApp();
629
-	if ( ( app = m_im_client_stubs.find( preferred ) ) )
630
-	{
631
-		if ( app->protocols().grep( protocol ).count() > 0 )
632
-			return app;
633
-	}
634
-	// preferred doesn't do this protocol, try the first of the others that says it does
635
-	TQDictIterator<KIMIface_stub> it( m_im_client_stubs );
636
-	for ( ; it.current(); ++it )
637
-	{
638
-		if ( it.current()->protocols().grep( protocol ).count() > 0 )
639
-			return it.current();
640
-	}	
641
-	return 0L;
642
-}
643
-
644
-TQString KIMProxy::preferredApp()
645
-{
646
-	TDEConfig *store = new KSimpleConfig( IM_CLIENT_PREFERENCES_FILE );
647
-	store->setGroup( IM_CLIENT_PREFERENCES_SECTION );
648
-	TQString preferredApp = store->readEntry( IM_CLIENT_PREFERENCES_ENTRY );
649
-	//kdDebug( 790 ) << k_funcinfo << "found preferred app: " << preferredApp << endl;
650
-	return preferredApp;
651
-}	
652
-
653
-#include "kimproxy.moc"

+ 0
- 654
interfaces/kimproxy/library/kimproxy.h View File

@@ -1,654 +0,0 @@
1
-/*
2
-    kimproxy.h
3
-
4
-    IM service library for KDE
5
-
6
-    Copyright (c) 2004 Will Stephenson   <lists@stevello.free-online.co.uk>
7
-
8
-    This library is free software; you can redistribute it and/or
9
-    modify it under the terms of the GNU Library General Public
10
-    License as published by the Free Software Foundation; either
11
-    version 2 of the License, or (at your option) any later version.
12
-
13
-    This library is distributed in the hope that it will be useful,
14
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
15
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16
-    Library General Public License for more details.
17
-
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
20
-    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
-    Boston, MA 02110-1301, USA.
22
-*/
23
-
24
-#ifndef KIMPROXY_H
25
-#define KIMPROXY_H
26
-
27
-#include <tqdict.h>
28
-#include <tqmap.h>
29
-#include <tqptrdict.h>
30
-#include <tqstringlist.h>
31
-
32
-
33
-#define IM_SERVICE_TYPE "DCOP/InstantMessenger"
34
-#define IM_CLIENT_PREFERENCES_FILE "default_components"
35
-#define IM_CLIENT_PREFERENCES_SECTION "InstantMessenger"
36
-#define IM_CLIENT_PREFERENCES_ENTRY "imClient"
37
-
38
-#include "kimproxyiface.h"
39
-
40
-class DCOPClient;
41
-class KIMIface_stub;
42
-class KURL;
43
-class ContactPresenceListCurrent;
44
-
45
-/** FIXME: remove for KDE4, binary compability again. */
46
-typedef TQMap<TQCString, int> AppPresence; 		// appId->presence; contains all applications' ideas of a user's presence
47
-typedef TQDict<AppPresence> PresenceMap;			// uid->AppPresence; contains a AppPresences for all users
48
-/** FIXME: remove presenceMap and call this presenceMap in KDE4.  This hack is for binary compatibility */
49
-typedef TQMap<TQString, ContactPresenceListCurrent> PresenceStringMap;
50
-
51
-/**
52
- * @brief Provides access to instant messenger programs which implement KDE's
53
- *        instant messanger interface KIMIface
54
- *
55
- * This class provides an easy-to-use interface to all running instant
56
- * messengers or chat programs that implement KIMIface.
57
- *
58
- * It works simultaneously with any running programs that implement the
59
- * ServiceType @c DCOP/InstantMessenger.
60
- *
61
- * IM-contacts are identified using unique identifier strings (UID) used by
62
- * KDE's address book framework KABC.
63
- * However the use of the address book API is optional, KIMProxy provides
64
- * methods to fetch lists of available contact UIDs from the applications.
65
- * If a UID is reachable with more than one program, KIMProxy aggregates the
66
- * available information and presents the 'best' presence.  For example, for a
67
- * contact who can be seen to be @c Away in @c IRC on program A but @c Online
68
- * using @c ICQ on program B, the information from program B will be used.
69
- *
70
- * KIMProxy is designed for simple information in a wide number of cases, not
71
- * for detailed messaging.
72
- *
73
- * The class is implemented as a singleton, so whenever you need access to
74
- * one of its methods, just retrieve the single instance using instance().
75
- * The following code snippet demonstrated how to send a message to all
76
- * reachable IM-contacts:
77
- * @code
78
- * // get proxy instance
79
- * KIMProxy* proxy = KIMProxy::instance();
80
- *
81
- * // check if there are suitable applications reachable
82
- * if (!proxy->initialize()) return;
83
- *
84
- * TQString message = "Hi!\nHow are you on this wonderful day?";
85
- *
86
- * // iterate over the list of reachable contacts
87
- * TQStringList reachableContacts = proxy->reachableContacts();
88
- * for (TQStringList::const_iterator it = reachableContacts.begin();
89
- *      it != reachableContacts.end(); ++it)
90
- * {
91
-       proxy->messageContact(*it, message);
92
- * }
93
- * @endcode
94
- *
95
- * @note While it is possible to communicate with each of those application's
96
- * by DCOP using KIMProxy has the advantage of communicating with all
97
- * applications simultaneously and thus getting an augmented view of
98
- * availability, capability and presence (online status) of IM-contacts.
99
- *
100
- * @see KIMIface
101
- * @see KABC::AddressBook
102
- * @see KABC::Addressee
103
- *
104
- * @since 3.3
105
- * @author Will Stephenson <lists@stevello.free-online.co.uk>
106
- */
107
-class KIMPROXY_EXPORT KIMProxy : public TQObject, virtual public KIMProxyIface
108
-{
109
-	Q_OBJECT
110
-	struct Private;
111
-
112
-	template<class> friend class KStaticDeleter;
113
-	~KIMProxy();
114
-
115
-	public:
116
-		/**
117
-		 * @brief Obtain an instance of KIMProxy
118
-		 *
119
-		 * Creates a new instance if it is called for the first time.
120
-		 * Call initialize() to check if there are applications available for
121
-		 * communication.
122
-		 *
123
-		 * @note KIMProxy uses DCOPClient::setNotifications() to make sure
124
-		 * it updates its information about IM applications it interacts with,
125
-		 * e.g. that it gets notified about newly available applications or
126
-		 * about applications exiting
127
-		 *
128
-		 * @param client your application's DCOP client
129
-		 * @return the singleton instance of this class
130
-		 */
131
-		static KIMProxy * instance( DCOPClient * client );
132
-
133
-		/**
134
-		 * @brief Get the proxy ready to connect
135
-		 *
136
-		 * Discover any running IM clients and setup communication handlers for
137
-		 * them. The list of available clients is updated automatically
138
-		 * through notification about added or removed DCOP applications as
139
-		 * provided by DCOPClient.
140
-		 *
141
-		 * It is safe to call this method more than once, initialization only
142
-		 * occurs at the first time.
143
-		 *
144
-		 * @return whether the proxy is ready to use.
145
-		 *         @c false if there are no suitable apps running
146
-		 */
147
-		bool initialize();
148
-
149
-		/**
150
-		 * @brief Obtain a list of IM-contacts known to IM-applications
151
-		 *
152
-		 * Returns a list of KABC UIDs gathered by merging the lists of
153
-		 * each application the proxy can communicate with.
154
-		 * The method uses cached information to make it fast and not
155
-		 * require actually communicating with the applications every time
156
-		 * it is called.
157
-		 *
158
-		 * @return a list of KABC UIDs known to any IM-application
159
-		 *
160
-		 * @see reachableContacts()
161
-		 * @see onlineContacts()
162
-		 * @see fileTransferContacts()
163
-		 * @see isPresent()
164
-		 * @see KABC::Addressee::uid()
165
-		 */
166
-		TQStringList allContacts();
167
-
168
-		/**
169
-		 * @brief Obtain a list of IM-contacts that are currently reachable
170
-		 *
171
-		 * Returns a list of KABC UIDs gathered by merging the lists of
172
-		 * each application the proxy can communicate with.
173
-		 *
174
-		 * @return a list of KABC UIDs who can receive a message, even if offline
175
-		 *
176
-		 * @see allContacts()
177
-		 * @see onlineContacts()
178
-		 * @see fileTransferContacts()
179
-		 * @see messageContact()
180
-		 * @see KABC::Addressee::uid()
181
-		 */
182
-		TQStringList reachableContacts();
183
-
184
-		/**
185
-		 * @brief Obtain a list of IM-contacts that are currently online
186
-		 *
187
-		 * Returns a list of KABC UIDs gathered by merging the lists of
188
-		 * each application the proxy can communicate with.
189
-		 * The method uses cached information to make it fast and not
190
-		 * require actually communicating with the applications every time
191
-		 * it is called.
192
-		 *
193
-		 * @return a list of KABC UIDs who are online with unspecified presence
194
-		 *
195
-		 * @see allContacts()
196
-		 * @see reachableContacts()
197
-		 * @see fileTransferContacts()
198
-		 * @see messageContact()
199
-		 * @see chatWithContact()
200
-		 * @see KABC::Addressee::uid()
201
-		 */
202
-		TQStringList onlineContacts();
203
-
204
-		/**
205
-		 * @brief Obtain a list of IM-contacts who may receive file transfers
206
-		 *
207
-		 * Returned IM-contacts might not be capable of receiving file
208
-		 * tranfers due to limitations of their clients or because they are
209
-		 * behind a firewall.
210
-		 * KIMProxy doesn't have the possibilities to discover this and will
211
-		 * list them as well.
212
-		 *
213
-		 * Returns a list of KABC UIDs gathered by merging the lists of
214
-		 * each application the proxy can communicate with.
215
-		 *
216
-		 * @return a list of KABC UIDs capable of file transfer
217
-		 *
218
-		 * @see allContacts()
219
-		 * @see reachableContacts()
220
-		 * @see onlineContacts()
221
-		 * @see canReceiveFiles()
222
-		 * @see KABC::Addressee::uid()
223
-		 */
224
-		TQStringList fileTransferContacts();
225
-
226
-		/**
227
-		 * @brief Confirm if a given contact is known to the proxy
228
-		 *
229
-		 * A contact is known to the proxy if it is know to at least one
230
-		 * IM-application the proxy is communicating with.
231
-		 *
232
-		 * The method uses cached information to make it fast and not
233
-		 * require actually communicating with the applications every time
234
-		 * it is called.
235
-		 *
236
-		 * @param uid the KABC UID you are interested in
237
-		 * @return whether any IM-program knows of this KABC UID
238
-		 *
239
-		 * @see allContacts()
240
-		 * @see presenceString()
241
-		 * @see presenceNumeric()
242
-		 * @see KABC::Addressee::uid()
243
-		 */
244
-		bool isPresent( const TQString& uid );
245
-
246
-		/**
247
-		 * @brief Obtain the proxy's idea of the contact's display name
248
-		 *
249
-		 * If the given KABC UID is known to more than one IM-application
250
-		 * the result of the application which has the best presence for the
251
-		 * contact is taken.
252
-		 * For example if a contact is @c Online on ICQ and @c Away on AIM, the
253
-		 * value returned by the application providing ICQ is taken.
254
-		 *
255
-		 * Useful if KABC lookups may be too slow.
256
-		 *
257
-		 * @param uid the KABC UID you are interested in
258
-		 * @return the corresponding display name or TQString:null if the
259
-		 *         UID is unknown
260
-		 *
261
-		 * @see isPresent()
262
-		 * @see presenceString()
263
-		 * @see presenceNumeric()
264
-		 * @see KABC::Addressee::uid()
265
-		 */
266
-		TQString displayName( const TQString& uid );
267
-
268
-		/**
269
-		 * @brief Obtain the IM presence as a number for the specified contact
270
-		 *
271
-		 * Returns one of the following values depending on the given contact's
272
-		 * presence:
273
-		 * - 0 - @c Unknown: for contacts where you can not use any of the
274
-		 *   other values
275
-		 *
276
-		 * - 1 - @c Offline: for contacts that are offline, i.e. not connected
277
-		 *   to their IM-service.
278
-		 *
279
-		 * - 2 - @c Connecting
280
-		 *
281
-		 * - 3 - @c Away: for contacts that are connected to their IM-service
282
-		 *   but not @c Online
283
-		 *
284
-		 * - 4 - @c Online
285
-		 *
286
-		 * If the given KABC UID is known to more than one IM-application
287
-		 * the result of the application which has the best presence for the
288
-		 * contact is taken.
289
-		 * For example if a contact is @c Online on ICQ and Away on AIM, the
290
-		 * value returned by the application providing ICQ is taken.
291
-		 *
292
-		 * The method uses cached information to make it fast and not
293
-		 * require actually communicating with the applications every time
294
-		 * it is called.
295
-		 *
296
-		 * @param uid the KABC UID you want the presence for
297
-		 * @return a numeric representation of presence - currently one of
298
-		 *         0 (Unknown), 1 (Offline), 2 (Connecting), 3 (Away),
299
-		 *         4 (Online). Returns 0 if the given UID is unknown
300
-		 *
301
-		 * @see isPresent()
302
-		 * @see presenceString()
303
-		 * @see presenceIcon()
304
-		 * @see KIMIface::presenceStatus()
305
-		 * @see KABC::Addressee::uid()
306
-		 */
307
-		int presenceNumeric( const TQString& uid );
308
-
309
-		/**
310
-		 * @brief Obtain the IM presence as a i18ned string for the specified
311
-		 *        contact
312
-		 *
313
-		 * The presence string is one of the following:
314
-		 * - i18n("Unknown")
315
-		 * - i18n("Offline")
316
-		 * - i18n("Connecting")
317
-		 * - i18n("Away")
318
-		 * - i18n("Online")
319
-		 *
320
-		 * If the given KABC UID is known to more than one IM-application
321
-		 * the result of the application which has the best presence for the
322
-		 * contact is taken.
323
-		 * For example if a contact is @c Online on ICQ and Away on AIM, the
324
-		 * value returned by the application providing ICQ is taken.
325
-		 *
326
-		 * @note The presence string is created based on the numerical
327
-		 *       presence value returned by the applications. It currently
328
-		 *       does not return the presence strings used by the applications.
329
-		 *
330
-		 * The method uses cached information to make it fast and not
331
-		 * require actually communicating with the applications every time
332
-		 * it is called.
333
-		 *
334
-		 * @param uid the KABC UID you want the presence for
335
-		 * @return the i18ned string describing the contact's presence or
336
-		 *         TQString::null if the UID is unknown
337
-		 *
338
-		 * @see isPresent()
339
-		 * @see presenceNumeric()
340
-		 * @see presenceIcon()
341
-		 * @see KABC::Addressee::uid()
342
-		 */
343
-		TQString presenceString( const TQString& uid );
344
-
345
-		/**
346
-		 * @brief Obtain the icon representing the IM presence for the
347
-		 *        specified contact
348
-		 *
349
-		 * If the given KABC UID is known to more than one IM-application
350
-		 * the result of the application which has the best presence for the
351
-		 * contact is taken.
352
-		 * For example if a contact is @c Online on ICQ and Away on AIM, the
353
-		 * value returned by the application providing ICQ is taken.
354
-		 *
355
-		 * @note The presence icon is chosen based on the numerical
356
-		 *       presence value returned by the applications. It currently
357
-		 *       does not return the presence icon used by the applications.
358
-		 *
359
-		 * The method uses cached information to make it fast and not
360
-		 * require actually communicating with the applications every time
361
-		 * it is called.
362
-		 *
363
-		 * @param uid the KABC UID you want the presence icon for
364
-		 * @return a pixmap representing the contact's presence or a null
365
-		 *         pixmap if the contact is unknown. See TQPixmap::isNull()
366
-		 *
367
-		 * @see isPresent()
368
-		 * @see presenceString()
369
-		 * @see presenceNumeric()
370
-		 * @see KABC::Addressee::uid()
371
-		 */
372
-		TQPixmap presenceIcon( const TQString& uid );
373
-
374
-		/**
375
-		 * @brief Indicate if a given contact can receive files
376
-		 *
377
-		 * If the given KABC UID is known to more than one IM-application
378
-		 * the result of the application which has the best presence for the
379
-		 * contact is taken.
380
-		 * For example if a contact is @c Online on ICQ and Away on AIM, the
381
-		 * value returned by the application providing ICQ is taken.
382
-		 *
383
-		 * @param uid the KABC UID you want to the file transfer capability for
384
-		 * @return whether the specified contact can receive files
385
-		 *
386
-		 * @see fileTransferContacts()
387
-		 * @see KABC::Addressee::uid()
388
-		 */
389
-		bool canReceiveFiles( const TQString & uid );
390
-
391
-		/**
392
-		 * @brief Indicate if a given contact will be able to respond
393
-		 *
394
-		 * Some media are unidirectional (e.g., sending SMS via a web
395
-		 * interface).
396
-		 * This refers to the contact's ability to respond as defined by the
397
-		 * medium, not by their presence.
398
-		 *
399
-		 * Someone may appear offline (SMS has no presence) to you but in fact
400
-		 * be able to respond.
401
-		 *
402
-		 * If the given KABC UID is known to more than one IM-application
403
-		 * the result of the application which has the best presence for the
404
-		 * contact is taken.
405
-		 * For example if a contact is @c Online on ICQ and Away on AIM, the
406
-		 * value returned by the application providing ICQ is taken.
407
-		 *
408
-		 * @param uid the KABC UID you are interested in
409
-		 * @return whether the specified contact can respond
410
-		 *
411
-		 * @see isPresent()
412
-		 * @see KABC::Addressee::uid()
413
-		 */
414
-		bool canRespond( const TQString & uid );
415
-
416
-		/**
417
-		 * @brief Obtain the KABC UID corresponding to the given IM address
418
-		 *
419
-		 * @param contactId the protocol specific identifier for the contact,
420
-		 *        e.g. UIN for ICQ, screenname for AIM, nick for IRC
421
-		 * @param protocol the IM protocol/service to check.
422
-		 *        See KIMIface::protocols()
423
-		 * @return the KABC UID for the given contact or @c TQString::null if
424
-		 *         not found or either input stream was empty or the protocol
425
-		 *         is not supported
426
-		 *
427
-		 * @see KIMIface::protocols()
428
-		 * @see addContact()
429
-		 * @see isPresent()
430
-		 * @see KABC::Addressee::uid()
431
-		 */
432
-		TQString locate( const TQString & contactId, const TQString & protocol );
433
-
434
-		/**
435
-		 * @brief Obtain the given contact's current context (home, work, or
436
-		 *        any)
437
-		 *
438
-		 * Not all IM services/protocols support the concept of contexts. If the
439
-		 * given UID maps to such a service, @c TQString::null will be returned
440
-		 *
441
-		 * If the given KABC UID is known to more than one IM-application
442
-		 * the result of the application which has the best presence for the
443
-		 * contact is taken.
444
-		 * For example if a contact is @c Online on ICQ and Away on AIM, the
445
-		 * value returned by the application providing ICQ is taken.
446
-		 *
447
-		 * @param uid the KABC UID you want the context for
448
-		 * @return a string describing the context, or @c TQString::null if not
449
-		 *         supported or if the contact is unknown
450
-		 *
451
-		 * @see isPresent()
452
-		 * @see KABC::Addressee::uid()
453
-		 */
454
-		TQString context( const TQString & uid );
455
-
456
-		/**
457
-		 * @brief Start a chat session with the specified contact
458
-		 *
459
-		 * @param uid the KABC UID you want to chat with
460
-		 *
461
-		 * @see messageContact()
462
-		 * @see sendFile()
463
-		 * @see isPresent()
464
-		 * @see reachableContacts()
465
-		 * @see KABC::Addressee::uid()
466
-		 */
467
-		void chatWithContact( const TQString& uid );
468
-
469
-		/**
470
-		 * @brief Send a single message to the specified contact
471
-		 *
472
-		 * Any response will be handled by the IM client as a normal
473
-		 * conversation.
474
-		 *
475
-		 * @param uid the KABC UID you want to send the message to
476
-		 * @param message the message text to send to the contact
477
-		 *
478
-		 * @see chatWithContact()
479
-		 * @see sendFile()
480
-		 * @see isPresent()
481
-		 * @see reachableContacts()
482
-		 * @see KABC::Addressee::uid()
483
-		 */
484
-		void messageContact( const TQString& uid, const TQString& message );
485
-
486
-		/**
487
-		 * @brief Send a file to the contact
488
-		 *
489
-		 * Initiates a file transfer with the given contact if possible.
490
-		 *
491
-		 * @param uid the KABC UID you want to send to
492
-		 * @param sourceURL a KURL pointing to the file to send
493
-		 * @param altFileName an alternate filename describing the file or a
494
-		 *        description or title
495
-		 * @param fileSize file size in bytes
496
-		 *
497
-		 * @see messageContact()
498
-		 * @see chatWithContact()
499
-		 * @see isPresent()
500
-		 * @see fileTransferContacts()
501
-		 * @see KABC::Addressee::uid()
502
-		 */
503
-		void sendFile(const TQString &uid, const KURL &sourceURL,
504
-			 const TQString &altFileName = TQString::null, uint fileSize = 0);
505
-
506
-		/**
507
-		 * @brief Add a new contact given its protocol specific identifier
508
-		 *
509
-		 * @param contactId the protocol specific identifier for the contact
510
-		 *        e.g. UIN for ICQ, screenname for AIM, nick for IRC
511
-		 * @param protocol the IM protocol/service to use.
512
-		 *        See KIMIface:::protocols()
513
-		 * @return whether the add succeeded. @c false may signal already present,
514
-		 *         protocol not supported, or add operation not supported.
515
-		 *
516
-		 * @see locate()
517
-		 * @see KIMIface::protocols()
518
-		 */
519
-		bool addContact( const TQString &contactId, const TQString &protocol );
520
-
521
-		/**
522
-		 * @brief Checks if there are any compatible instant messaging
523
-		 *        applications available
524
-		 *
525
-		 * Available means that they are started and registered with DCOP
526
-		 * and implementing the correct DCOP service.
527
-		 * This information will be updated on the first call to initialize()
528
-		 * and whenever an application registers or unregisters with DCOP,
529
-		 * i.e. the information will be kept up to date.
530
-		 *
531
-		 * @return @c true if there are any apps available
532
-		 */
533
-		bool imAppsAvailable();
534
-
535
-		/**
536
-		 * @brief Start the user's preferred IM application
537
-		 * @return whether a preferred app was found. No guarantee that it
538
-		 *         started correctly
539
-		 */
540
-		bool startPreferredApp();
541
-
542
-		/**
543
-		 * Just exists to let the IDL compiler make the DCOP signal for this
544
-		 */
545
-		void contactPresenceChanged( TQString uid, TQCString appId, int presence );
546
-
547
-	public slots:
548
-		/**
549
-		 * @brief Updates the proxy's data after a new application registered
550
-		 *        with DCOP
551
-		 *
552
-		 * Checks if the application specified by the given DCOP application
553
-		 * identifier implements the instant messenger service.
554
-		 *
555
-		 * @param appId the DCOP application ID of the newly registered
556
-		 *        application
557
-		 *
558
-		 * @see DCOPClient::applicationRegistered()
559
-		 */
560
-		void registeredToDCOP( const TQCString& appId );
561
-
562
-		/**
563
-		 * @brief Updates the proxy's data after an application unregistered
564
-		 *        with DCOP
565
-		 *
566
-		 * If the application specified by the given DCOP application
567
-		 * identifier is one of the instant messenger applications of the
568
-		 * proxy, it will remove the presence information it gathered from it
569
-		 * earlier on.
570
-		 *
571
-		 * Emits sigPresenceInfoExpired() to let the using applcation know
572
-		 * its presence related information might need updating.
573
-		 *
574
-		 * @param appId the DCOP application ID of the now unregistered
575
-		 *        application
576
-		 *
577
-		 * @see DCOPClient::applicationRemoved()
578
-		 */
579
-		void unregisteredFromDCOP( const TQCString& appId );
580
-	signals:
581
-		/**
582
-		 * @brief Indicates that the specified IM-contact's presence changed
583
-		 *
584
-		 * @param uid the KABC UID whose presence changed
585
-		 *
586
-		 * @see isPresent()
587
-		 * @see presenceNumeric()
588
-		 * @see presenceIcon()
589
-		 * @see KABC::Addressee::uid()
590
-		 */
591
-		void sigContactPresenceChanged( const TQString &uid );
592
-
593
-		/**
594
-		 * @brief Indicates that presence information obtained earlier on might
595
-		 *        not be valid any longer
596
-		 *
597
-		 * After the sources of presence information have changed so any
598
-		 * previously supplied presence info is invalid.
599
-		 */
600
-		void sigPresenceInfoExpired();
601
-	protected:
602
-		/**
603
-		 * Bootstrap our presence data for a newly registered app
604
-		 */
605
-		void pollApp( const TQCString & appId );
606
-		/**
607
-		 * Bootstrap our presence data by polling all known apps
608
-		 */
609
-		void pollAll( const TQString &uid );
610
-
611
-		/**
612
-		 * Update our records with the given data
613
-		 */
614
-		bool updatePresence( const TQString &uid, const TQCString &appId, int presence );
615
-
616
-		/**
617
-		 * Get the name of the user's IM application of choice
618
-		 */
619
-		TQString preferredApp();
620
-
621
-		/**
622
-		 * Get the app stub best able to reach this uid
623
-		 */
624
-		KIMIface_stub * stubForUid( const TQString &uid );
625
-
626
-		/**
627
-		 * Get the app stub for this protocol.
628
-		 * Take the preferred app first, then any other.
629
-		 */
630
-		KIMIface_stub * stubForProtocol( const TQString &protocol );
631
-
632
-	private:
633
-		// client stubs used to get presence
634
-		// appId (from DCOP) -> KIMIface_stub