def extractMemberData(element, extraHeaders): className = element.attributes["class"].value isWidget = False if className == "GtkSourceView": className = "Gsv::View" extraHeaders.add("gtksourceviewmm.h") isWidget = True else: classType = Gtk.__getattr__(re.sub('^Gtk', '', className)) className = re.sub('^Gtk', 'Gtk::', className) isWidget = issubclass(classType, Gtk.Widget) resource = None for child in element.childNodes: if child.nodeName == "property" and child.attributes["name"].value == "resource": resource = child.childNodes[0].data objectId = element.attributes["id"].value return {"class": className, "id": objectId, "res": resource, "iswidget": isWidget}