def _conly_properties(node, owner_type): att = {} # TODO: this could be optimized # just a dummy object to get the property type dummy = gobject.new(owner_type) for prop in _elements(node, 'property'): if prop.getAttribute('construct-only') == 'True': name = prop.getAttribute('name') type_name = property.get_property_type(dummy, name) from_text = property._from_text[type_name] value = from_text(_text(prop)) att[name] = value return att
def _set_property(owner, prop): if prop.getAttribute('construct-only') == 'True': return name = prop.getAttribute('name') type_name = property.get_property_type(owner, name) text = _text(prop) from_text = property._from_text[type_name] value = from_text(text) if type_name == 'GParamObject': dic = _top_node(prop).loader.dic if dic.has_key(value) and not name == 'parent': owner.set_property(name, dic[value]) else: print 'Ignoring', name, value else: owner.set_property(name, value)
def set(self): type_id = property.get_property_type(self.owner, self.name) self.to_python = property.get_from_text(type_id) self.set_value()