def update_img(self): value = None if self.field: value = self.field.get_client(self.record) if isinstance(value, (int, long)): if value > BIG_IMAGE_SIZE: value = False else: value = self.field.get_data(self.record) pixbuf = resize_pixbuf(data2pixbuf(value), self.width, self.height) self.image.set_from_pixbuf(pixbuf)
def setter(self, column, cell, store, iter_, user_data=None): record, field = self._get_record_field_from_iter(iter_, store) value = field.get_client(record) if isinstance(value, int): if value > CONFIG['image.max_size']: value = None else: value = field.get_data(record) pixbuf = data2pixbuf(value) if pixbuf: pixbuf = common.resize_pixbuf(pixbuf, self.width, self.height) cell.set_property('pixbuf', pixbuf) self._set_visual(cell, record)
def update_img(self): value = None if self.field: value = self.field.get_client(self.record) if isinstance(value, int): if value > CONFIG['image.max_size']: value = False else: value = self.field.get_data(self.record) pixbuf = data2pixbuf(value) if pixbuf: pixbuf = resize_pixbuf(pixbuf, self.width, self.height) self.image.set_from_pixbuf(pixbuf) return bool(value)
def setter(self, column, cell, store, iter_, user_data=None): record, field = self._get_record_field_from_iter(iter_, store) value = field.get_client(record) if isinstance(value, int): if value > CONFIG['image.max_size']: value = None else: value = field.get_data(record) pixbuf = data2pixbuf(value) width = self.attrs.get('width', -1) height = self.attrs.get('height', -1) if pixbuf and (width != -1 or height != -1): pixbuf = common.resize_pixbuf(pixbuf, width, height) cell.set_property('pixbuf', pixbuf)
def setter(self, column, cell, store, iter_): record = store.get_value(iter_, 0) field = record[self.field_name] value = field.get_client(record) if isinstance(value, (int, long)): if value > common.BIG_IMAGE_SIZE: value = None else: value = field.get_data(record) pixbuf = data2pixbuf(value) width = self.attrs.get('width', -1) height = self.attrs.get('height', -1) if width != -1 or height != -1: pixbuf = common.resize_pixbuf(pixbuf, width, height) cell.set_property('pixbuf', pixbuf)
def setter(self, column, cell, store, iter_): record = store.get_value(iter_, 0) field = record[self.field_name] value = field.get_client(record) if isinstance(value, (int, long)): if value > common.BIG_IMAGE_SIZE: value = None else: value = field.get_data(record) pixbuf = data2pixbuf(value) if (self.attrs.get('width', -1) != -1 or self.attrs.get('height', -1) != -1): pixbuf = common.resize_pixbuf(pixbuf, self.attrs['width'], self.attrs['height']) cell.set_property('pixbuf', pixbuf)
def display(self): super().display() if self.field and self.record: data = self.field.get_data(self.record) else: data = None if not data: self.image.hide() if self.evince_view: self.evince_view.set_model(EvinceView.DocumentModel()) self.evince_scroll.hide() return pixbuf = data2pixbuf(data) if pixbuf: try: self.image.disconnect_by_func(self._draw) except TypeError: pass self.image.connect('draw', self._draw, pixbuf) self.image.queue_draw() self.image.show() if self.evince_view: self.evince_view.set_model(EvinceView.DocumentModel()) self.evince_scroll.hide() else: self.image.hide() if self.evince_view: self.evince_scroll.show() if self.filename_field: suffix = self.filename_field.get(self.record) else: suffix = None try: with NamedTemporaryFile(suffix=suffix) as fp: fp.write(data) path = Path(fp.name) document = ( EvinceDocument.Document.factory_get_document( path.as_uri())) model = EvinceView.DocumentModel() model.set_document(document) self.evince_view.set_model(model) except GLib.GError: self.evince_view.set_model(EvinceView.DocumentModel()) self.evince_scroll.hide()