The KDevelop Platform %API %Documentation
Version 3.3.4
KDevelop Platform is set of libraries and tools that are used to build IDEs (Integrated Development Environments), applications similar to IDEs (web development enviroment, text editors for programmers and designers, etc.) and/or IDE plugins for all possible purposes.Platform provides:
- the plugin architecture (interfaces);
- the common support libraries;
- the generic shell with plugin profiles support.
Introduction
This document is targeted at all those that want to build their own IDE or improve KDevelop's source code. If you are instead looking for a user manual, just go to the help menu of your KDevelop and select KDevelop handbook. This documentation contains the KDevelop Platform online class reference for the current development version of KDevelop. Additionally, you can subscribe or read the mailing list for any additions and/or modifications to the Platform API.An on-line, updated every 24H, html version of this documentation can be found at: http://www.kdevelop.org/HEAD/doc/platform/html/index.html
You can also download a local browseable copy form http://www.kdevelop.org/HEAD/doc/platform/kdevplatformdoc.tar.bz2 . It gets updated every single day too.
More information about the KDevelop Platform architecture in form of tutorials, Wikis, HOWTOs, and FAQs can be found at the KDevelop website.
Quick overviews of the architecture can also be found in the issues of KDevelop Technotes.
Platform Libraries API
- Interfaces Library (classes)
Interfaces and classes that form KDevelop plugin architecture. - Extension Interfaces Library (classes)
Extension interfaces used by KDevelop plugin architecture. - Utility Library (classes)
Utility classes for the KDevelop architecture. - Extra Interfaces Library (classes)
Extra interfaces that are not the part of KDevelop plugin architecture but that can be implemented by extra plugins or "plugins for plugins". - Widgets Library (classes)
A collection of widgets. - Property Editing Library (classes)
A collection of facilities to store and edit the properties of various objects. - Catalog Library (classes)
The persistant symbol store library working with BerkeleyDb backend.
GUI Designer Integration API
- KInterfaceDesigner Library (classes)
KInterfaceDesigner classes and interfaces which form the core of GUI Designer integration framework. - Designer Integration Support Library (classes)
The base classes to implement GUI designer integration in language support plugins.
Platform Plugins API
- Documentation Part Interfaces Library (classes)
Interfaces to implement KDevelop documentation plugins.
Programming Language Support API
- Language Support Interfaces Library (classes)
Interfaces for KDevelop language support facilities. - Debugger Support Library (classes)
Classes to implement debugger support for a programming language.
Buildtool Support API
- Buildtool Base Library (classes)
Base classes for KDevelop builtool support plugins. - Project Manager Interfaces Library (classes)
Interfaces to implement plugins for the KDevelop generic project manager. - Buildtool Widgets Library (classes)
Widgets commonly used in buildtool support plugins. - Autotools parser Library (classes)
Parser for Autotools based support plugins. - QMake parser Library (classes)
Parser for QMake based support plugins.
Shell API
- Generic Shell (classes)
The Shell - a profile-based implementation of KDevelop plugin architecture. - Shell Profiles Library (classes)
Plugin profiles implementation for KDevelop shell.
Planned tasks
Here is a priority ordered list:- fix the dispersed fixme
- reported bugs in bugzilla database
- fix the dispersed todo all over the code.
How to build a local copy of this documentation
This documentation is large and changes with every cvs commit, therefore is not available for download. To build your local copy of this documentation you need to fetch KDevelop sources and if you have doxygen >= 1.3.4 and (optionally) PHP >= 4.10 plus a local running webserver then- make apidox
- make install-apidox (as root)