Exemplo n.º 1
0
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
Exemplo n.º 2
0
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)
Exemplo n.º 3
0
 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()