Save another 20% to 25% of average page loading time by
[kdelibs.git] / Mainpage.dox
blob1e30f8061cb8535e8fb916fa26765d94b7c835f0
1 /** @mainpage The KDE Library API Reference
3 <p><b>
4 Overview |
5 @ref components |
6 @ref development |
7 @ref search
8 </b></p>
10 This is the online reference for developing with the KDE libraries
11 (kdelibs).
13 The KDE libraries build on the
14 <a href="http://www.trolltech.com/products/qt/">Qt</a> framework to
15 provide a powerful framework to make writing applications easier,
16 and provide consistency across the KDE desktop envionment.
18 Among other things, the KDE libraries provide:
19 - standard user interface elements, on top of those provided by Qt
20   (<a href="kdeui/html/index.html">KDEUI</a>)
21 - a standard configuration format and method of reading and writing
22   configuration data (<a href="kdecore/html/classKConfig.html">KConfig</a>)
23 - site-independent access to standard directories, for finding resources such
24   as icons (<a href="kdecore/html/classKStandardDirs.html">KStandardDirs</a>)
25 - network transparent input and output (<a href="kio/html/index.html">KIO</a>)
26 - a method of embedding application components in other applications
27   (<a href="kparts/html/index.html">KParts</a>)
28 - straightforward multimedia and hardware interaction
29   (<a href="/kdesupport-api/kdesupport-apidocs/phonon/html/">Phonon</a> and
30   <a href="solid/html/index.html">Solid</a>)
31 - fully-fledged JavaScript and HTML engines
32   (<a href="kjs/html/index.html">KJS</a> and
33   <a href="khtml/html/index.html">KHTML</a>)
34 - an application scripting framework
35   (<a href="kross/html/index.html">Kross</a>)
36 - semantic information and tagging
37   (<a href="nepomuk/html/index.html">Nepomuk</a>)
39 Visit the <a href="http://techbase.kde.org/Development">development section of KDE
40 Techbase</a> for tutorials, architectural overviews and other useful information.
42 @authors
43 Far too many to list.  See the copyright notices on the individual files,
44 as well as the pages for individual components.
46 @maintainers
47 There is no single maintainer for kdelibs.  Overall direction is governed by the
48 <a href="https://mail.kde.org/mailman/listinfo/kde-core-devel">kde-core-devel
49 mailing list</a>.  Some of the individual components have their own maintainers:
50 see the component pages for more information.
52 @licenses
53 Libraries: @lgpl<br>
54 Some helper binaries: @gpl<br>
55 Some code may have more permissive licenses.
60 /** @page components Components
62 <p><b>
63 @ref index "Overview" |
64 Components |
65 @ref development |
66 @ref search
67 </b></p>
69 Below is a brief summary of the various libraries you may want to use
70 when developing a KDE application.
72 Note that there is more to kdelibs than these libraries: on the left
73 is a complete list of kdelibs components.  However, in almost all cases
74 you will only be interested in the ones listed below.  The remaining
75 ones are mostly implementation details that you don't need to worry
76 about.
78 There are also several components you can use.  Interfaces to most of
79 these can be found in the <a href="interfaces/html/index.html">interfaces
80 section</a>, but you should also be aware of KHTMLPart, which
81 provides a full web browser component.
83 <dl>
84     <dt>KDECore</dt>
85     <dd>Core KDE classes that are not related to the user interface.<br>
86         [ <a href="kdecore/html/index.html">Documentation</a> |
87           <a href="kdecore/html/classes.html">Classes</a> ]</dd>
89     <dt>KIO</dt>
90     <dd>KDE's network-transparent input/output system: provides
91         just about every file-management function you'll ever need.<br>
92         [ <a href="kio/html/index.html">Documentation</a> |
93           <a href="kio/html/classes.html">Classes</a> ]</dd>
95     <dt>KDEUI</dt>
96     <dd>KDE User Interface classes such as widgets.<br>
97         [ <a href="kdeui/html/index.html">Documentation</a> |
98           <a href="kdeui/html/classes.html">Classes</a> ]</dd>
100     <dt>Phonon</dt>
101     <dd>KDE's multimedia framework.<br>
102         [ <a href="/kdesupport-api/kdesupport-apidocs/phonon/html/index.html">Documentation</a> |
103           <a href="/kdesupport-api/kdesupport-apidocs/phonon/html/group__Frontend.html">Classes</a> ]</dd>
105     <dt>Solid</dt>
106     <dd>KDE Hardware Discovery and Management classes.<br>
107         [ <a href="solid/html/index.html">Documentation</a> |
108           <a href="solid/html/classes.html">Classes</a> ]</dd>
110     <dt>Nepomuk</dt>
111     <dd>The KDE Meta Data library, for metadata assigned to a
112         resource (such as a file or an email) by the user or
113         by an application, such as tags or download locations.<br>
114         [ <a href="nepomuk/html/index.html">Documentation</a> |
115           <a href="nepomuk/html/classes.html">Classes</a> ]</dd>
117     <dt>KParts</dt>
118     <dd>The KDE component library: provides support for re-usable,
119         embeddable, extendible components for use in applications.<br>
120         [ <a href="kparts/html/index.html">Documentation</a> |
121           <a href="kparts/html/classes.html">Classes</a> ]</dd>
123     <dt>KNewStuff</dt>
124     <dd>Upload and download of application data.<br>
125         [ <a href="knewstuff/html/index.html">Documentation</a> |
126           <a href="knewstuff/html/classes.html">Classes</a> ]</dd>
128     <dt>KDEPrint</dt>
129     <dd>The KDE printing system.<br>
130         [ <a href="kdeprint/html/index.html">Documentation</a> |
131           <a href="kdeprint/html/classes.html">Classes</a> ]</dd>
133     <dt>DNSSD</dt>
134     <dd>Access to the DNSSD (aka Bonjour, Zeroconf) service publishing
135         and discovery protocol.<br>
136         [ <a href="dnssd/html/index.html">Documentation</a> |
137           <a href="dnssd/html/classes.html">Classes</a> ]</dd>
139     <dt>KJS</dt>
140     <dd>JavaScript (aka. ECMAScript and JScript) support.<br>
141         [ <a href="kjs/html/index.html">Documentation</a> |
142           <a href="kjs/html/classes.html">Classes</a> ]</dd>
144     <dt>Kross</dt>
145     <dd>Allows scripting to be added to an application in an
146         interpreter-independent way.<br>
147         [ <a href="kross/html/index.html">Documentation</a> |
148           <a href="kross/html/classes.html">Classes</a> ]</dd>
150     <dt>ThreadWeaver</dt>
151     <dd>A job-based multi-threading library<br>
152         [ <a href="threadweaver/html/index.html">Documentation</a> |
153           <a href="threadweaver/html/classes.html">Classes</a> ]</dd>
155     <dt>KDESU</dt>
156     <dd>Run processes remotely or with elevated privileges.<br>
157         [ <a href="kdesu/html/index.html">Documentation</a> |
158           <a href="kdesu/html/classes.html">Classes</a> ]</dd>
159 </dl>
163 /** @page development Development
165 <p><b>
166 @ref index "Overview" |
167 @ref components |
168 Development |
169 @ref search
170 </b></p>
172 To follow or get involved with the development of the KDE libraries,
173 join the <a href="https://mail.kde.org/mailman/listinfo/kde-core-devel">kde-core-devel
174 mailing list</a>.
176 Instructions for building a development version of KDE can be found in the
177 <a href="http://techbase.kde.org/Getting_Started">getting started</a> section
178 of the <a href="http://techbase.kde.org">KDE Techbase</a>.
182 /** @page search Search
184 <p><b>
185 @ref index "Overview" |
186 @ref components |
187 @ref development |
188 Search
189 </b></p>
191 You can search for any class in the public API of the KDE libraries
192 here.
194 Note: only enter the class name, without any namespace qualifiers.
196 @htmlonly
197 <form action="http://api.kde.org/classmapper.php" method="get">
198 <input type="text" name="class" value="[classname]" style="width:100%;" onClick="this.value='';"/>
199 <input type="submit" name="go" value="Go" />
200 <input type=hidden name="module" value="kdelibs">
201 <input type=hidden name="version" value="4.1">
202 </form>
203 @endhtmlonly
205 If you want to search for any sort of identifier in kdelibs (and other code
206 in the KDE SVN repository), you can do so using the
207 <a href="http://lxr.kde.org">KDE Source Cross-Reference</a> tool.
211 // DOXYGEN_VERSION=4.1
212 // DOXYGEN_NAME=kdelibs
213 // DOXYGEN_ENABLE=YES
214 // vim:ts=4:sw=4:expandtab:filetype=doxygen