def _create_props_by_type(self, edje_type): edje_type = edje.external_type_get(edje_type) self._params_info = edje_type.parameters_info_get() for p in self._params_info: prop = Property(self._parent, p.name) if p.type == edje.EDJE_EXTERNAL_PARAM_TYPE_BOOL: wid = WidgetBoolean(self) wid.states_set(p.true_string, p.false_string) elif p.type == edje.EDJE_EXTERNAL_PARAM_TYPE_CHOICE: wid = WidgetCombo(self._parent) for choice in p.choices: wid.item_add(choice) else: wid = WidgetEntry(self) if p.type == edje.EDJE_EXTERNAL_PARAM_TYPE_INT: wid.type_int() elif p.type == edje.EDJE_EXTERNAL_PARAM_TYPE_DOUBLE: wid.type_float() prop.widget_add("v", wid) self["external"].property_add(prop)
def _part_add(self, name, edje_type, source): if edje_type == edje.EDJE_PART_TYPE_EXTERNAL: external = edje.external_type_get(source) if external: self.__edje.external_add(external.module) return self.__edje.part_add(name, edje_type, source)