X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FGUI%2Flayout-props.cxx;h=2d691036fae35047df8c763f14d20937fbcb474b;hb=5e4f212b846cd3eb4ce56a2823a9191d221d487c;hp=68574045d6a8be933ef2dde7869dba1880ff13d4;hpb=eeeee3a53eaf9ae51af307ca64f78530d1df0ff6;p=flightgear.git diff --git a/src/GUI/layout-props.cxx b/src/GUI/layout-props.cxx index 68574045d..2d691036f 100644 --- a/src/GUI/layout-props.cxx +++ b/src/GUI/layout-props.cxx @@ -1,3 +1,7 @@ +#ifdef HAVE_CONFIG_H +# include +#endif + #include #include @@ -38,11 +42,16 @@ LayoutWidget LayoutWidget::parent() int LayoutWidget::nChildren() { - // Hack: assume that any non-leaf nodes are widgets... + // Hack: assume that any non-leaf nodes but "hrule" and "vrule" + // are widgets... int n = 0; - for(int i=0; i<_prop->nChildren(); i++) - if(_prop->getChild(i)->nChildren() != 0) + for(int i=0; i<_prop->nChildren(); i++) { + SGPropertyNode* p = _prop->getChild(i); + const char* name = p->getName(); + if(p->nChildren() != 0 || !strcmp(name, "hrule") + || !strcmp(name, "vrule")) n++; + } return n; } @@ -53,7 +62,9 @@ LayoutWidget LayoutWidget::getChild(int idx) int n = 0; for(int i=0; i<_prop->nChildren(); i++) { SGPropertyNode* p = _prop->getChild(i); - if(p->nChildren() != 0) { + const char* name = p->getName(); + if(p->nChildren() != 0 || !strcmp(name, "hrule") + || !strcmp(name, "vrule")) { if(idx == n) return LayoutWidget(p); n++; } @@ -71,9 +82,9 @@ int LayoutWidget::getNum(const char* f) return _prop->getIntValue(f); } -bool LayoutWidget::getBool(const char* f) +bool LayoutWidget::getBool(const char* f, bool dflt) { - return _prop->getBoolValue(f); + return _prop->getBoolValue(f, dflt); } const char* LayoutWidget::getStr(const char* f)