*You can use the [http://subversion.tigris.org Subversion] version control system to access the KDE source repository.

+

*You can use [http://git-scm.com/ Git] and [http://subversion.tigris.org Subversion] version control systems to access the KDE source repository.

−

*There is a list of tools available, that can be used for developing KDE applications. These include low-level debuggers, as well as the KDevelop *Integrated Development Environment (IDE), and various design programs.

+

*There is a list of [http://www.kde.org/applications/development/ tools available], that can be used for developing KDE applications. These include low-level debuggers, as well as the KDevelop *Integrated Development Environment (IDE), and various design programs.

−

*You may also want to read the Compilation FAQ.

+

*You may also want to read the [[Getting_Started/Build/KDE4|Build instructions]].

*Several volumes of [[Development|development documentation]] will help you getting started with your development.

*Several volumes of [[Development|development documentation]] will help you getting started with your development.

== Libraries and Interfaces ==

== Libraries and Interfaces ==

−

=== DCOP and D-Bus ===

+

=== D-Bus ===

−

* '''DCOP''' is the message bus built into KDE 3, that is used for inter-process communication (IPC) between different KDE applications. DCOP can be used in order to remotely control KDE applications from your own application or to provide scriptable interfaces for your own application.

+

[http://www.freedesktop.org/wiki/Software/dbus D-Bus] is the message bus used in KDE 4, that is used for inter-process communication (IPC) between different KDE applications. D-Bus can be used in order to remotely control KDE applications from your own application or to provide scriptable interfaces for your own application. It has replaced [[Development/Architecture/DCOP|DCOP]] in the KDE 4 release.

−

+

−

*[http://developer.kde.org/documentation/tutorials/dot/dcopiface/dcop-interface.html Creating a DCOP Interface] <br />''This tutorial shows you how to create a DCOP interface to a KDE application.''

+

−

+

−

*[http://developer.kde.org/documentation/tutorials/automation/index.html KDE Automation writeup]<br />''Document by Olaf Zanger showing an overview of the scripting capabilities in KDE 2.x. Includes usage of "dcop", "kdcop", scripting languages, xmlrpc, and a FAQ.''

+

−

+

−

*[http://www-106.ibm.com/developerworks/linux/library/l-dcop/index.html?ca=dgr-kdeml01KDEDCOP Connect KDE applications using DCOP]<br />''IBM DeveloperWorks tutorial, shows how to use kdcop and dcop with several examples such as instantly messaging a contact in kopete when he comes online, and also how to create a simple DCOP-aware application.''

+

−

D-Bus will be the message bus used in KDE 4.

+

*[[Development/Tutorials#D-Bus|D-Bus Tutorials]]<br/>''This tutorials show what D-Bus is and how to use it.<br/>See also: [http://dbus.freedesktop.org/doc/dbus-tutorial.html D-Bus tutorial] at freedesktop.org.''

*[[Development/Tutorials#D-Bus|D-Bus Tutorials]]<br/>''This tutorials show what D-Bus is and how to use it.<br/>See also: [http://dbus.freedesktop.org/doc/dbus-tutorial.html D-Bus tutorial] at freedesktop.org.''

=== KIO-Slaves ===

=== KIO-Slaves ===

−

KDE is network transparent. This means that each application can access files via many network protocols just as if they were stored locally. There exist access modules (KIO-Slaves) for Samba (Windows Shares), HTTP, FTP and many other protocols.

KDE is network transparent. This means that each application can access files via many network protocols just as if they were stored locally. There exist access modules (KIO-Slaves) for Samba (Windows Shares), HTTP, FTP and many other protocols.

−

*[http://developer.kde.org/documentation/design/kde/ioslaves/index.html Using IOSlaves]<br />''IOSlaves are the subprocesses KDE uses to fetch remote files without blocking the user interface. This document discusses how they work and how to use them. (Somewhat dated, but might still be useful).''

+

*[[Development/Tutorials#kioslaves|Using KIO Slaves]]<br />''KIO Slaves are the subprocesses KDE uses to fetch remote files without blocking the user interface. This document discusses how they work and how to use them.''

=== Portland: xdg-utils and DAPI ===

=== Portland: xdg-utils and DAPI ===

−

+

KDE actively supports [http://en.wikipedia.org/wiki/Portland_Project The Portland Project] aiming at making cross-desktop application development easier. For more information on this fairly young project, please refer to [http://portland.freedesktop.org/xdg-utils-1.0/ The Portland Project's] website hosted on [http://www.freedesktop.org Freedesktop.org].

−

KDE actively supports [http://developer.kde.org/portland/ The Portland Project] aiming at making cross-desktop application development easier. For more information on this fairly young project, please refer to [http://portland.freedesktop.org The Portland Project's] website hosted on [http://www.freedesktop.org Freedesktop.org].

+

Revision as of 12:02, 13 May 2013

Contents

Tools

You can use Git and Subversion version control systems to access the KDE source repository.

There is a list of tools available, that can be used for developing KDE applications. These include low-level debuggers, as well as the KDevelop *Integrated Development Environment (IDE), and various design programs.

Libraries and Interfaces

D-Bus

D-Bus is the message bus used in KDE 4, that is used for inter-process communication (IPC) between different KDE applications. D-Bus can be used in order to remotely control KDE applications from your own application or to provide scriptable interfaces for your own application. It has replaced DCOP in the KDE 4 release.

KIO-Slaves

KDE is network transparent. This means that each application can access files via many network protocols just as if they were stored locally. There exist access modules (KIO-Slaves) for Samba (Windows Shares), HTTP, FTP and many other protocols.

Using KIO SlavesKIO Slaves are the subprocesses KDE uses to fetch remote files without blocking the user interface. This document discusses how they work and how to use them.