|
|
@ -1780,33 +1780,40 @@ namespace NLGUI
|
|
|
|
|
|
|
|
|
|
|
|
if(groupContextHelp)
|
|
|
|
if(groupContextHelp)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
groupContextHelp->setContainerAlpha(100);
|
|
|
|
|
|
|
|
/** If there's a modal box around, should be sure that the context help doesn't intersect it.
|
|
|
|
/** If there's a modal box around, should be sure that the context help doesn't intersect it.
|
|
|
|
* If this is the case, we just disable it, unless the tooltip was generated by the current modal window
|
|
|
|
* If this is the case, we just disable it, unless the tooltip was generated by the current modal window
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool draw = false;
|
|
|
|
if ( hasModal() )
|
|
|
|
if ( hasModal() )
|
|
|
|
{
|
|
|
|
{
|
|
|
|
CInterfaceGroup *mw = getModal().ModalWindow;
|
|
|
|
CInterfaceGroup *mw = getModal().ModalWindow;
|
|
|
|
if (mw && mw->isIn(*groupContextHelp))
|
|
|
|
if (mw && mw->isIn(*groupContextHelp))
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (_CurCtrlContextHelp->isSonOf(mw))
|
|
|
|
if (_CurCtrlContextHelp->isSonOf(mw))
|
|
|
|
{
|
|
|
|
draw = true;
|
|
|
|
groupContextHelp->executeLuaScriptOnDraw();
|
|
|
|
|
|
|
|
groupContextHelp->draw ();
|
|
|
|
|
|
|
|
// flush layers
|
|
|
|
|
|
|
|
CViewRenderer::getInstance()->flush();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
draw = true;
|
|
|
|
groupContextHelp->executeLuaScriptOnDraw();
|
|
|
|
|
|
|
|
groupContextHelp->draw ();
|
|
|
|
|
|
|
|
// flush layers
|
|
|
|
|
|
|
|
CViewRenderer::getInstance()->flush();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
|
|
|
|
draw = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (draw) {
|
|
|
|
|
|
|
|
// apply opacity settings
|
|
|
|
|
|
|
|
const std::vector< CViewBase* > &vs = groupContextHelp->getViews();
|
|
|
|
|
|
|
|
// content opacity: only target views or else breaks
|
|
|
|
|
|
|
|
for( std::vector< CViewBase* >::const_iterator itr = vs.begin(); itr != vs.end(); ++itr )
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
CViewBase *pVB = *itr;
|
|
|
|
|
|
|
|
pVB->setAlpha(_ContextHelpContentAlpha);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// container opacity
|
|
|
|
|
|
|
|
CInterfaceGroup* container = dynamic_cast<CInterfaceGroup*>(groupContextHelp->findFromShortId("border"))
|
|
|
|
|
|
|
|
if (container)
|
|
|
|
|
|
|
|
container->setAlpha(_ContextHelpContainerAlpha);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// draw the tooltip
|
|
|
|
groupContextHelp->executeLuaScriptOnDraw();
|
|
|
|
groupContextHelp->executeLuaScriptOnDraw();
|
|
|
|
groupContextHelp->draw ();
|
|
|
|
groupContextHelp->draw ();
|
|
|
|
// flush layers
|
|
|
|
// flush layers
|
|
|
|