mirror of
https://port.numenaute.org/aleajactaest/khanat-opennel-code.git
synced 2024-11-27 01:26:30 +00:00
Merge with develop
--HG-- branch : compatibility-develop
This commit is contained in:
commit
67eee7f3dd
3 changed files with 26 additions and 8 deletions
|
@ -572,7 +572,15 @@ namespace NLGUI
|
||||||
return "";
|
return "";
|
||||||
return _LinkClass.back().c_str();
|
return _LinkClass.back().c_str();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::vector<bool> _BlockLevelElement;
|
||||||
|
inline const bool isBlockLevelElement() const
|
||||||
|
{
|
||||||
|
if (_BlockLevelElement.empty())
|
||||||
|
return false;
|
||||||
|
return _BlockLevelElement.back();
|
||||||
|
}
|
||||||
|
|
||||||
// Divs (i.e. interface group)
|
// Divs (i.e. interface group)
|
||||||
std::vector<class CInterfaceGroup*> _Divs;
|
std::vector<class CInterfaceGroup*> _Divs;
|
||||||
inline CInterfaceGroup *getDiv() const
|
inline CInterfaceGroup *getDiv() const
|
||||||
|
|
|
@ -1145,6 +1145,7 @@ namespace NLGUI
|
||||||
|
|
||||||
case HTML_DIV:
|
case HTML_DIV:
|
||||||
{
|
{
|
||||||
|
_BlockLevelElement.push_back(true);
|
||||||
registerAnchorName(MY_HTML_DIV);
|
registerAnchorName(MY_HTML_DIV);
|
||||||
|
|
||||||
if (present[MY_HTML_DIV_NAME] && value[MY_HTML_DIV_NAME])
|
if (present[MY_HTML_DIV_NAME] && value[MY_HTML_DIV_NAME])
|
||||||
|
@ -1204,6 +1205,8 @@ namespace NLGUI
|
||||||
inst->setPosRef(Hotspot_TL);
|
inst->setPosRef(Hotspot_TL);
|
||||||
inst->setParentPosRef(Hotspot_TL);
|
inst->setParentPosRef(Hotspot_TL);
|
||||||
getDiv()->addGroup(inst);
|
getDiv()->addGroup(inst);
|
||||||
|
|
||||||
|
_BlockLevelElement.back() = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1220,6 +1223,11 @@ namespace NLGUI
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (isBlockLevelElement())
|
||||||
|
{
|
||||||
|
newParagraph(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -2118,12 +2126,20 @@ namespace NLGUI
|
||||||
popIfNotEmpty (_GlobalColor);
|
popIfNotEmpty (_GlobalColor);
|
||||||
endParagraph();
|
endParagraph();
|
||||||
break;
|
break;
|
||||||
|
case HTML_P:
|
||||||
|
endParagraph();
|
||||||
|
break;
|
||||||
case HTML_PRE:
|
case HTML_PRE:
|
||||||
popIfNotEmpty (_PRE);
|
popIfNotEmpty (_PRE);
|
||||||
break;
|
break;
|
||||||
case HTML_DIV:
|
case HTML_DIV:
|
||||||
|
if (isBlockLevelElement())
|
||||||
|
{
|
||||||
|
endParagraph();
|
||||||
|
}
|
||||||
_DivName = "";
|
_DivName = "";
|
||||||
popIfNotEmpty (_Divs);
|
popIfNotEmpty (_Divs);
|
||||||
|
popIfNotEmpty (_BlockLevelElement);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HTML_TABLE:
|
case HTML_TABLE:
|
||||||
|
@ -4138,9 +4154,7 @@ namespace NLGUI
|
||||||
group->setSizeRef(CInterfaceElement::width);
|
group->setSizeRef(CInterfaceElement::width);
|
||||||
|
|
||||||
// Compute begin space between paragraph and tables
|
// Compute begin space between paragraph and tables
|
||||||
|
|
||||||
// * If first in group, no begin space
|
// * If first in group, no begin space
|
||||||
// * If behind a paragraph, take the biggest begin space between the previous paragraph and current one.
|
|
||||||
|
|
||||||
// Pointer on the current paragraph (can be a table too)
|
// Pointer on the current paragraph (can be a table too)
|
||||||
CGroupParagraph *p = dynamic_cast<CGroupParagraph*>(group);
|
CGroupParagraph *p = dynamic_cast<CGroupParagraph*>(group);
|
||||||
|
@ -4162,11 +4176,6 @@ namespace NLGUI
|
||||||
group->setParentPos(groups.back());
|
group->setParentPos(groups.back());
|
||||||
group->setPosRef(Hotspot_TL);
|
group->setPosRef(Hotspot_TL);
|
||||||
group->setParentPosRef(Hotspot_BL);
|
group->setParentPosRef(Hotspot_BL);
|
||||||
|
|
||||||
// Begin space for previous paragraph
|
|
||||||
CGroupParagraph *previous = dynamic_cast<CGroupParagraph*>(groups.back());
|
|
||||||
if (previous)
|
|
||||||
beginSpace = std::max(beginSpace, previous->getTopSpace());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set the begin space
|
// Set the begin space
|
||||||
|
|
|
@ -232,4 +232,5 @@ void CChatTextManager::reset ()
|
||||||
_TextFontSize = NULL;
|
_TextFontSize = NULL;
|
||||||
_TextMultilineSpace = NULL;
|
_TextMultilineSpace = NULL;
|
||||||
_TextShadowed = NULL;
|
_TextShadowed = NULL;
|
||||||
|
_ShowTimestamps = NULL;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue