From e1bbdd89f09966a240e8a7b8007dc44895e0febd Mon Sep 17 00:00:00 2001 From: senator Date: Thu, 26 Jul 2007 13:10:25 +0000 Subject: added error check for unnamed widgets --- client/widgets/checkbox.cc | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) (limited to 'client/widgets/checkbox.cc') diff --git a/client/widgets/checkbox.cc b/client/widgets/checkbox.cc index 33cd9d1..c04b104 100644 --- a/client/widgets/checkbox.cc +++ b/client/widgets/checkbox.cc @@ -29,12 +29,27 @@ CheckBox::CheckBox(QDomNode node) : QCheckBox() { QDomElement elem = node.toElement(); - widget_name = elem.attribute("name"); - setText(elem.attribute("caption")); - if(elem.attribute("value") == "true") { - setChecked(true); - } else if (elem.attribute("value") == "false") { + if(elem.hasAttribute("name")) { + widget_name = elem.attribute("name"); + } else { + printf("XML ERROR!! Unnamed widget of type: %s\n", + elem.tagName().toStdString().c_str()); + } + + if(elem.hasAttribute("caption")) { + setText(elem.attribute("caption")); + } else { + setText(elem.attribute("")); + } + + if(elem.hasAttribute("value")) { + if(elem.attribute("value") == "true") { + setChecked(true); + } else if (elem.attribute("value") == "false") { + setChecked(false); + } + } else { setChecked(false); } } -- cgit v1.2.3