|  |  |  |  | 
This manual is the API specification for the IBus. IBus is built upon GObject and D-Bus, so you may find that modules are named as classes and objects in the sense of GObject, and may D-Bus wrapper API.
According to the puroposes of modules, we categorized them into following parts:
| Panel | A IBus-panel is an UI which provides UI components such as language bar, property buttons and so on. | 
| Input method engine (IME) | An Input method engine is an implementation of certain input method. Here lists essential classes and functions for input method engine building, such as engine specification, and class abstracts. | 
| Configuration | This part lists functions for configuring IBus and engines. Since most configuration files are in XML format, XML handling functions are also listed here. | 
| Communication | Here lists the service communication functions. | 
| Internal | Definition and functions for IBus internal use. | 
Normally input method developers need only to read the first three parts.