KDAB/GammaRay — pull request #12 by krf (2012-04-08 20:54:07+00:00)
Title: API cleanup

The idea is to get a clean interface for third party plugin developers.
We strive for header-only API (as discussed with Volker). This is resolved now.

This MR consists of two commits:

File system restructuring
* Move (hooking|propertyeditor|injector) directories to core/
* Move tools which are in core to core/tools/
* Leave plugin-based tools in tools/

Inlining of some code that is part of util.cpp
* Most of the code that is used by internal tools is now in displayhelper.cpp (most of them being .toString() helpers) and is now part of the corelib.
* Publicly used API is inlined and available via util.h.

Post-conditions:
* Plugin-based tools only depend on headers in include/
* Clear separation of gammaray core & core-tools code

TODO:
* Commented a call to Utils::iconForObject in objectmodelbase.h because it breaks my current split-up of util.h vs. displayerhelpers.h
Needs further discussion, solutions:
a) Inline Utils::iconForObject as well -> more (randomly) inlined code in public API (feels bad)
b) Remove objectmodelbase.h from includes -> breaks our plugins
* Rename tools/ to plugins/?
* More cleanup of installed headers