|
|
|
@ -1189,7 +1189,7 @@ namespace NLGUI
|
|
|
|
|
case HTML_DT: htmlDTend(elm); break;
|
|
|
|
|
case HTML_EM: renderPseudoElement(":after", elm);break;
|
|
|
|
|
case HTML_FONT: break;
|
|
|
|
|
case HTML_FORM: renderPseudoElement(":after", elm);break;
|
|
|
|
|
case HTML_FORM: htmlFORMend(elm); break;
|
|
|
|
|
case HTML_H1://no-break
|
|
|
|
|
case HTML_H2://no-break
|
|
|
|
|
case HTML_H3://no-break
|
|
|
|
@ -1443,6 +1443,8 @@ namespace NLGUI
|
|
|
|
|
_LastRefreshTime = 0.0;
|
|
|
|
|
_RenderNextTime = false;
|
|
|
|
|
_WaitingForStylesheet = false;
|
|
|
|
|
_AutoIdSeq = 0;
|
|
|
|
|
_FormOpen = false;
|
|
|
|
|
|
|
|
|
|
// Register
|
|
|
|
|
CWidgetManager::getInstance()->registerClockMsgTarget(this);
|
|
|
|
@ -2531,6 +2533,7 @@ namespace NLGUI
|
|
|
|
|
{
|
|
|
|
|
// Add a new paragraph
|
|
|
|
|
CGroupParagraph *newParagraph = new CGroupParagraph(CViewBase::TCtorParam());
|
|
|
|
|
newParagraph->setId(getCurrentGroup()->getId() + ":PARAGRAPH" + toString(getNextAutoIdSeq()));
|
|
|
|
|
newParagraph->setResizeFromChildH(true);
|
|
|
|
|
|
|
|
|
|
newParagraph->setMarginLeft(getIndent());
|
|
|
|
@ -3238,6 +3241,7 @@ namespace NLGUI
|
|
|
|
|
_Cells.clear();
|
|
|
|
|
_TR.clear();
|
|
|
|
|
_Forms.clear();
|
|
|
|
|
_FormOpen = false;
|
|
|
|
|
_FormSubmit.clear();
|
|
|
|
|
_Groups.clear();
|
|
|
|
|
_Divs.clear();
|
|
|
|
@ -3251,6 +3255,7 @@ namespace NLGUI
|
|
|
|
|
_ReadingHeadTag = false;
|
|
|
|
|
_IgnoreHeadTag = false;
|
|
|
|
|
_IgnoreBaseUrlTag = false;
|
|
|
|
|
_AutoIdSeq = 0;
|
|
|
|
|
|
|
|
|
|
paragraphChange ();
|
|
|
|
|
|
|
|
|
@ -4327,6 +4332,7 @@ namespace NLGUI
|
|
|
|
|
if (!_GroupListAdaptor)
|
|
|
|
|
{
|
|
|
|
|
_GroupListAdaptor = new CGroupListAdaptor(CViewBase::TCtorParam()); // deleted by the list
|
|
|
|
|
_GroupListAdaptor->setId(getList()->getId() + ":GLA");
|
|
|
|
|
_GroupListAdaptor->setResizeFromChildH(true);
|
|
|
|
|
getList()->addChild (_GroupListAdaptor, true);
|
|
|
|
|
}
|
|
|
|
@ -5541,6 +5547,11 @@ namespace NLGUI
|
|
|
|
|
std::string tooltip = elm.getAttribute("tooltip");
|
|
|
|
|
bool disabled = elm.hasAttribute("disabled");
|
|
|
|
|
|
|
|
|
|
if (formId.empty() && _FormOpen)
|
|
|
|
|
{
|
|
|
|
|
formId = _Forms.back().id;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!formAction.empty())
|
|
|
|
|
{
|
|
|
|
|
formAction = getAbsoluteUrl(formAction);
|
|
|
|
@ -5643,6 +5654,8 @@ namespace NLGUI
|
|
|
|
|
{
|
|
|
|
|
string style = elm.getAttribute("style");
|
|
|
|
|
string id = elm.getAttribute("id");
|
|
|
|
|
if (id.empty())
|
|
|
|
|
id = "DIV" + toString(getNextAutoIdSeq());
|
|
|
|
|
|
|
|
|
|
typedef pair<string, string> TTmplParam;
|
|
|
|
|
vector<TTmplParam> tmplParams;
|
|
|
|
@ -5675,10 +5688,10 @@ namespace NLGUI
|
|
|
|
|
parentId = _Paragraph->getId();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CInterfaceGroup *inst = CWidgetManager::getInstance()->getParser()->createGroupInstance(templateName, this->_Id+":"+id, tmplParams);
|
|
|
|
|
CInterfaceGroup *inst = CWidgetManager::getInstance()->getParser()->createGroupInstance(templateName, parentId, tmplParams);
|
|
|
|
|
if (inst)
|
|
|
|
|
{
|
|
|
|
|
inst->setId(this->_Id+":"+id);
|
|
|
|
|
inst->setId(parentId+":"+id);
|
|
|
|
|
inst->updateCoords();
|
|
|
|
|
if (haveParentDiv)
|
|
|
|
|
{
|
|
|
|
@ -5811,6 +5824,8 @@ namespace NLGUI
|
|
|
|
|
// ***************************************************************************
|
|
|
|
|
void CGroupHTML::htmlFORM(const CHtmlElement &elm)
|
|
|
|
|
{
|
|
|
|
|
_FormOpen = true;
|
|
|
|
|
|
|
|
|
|
// Build the form
|
|
|
|
|
CGroupHTML::CForm form;
|
|
|
|
|
// id check is case sensitive and auto id's are uppercase
|
|
|
|
@ -5835,6 +5850,12 @@ namespace NLGUI
|
|
|
|
|
renderPseudoElement(":before", elm);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CGroupHTML::htmlFORMend(const CHtmlElement &elm)
|
|
|
|
|
{
|
|
|
|
|
_FormOpen = false;
|
|
|
|
|
renderPseudoElement(":after", elm);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ***************************************************************************
|
|
|
|
|
void CGroupHTML::htmlH(const CHtmlElement &elm)
|
|
|
|
|
{
|
|
|
|
@ -6607,6 +6628,10 @@ namespace NLGUI
|
|
|
|
|
|
|
|
|
|
CGroupTable *table = new CGroupTable(TCtorParam());
|
|
|
|
|
table->BgColor = _CellParams.back().BgColor;
|
|
|
|
|
if (elm.hasNonEmptyAttribute("id"))
|
|
|
|
|
table->setId(getCurrentGroup()->getId() + ":" + elm.getAttribute("id"));
|
|
|
|
|
else
|
|
|
|
|
table->setId(getCurrentGroup()->getId() + ":TABLE" + toString(getNextAutoIdSeq()));
|
|
|
|
|
|
|
|
|
|
// TODO: border-spacing: 2em;
|
|
|
|
|
{
|
|
|
|
@ -6767,6 +6792,10 @@ namespace NLGUI
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_Cells.back() = new CGroupCell(CViewBase::TCtorParam());
|
|
|
|
|
if (elm.hasNonEmptyAttribute("id"))
|
|
|
|
|
_Cells.back()->setId(getCurrentGroup()->getId() + ":TD" + elm.getAttribute("id"));
|
|
|
|
|
else
|
|
|
|
|
_Cells.back()->setId(getCurrentGroup()->getId() + ":TD" + toString(getNextAutoIdSeq()));
|
|
|
|
|
|
|
|
|
|
if (_Style.checkStyle("background-repeat", "repeat"))
|
|
|
|
|
_Cells.back()->setTextureTile(true);
|
|
|
|
|