diff options
Diffstat (limited to 'src/sugar3/graphics/icon.py')
-rw-r--r-- | src/sugar3/graphics/icon.py | 124 |
1 files changed, 62 insertions, 62 deletions
diff --git a/src/sugar3/graphics/icon.py b/src/sugar3/graphics/icon.py index 6b58c1e..d1ce436 100644 --- a/src/sugar3/graphics/icon.py +++ b/src/sugar3/graphics/icon.py @@ -25,9 +25,9 @@ import re import math import logging -import gobject -import gtk -import hippo +from gi.repository import GObject +from gi.repository import Gtk +from gi.repository import Hippo import cairo from sugar3.graphics.xocolor import XoColor @@ -121,11 +121,11 @@ class _IconBuffer(object): return self._loader.load(file_name, entities, self.cache) def _get_attach_points(self, info, size_request): - attach_points = info.get_attach_points() + return 0,0;has_attach_points_, attach_points = info.get_attach_points() if attach_points: - attach_x = float(attach_points[0][0]) / size_request - attach_y = float(attach_points[0][1]) / size_request + attach_x = float(attach_points[0].x) / size_request + attach_y = float(attach_points[0].y) / size_request else: attach_x = attach_y = 0 @@ -137,7 +137,7 @@ class _IconBuffer(object): if self.file_name: icon_info.file_name = self.file_name elif self.icon_name: - theme = gtk.icon_theme_get_default() + theme = Gtk.IconTheme.get_default() size = 50 if self.width != None: @@ -159,7 +159,7 @@ class _IconBuffer(object): return icon_info def _draw_badge(self, context, size, sensitive, widget): - theme = gtk.icon_theme_get_default() + theme = Gtk.IconTheme.get_default() badge_info = theme.lookup_icon(self.badge_name, int(size), 0) if badge_info: badge_file_name = badge_info.get_filename() @@ -172,7 +172,7 @@ class _IconBuffer(object): pixbuf = handle.get_pixbuf() else: - pixbuf = gtk.gdk.pixbuf_new_from_file(badge_file_name) + pixbuf = GdkPixbuf.Pixbuf.new_from_file(badge_file_name) icon_width = pixbuf.get_width() icon_height = pixbuf.get_height() @@ -182,7 +182,7 @@ class _IconBuffer(object): if not sensitive: pixbuf = self._get_insensitive_pixbuf(pixbuf, widget) - surface = hippo.cairo_surface_from_gdk_pixbuf(pixbuf) + surface = SugarExt.cairo_surface_from_pixbuf(pixbuf) context.set_source_surface(surface, 0, 0) context.paint() @@ -233,16 +233,16 @@ class _IconBuffer(object): if not (widget and widget.style): return pixbuf - icon_source = gtk.IconSource() + icon_source = Gtk.IconSource() # Special size meaning "don't touch" icon_source.set_size(-1) icon_source.set_pixbuf(pixbuf) - icon_source.set_state(gtk.STATE_INSENSITIVE) + icon_source.set_state(Gtk.StateType.INSENSITIVE) icon_source.set_direction_wildcarded(False) icon_source.set_size_wildcarded(False) pixbuf = widget.style.render_icon(icon_source, widget.get_direction(), - gtk.STATE_INSENSITIVE, -1, widget, + Gtk.StateType.INSENSITIVE, -1, widget, 'sugar-icon') return pixbuf @@ -264,7 +264,7 @@ class _IconBuffer(object): icon_width = int(dimensions[0]) icon_height = int(dimensions[1]) else: - pixbuf = gtk.gdk.pixbuf_new_from_file(icon_info.file_name) + pixbuf = GdkPixbuf.Pixbuf.new_from_file(icon_info.file_name) icon_width = pixbuf.get_width() icon_height = pixbuf.get_height() @@ -280,7 +280,7 @@ class _IconBuffer(object): surface = cairo.ImageSurface(cairo.FORMAT_RGB24, int(width), int(height)) context = cairo.Context(surface) - context = gtk.gdk.CairoContext(context) + context = Gdk.CairoContext(context) context.set_source_color(self.background_color) context.paint() @@ -296,13 +296,13 @@ class _IconBuffer(object): pixbuf = handle.get_pixbuf() pixbuf = self._get_insensitive_pixbuf(pixbuf, widget) - pixbuf_surface = hippo.cairo_surface_from_gdk_pixbuf(pixbuf) + pixbuf_surface = SugarExt.cairo_surface_from_pixbuf(pixbuf) context.set_source_surface(pixbuf_surface, 0, 0) context.paint() else: if not sensitive: pixbuf = self._get_insensitive_pixbuf(pixbuf, widget) - pixbuf_surface = hippo.cairo_surface_from_gdk_pixbuf(pixbuf) + pixbuf_surface = SugarExt.cairo_surface_from_pixbuf(pixbuf) context.set_source_surface(pixbuf_surface, 0, 0) context.paint() @@ -318,7 +318,7 @@ class _IconBuffer(object): xo_color = property(_get_xo_color, _set_xo_color) -class Icon(gtk.Image): +class Icon(Gtk.Image): __gtype_name__ = 'SugarIcon' @@ -331,7 +331,7 @@ class Icon(gtk.Image): self._alpha = 1.0 self._scale = 1.0 - gobject.GObject.__init__(self, **kwargs) + GObject.GObject.__init__(self, **kwargs) def get_file(self): return self._file @@ -340,7 +340,7 @@ class Icon(gtk.Image): self._file = file_name self._buffer.file_name = file_name - file = gobject.property(type=object, setter=set_file, getter=get_file) + file = GObject.property(type=object, setter=set_file, getter=get_file) def _sync_image_properties(self): if self._buffer.icon_name != self.props.icon_name: @@ -350,7 +350,7 @@ class Icon(gtk.Image): self._buffer.file_name = self.props.file if self.props.pixel_size == -1: - width, height = gtk.icon_size_lookup(self.props.icon_size) + width, height = Gtk.icon_size_lookup(self.props.icon_size) else: width = height = self.props.pixel_size if self._buffer.width != width or self._buffer.height != height: @@ -400,7 +400,7 @@ class Icon(gtk.Image): """ self._sync_image_properties() - sensitive = (self.state != gtk.STATE_INSENSITIVE) + sensitive = (self.state != Gtk.StateType.INSENSITIVE) surface = self._buffer.get_surface(sensitive, self) if surface is None: return @@ -408,7 +408,7 @@ class Icon(gtk.Image): xpad, ypad = self.get_padding() xalign, yalign = self.get_alignment() requisition = self.get_child_requisition() - if self.get_direction() != gtk.TEXT_DIR_LTR: + if self.get_direction() != Gtk.TextDirection.LTR: xalign = 1.0 - xalign allocation = self.get_allocation() @@ -450,7 +450,7 @@ class Icon(gtk.Image): self._buffer.xo_color = value self.queue_draw() - xo_color = gobject.property( + xo_color = GObject.property( type=object, getter=None, setter=set_xo_color) def set_fill_color(self, value): @@ -481,7 +481,7 @@ class Icon(gtk.Image): """ return self._buffer.fill_color - fill_color = gobject.property( + fill_color = GObject.property( type=object, getter=get_fill_color, setter=set_fill_color) def set_stroke_color(self, value): @@ -512,7 +512,7 @@ class Icon(gtk.Image): """ return self._buffer.stroke_color - stroke_color = gobject.property( + stroke_color = GObject.property( type=object, getter=get_stroke_color, setter=set_stroke_color) def set_badge_name(self, value): @@ -533,7 +533,7 @@ class Icon(gtk.Image): def get_badge_name(self): return self._buffer.badge_name - badge_name = gobject.property( + badge_name = GObject.property( type=str, getter=get_badge_name, setter=set_badge_name) def set_alpha(self, value): @@ -541,7 +541,7 @@ class Icon(gtk.Image): self._alpha = value self.queue_draw() - alpha = gobject.property( + alpha = GObject.property( type=float, setter=set_alpha) def set_scale(self, value): @@ -549,11 +549,11 @@ class Icon(gtk.Image): self._scale = value self.queue_draw() - scale = gobject.property( + scale = GObject.property( type=float, setter=set_scale) -class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): +class CanvasIcon(Hippo.CanvasBox, Hippo.CanvasItem): __gtype_name__ = 'CanvasIcon' @@ -564,7 +564,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): self._palette_invoker = CanvasInvoker() self._alpha = 1.0 - hippo.CanvasBox.__init__(self, **kwargs) + gobject.GObject.__init__(self, **kwargs) self._palette_invoker.attach(self) @@ -616,7 +616,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.file_name - file_name = gobject.property( + file_name = GObject.property( type=object, getter=get_file_name, setter=set_file_name) def set_icon_name(self, value): @@ -647,7 +647,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.icon_name - icon_name = gobject.property( + icon_name = GObject.property( type=object, getter=get_icon_name, setter=set_icon_name) def set_xo_color(self, value): @@ -665,7 +665,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): self._buffer.xo_color = value self._emit_paint_needed_icon_area() - xo_color = gobject.property( + xo_color = GObject.property( type=object, getter=None, setter=set_xo_color) def set_fill_color(self, value): @@ -696,7 +696,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.fill_color - fill_color = gobject.property( + fill_color = GObject.property( type=object, getter=get_fill_color, setter=set_fill_color) def set_stroke_color(self, value): @@ -727,7 +727,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.stroke_color - stroke_color = gobject.property( + stroke_color = GObject.property( type=object, getter=get_stroke_color, setter=set_stroke_color) def set_background_color(self, value): @@ -758,7 +758,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.background_color - background_color = gobject.property( + background_color = GObject.property( type=object, getter=get_background_color, setter=set_background_color) def set_size(self, value): @@ -790,7 +790,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.width - size = gobject.property( + size = GObject.property( type=object, getter=get_size, setter=set_size) def set_scale(self, value): @@ -821,7 +821,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.scale - scale = gobject.property( + scale = GObject.property( type=float, getter=get_scale, setter=set_scale) def set_alpha(self, alpha): @@ -829,7 +829,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): self._alpha = alpha self.emit_paint_needed(0, 0, -1, -1) - alpha = gobject.property( + alpha = GObject.property( type=float, setter=set_alpha) def set_cache(self, value): @@ -858,7 +858,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.cache - cache = gobject.property( + cache = GObject.property( type=bool, default=False, getter=get_cache, setter=set_cache) def set_badge_name(self, value): @@ -889,7 +889,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): """ return self._buffer.badge_name - badge_name = gobject.property( + badge_name = GObject.property( type=object, getter=get_badge_name, setter=set_badge_name) def do_paint_below_children(self, cr, damaged_box): @@ -966,7 +966,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): def set_palette(self, palette): self._palette_invoker.palette = palette - palette = gobject.property( + palette = GObject.property( type=object, setter=set_palette, getter=get_palette) def get_palette_invoker(self): @@ -976,7 +976,7 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): self._palette_invoker.detach() self._palette_invoker = palette_invoker - palette_invoker = gobject.property( + palette_invoker = GObject.property( type=object, setter=set_palette_invoker, getter=get_palette_invoker) def set_tooltip(self, text): @@ -985,12 +985,12 @@ class CanvasIcon(hippo.CanvasBox, hippo.CanvasItem): self.set_palette(Palette(text)) -class CellRendererIcon(gtk.GenericCellRenderer): +class CellRendererIcon(Gtk.GenericCellRenderer): __gtype_name__ = 'SugarCellRendererIcon' __gsignals__ = { - 'clicked': (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, [object]), + 'clicked': (GObject.SignalFlags.RUN_FIRST, None, [object]), } def __init__(self, tree_view): @@ -1005,7 +1005,7 @@ class CellRendererIcon(gtk.GenericCellRenderer): self._prelit_stroke_color = None self._palette_invoker = CellRendererInvoker() - gobject.GObject.__init__(self) + GObject.GObject.__init__(self) self._palette_invoker.attach_cell_renderer(tree_view, self) @@ -1020,19 +1020,19 @@ class CellRendererIcon(gtk.GenericCellRenderer): def get_palette_invoker(self): return self._palette_invoker - palette_invoker = gobject.property(type=object, getter=get_palette_invoker) + palette_invoker = GObject.property(type=object, getter=get_palette_invoker) def set_file_name(self, value): if self._buffer.file_name != value: self._buffer.file_name = value - file_name = gobject.property(type=str, setter=set_file_name) + file_name = GObject.property(type=str, setter=set_file_name) def set_icon_name(self, value): if self._buffer.icon_name != value: self._buffer.icon_name = value - icon_name = gobject.property(type=str, setter=set_icon_name) + icon_name = GObject.property(type=str, setter=set_icon_name) def get_xo_color(self): return self._xo_color @@ -1040,40 +1040,40 @@ class CellRendererIcon(gtk.GenericCellRenderer): def set_xo_color(self, value): self._xo_color = value - xo_color = gobject.property(type=object, + xo_color = GObject.property(type=object, getter=get_xo_color, setter=set_xo_color) def set_fill_color(self, value): if self._fill_color != value: self._fill_color = value - fill_color = gobject.property(type=object, setter=set_fill_color) + fill_color = GObject.property(type=object, setter=set_fill_color) def set_stroke_color(self, value): if self._stroke_color != value: self._stroke_color = value - stroke_color = gobject.property(type=object, setter=set_stroke_color) + stroke_color = GObject.property(type=object, setter=set_stroke_color) def set_prelit_fill_color(self, value): if self._prelit_fill_color != value: self._prelit_fill_color = value - prelit_fill_color = gobject.property(type=object, + prelit_fill_color = GObject.property(type=object, setter=set_prelit_fill_color) def set_prelit_stroke_color(self, value): if self._prelit_stroke_color != value: self._prelit_stroke_color = value - prelit_stroke_color = gobject.property(type=object, + prelit_stroke_color = GObject.property(type=object, setter=set_prelit_stroke_color) def set_background_color(self, value): if self._buffer.background_color != value: self._buffer.background_color = value - background_color = gobject.property(type=object, + background_color = GObject.property(type=object, setter=set_background_color) def set_size(self, value): @@ -1081,7 +1081,7 @@ class CellRendererIcon(gtk.GenericCellRenderer): self._buffer.width = value self._buffer.height = value - size = gobject.property(type=object, setter=set_size) + size = GObject.property(type=object, setter=set_size) def on_get_size(self, widget, cell_area): width = self._buffer.width + self.props.xpad * 2 @@ -1091,7 +1091,7 @@ class CellRendererIcon(gtk.GenericCellRenderer): if width > 0 and height > 0 and cell_area is not None: - if widget.get_direction() == gtk.TEXT_DIR_RTL: + if widget.get_direction() == Gtk.TextDirection.RTL: xoffset = 1.0 - self.props.xalign else: xoffset = self.props.xalign @@ -1143,7 +1143,7 @@ class CellRendererIcon(gtk.GenericCellRenderer): has_prelit_colors = None not in [prelit_fill_color, prelit_stroke_color] - if flags & gtk.CELL_RENDERER_PRELIT and has_prelit_colors and \ + if flags & Gtk.CELL_RENDERER_PRELIT and has_prelit_colors and \ self._is_prelit(widget): self._buffer.fill_color = prelit_fill_color @@ -1169,7 +1169,7 @@ class CellRendererIcon(gtk.GenericCellRenderer): def get_icon_state(base_name, perc, step=5): strength = round(perc / step) * step - icon_theme = gtk.icon_theme_get_default() + icon_theme = Gtk.IconTheme.get_default() while strength <= 100 and strength >= 0: icon_name = '%s-%03d' % (base_name, strength) @@ -1180,8 +1180,8 @@ def get_icon_state(base_name, perc, step=5): def get_icon_file_name(icon_name): - icon_theme = gtk.icon_theme_get_default() - info = icon_theme.lookup_icon(icon_name, gtk.ICON_SIZE_LARGE_TOOLBAR, 0) + icon_theme = Gtk.IconTheme.get_default() + info = icon_theme.lookup_icon(icon_name, Gtk.IconSize.LARGE_TOOLBAR, 0) if not info: return None filename = info.get_filename() |