[DEBUG] correct segfault after updating for exml
This commit is contained in:
parent
faad7fcd41
commit
43c46cddd5
@ -125,7 +125,7 @@ ewol::Padding ewol::widget::Container2::onChangeSizePadded(const ewol::Padding&
|
|||||||
if (m_subWidget[iii] != nullptr) {
|
if (m_subWidget[iii] != nullptr) {
|
||||||
vec2 origin2 = origin+m_offset;
|
vec2 origin2 = origin+m_offset;
|
||||||
vec2 minSize = m_subWidget[iii]->getCalculateMinSize();
|
vec2 minSize = m_subWidget[iii]->getCalculateMinSize();
|
||||||
bvec2 expand = m_subWidget[iii]->propertyExpand.get();
|
//bvec2 expand = m_subWidget[iii]->propertyExpand.get();
|
||||||
origin2 += ewol::gravityGenerateDelta(propertyGravity, minSize - localAvaillable);
|
origin2 += ewol::gravityGenerateDelta(propertyGravity, minSize - localAvaillable);
|
||||||
m_subWidget[iii]->setOrigin(m_origin + origin);
|
m_subWidget[iii]->setOrigin(m_origin + origin);
|
||||||
m_subWidget[iii]->setSize(subElementSize);
|
m_subWidget[iii]->setSize(subElementSize);
|
||||||
@ -183,11 +183,12 @@ bool ewol::widget::Container2::loadXML(const exml::Element& _node) {
|
|||||||
ewol::Widget::loadXML(_node);
|
ewol::Widget::loadXML(_node);
|
||||||
// remove previous element :
|
// remove previous element :
|
||||||
subWidgetRemove();
|
subWidgetRemove();
|
||||||
|
EWOL_VERBOSE("Create en element 2 ... with nodes.size()=" << _node.nodes.size());
|
||||||
// parse all the elements :
|
// parse all the elements:
|
||||||
for(const auto it : _node.nodes) {
|
for(const auto it : _node.nodes) {
|
||||||
exml::Element pNode = _node.toElement();
|
EWOL_VERBOSE(" node: " << it);
|
||||||
if (pNode.exist()) {
|
exml::Element pNode = it.toElement();
|
||||||
|
if (pNode.exist() == false) {
|
||||||
// trash here all that is not element
|
// trash here all that is not element
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -200,7 +201,7 @@ bool ewol::widget::Container2::loadXML(const exml::Element& _node) {
|
|||||||
if (getSubWidget() != nullptr) {
|
if (getSubWidget() != nullptr) {
|
||||||
toogleMode=true;
|
toogleMode=true;
|
||||||
if (getSubWidgetToggle() != nullptr) {
|
if (getSubWidgetToggle() != nullptr) {
|
||||||
EWOL_ERROR("(l " << pNode.getPos() << ") " << __class__ << " Can only have one subWidget ??? node='" << widgetName << "'" );
|
EWOL_ERROR("(l " << pNode.getPos() << ") Can only have one subWidget ??? node='" << widgetName << "'" );
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -273,20 +273,20 @@ bool ewol::widget::ContainerN::loadXML(const exml::Element& _node) {
|
|||||||
}
|
}
|
||||||
// parse all the elements :
|
// parse all the elements :
|
||||||
for (const auto nodeIt : _node.nodes) {
|
for (const auto nodeIt : _node.nodes) {
|
||||||
const exml::Element pNode = _node.toElement();
|
const exml::Element pNode = nodeIt.toElement();
|
||||||
if (pNode.exist() == false) {
|
if (pNode.exist() == false) {
|
||||||
// trash here all that is not element
|
// trash here all that is not element
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
std::string widgetName = pNode.getValue();
|
std::string widgetName = pNode.getValue();
|
||||||
if (getWidgetManager().exist(widgetName) == false) {
|
if (getWidgetManager().exist(widgetName) == false) {
|
||||||
EWOL_ERROR("[" << getId() << "] {" << getObjectType() << "} (l " << pNode.getPos() << ") Unknown basic node=\"" << widgetName << "\" not in : [" << getWidgetManager().list() << "]" );
|
EWOL_ERROR("[" << getId() << "] {" << getObjectType() << "} (l " << pNode.getPos() << ") Unknown basic node='" << widgetName << "' not in : [" << getWidgetManager().list() << "]" );
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
EWOL_DEBUG("[" << getId() << "] {" << getObjectType() << "} load new element : \"" << widgetName << "\"");
|
EWOL_DEBUG("[" << getId() << "] {" << getObjectType() << "} load new element : '" << widgetName << "'");
|
||||||
ewol::WidgetShared subWidget = getWidgetManager().create(widgetName);
|
ewol::WidgetShared subWidget = getWidgetManager().create(widgetName);
|
||||||
if (subWidget == nullptr) {
|
if (subWidget == nullptr) {
|
||||||
EWOL_ERROR ("[" << getId() << "] {" << getObjectType() << "} (l " << pNode.getPos() << ") Can not create the widget : \"" << widgetName << "\"");
|
EWOL_ERROR ("[" << getId() << "] {" << getObjectType() << "} (l " << pNode.getPos() << ") Can not create the widget : '" << widgetName << "'");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// add sub element :
|
// add sub element :
|
||||||
@ -296,7 +296,7 @@ bool ewol::widget::ContainerN::loadXML(const exml::Element& _node) {
|
|||||||
subWidgetAddStart(subWidget);
|
subWidgetAddStart(subWidget);
|
||||||
}
|
}
|
||||||
if (subWidget->loadXML(pNode) == false) {
|
if (subWidget->loadXML(pNode) == false) {
|
||||||
EWOL_ERROR ("[" << getId() << "] {" << getObjectType() << "} (l " << pNode.getPos() << ") can not load widget properties : \"" << widgetName << "\"");
|
EWOL_ERROR("[" << getId() << "] {" << getObjectType() << "} (l " << pNode.getPos() << ") can not load widget properties : '" << widgetName << "'");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user