if (parent) { processItem(item, parent);
else { parent = Definitions::instance()->getDefinition( WPDT_ITEM, child->text() );
static void processItem(QMap<QCString, QString> &item, const cElement *node) {	// If there is an inherit tag, inherit a parent item definition.	QString inherit = node->getAttribute("inherit");	if (inherit != QString::null) {		const cElement *parent = Definitions::instance()->getDefinition(WPDT_ITEM, inherit);		if (parent) {			processItem(item, parent);		}	}	int count = node->childCount();	int i;	for (i = 0; i < count; ++i) {		const cElement *child = node->getChild(i);				// Inherit properties from another item definition		if (child->name() == "inherit") {			const cElement *parent = 0;			if (child->hasAttribute("id")) {				parent = Definitions::instance()->getDefinition(WPDT_ITEM, child->getAttribute("id"));			} else {				parent = Definitions::instance()->getDefinition(WPDT_ITEM, child->text());			}			 			if (parent) {				processItem(item, parent);			}		} else if (child->name() == "id") {            item["dispid"] = child->value();		} else if (child->name() == "name") {			item["name"] = child->text();		} else if (child->name() == "color") {			item["color"] = child->value();		} else if (child->name() == "category") {			item["categoryname"] = child->text();		}	}}