Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/sugar3/graphics/icon.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/sugar3/graphics/icon.py')
-rw-r--r--src/sugar3/graphics/icon.py124
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()