Extend text editor tooltips by a 'widget content', making
it possible to show any widget utilizing the fact that the
QTipLabel actually is a frame (and thus a container).
Introduce concept of 'interactive' tooltips and modify
the tooltip-closing mechanism such that simple interaction
is possible. Emit the base text editor's tooltip signals
with the correct position and add API to calculate the tooltip
position from the cursor position.
Add API for pinning tooltips to the text editor (by removing
them from the QTipLabel layout).
Modify the Debugger's tooltipmanager not to manage tooltips
under TextEditor control and to take over control only once
tooltips are pinned.
Rubber-stamped-by: Leandro T. C. Melo <leandro.melo@nokia.com>
This code used two hacks: it created a class with
metaObject()->className() == "QTipLabel" to fool the code in Qt into
applying the style properly to this class.
But it did that by creating a class called QTipLabel. This works as
long as the class in Qt is hidden by symbol visibility. When symbol
visibility is disabled (for whatever reason), then Creator simply
crashes due to size mismatches and memory corruptions (virtual tables,
etc.)
This patch makes the class be called TextEditor::Internal::QTipLabel,
but fools moc into thinking it isn't.
A proper solution would be to simply override the meta object.
Signed-off-by: Leandro Melo <leandro.melo@nokia.com>