[arch-commits] Commit in sugar-activity-calculate/repos/community-any (3 files)

Balló György bgyorgy at archlinux.org
Sat Jun 17 14:42:03 UTC 2017


    Date: Saturday, June 17, 2017 @ 14:42:02
  Author: bgyorgy
Revision: 237909

archrelease: copy trunk to community-any

Added:
  sugar-activity-calculate/repos/community-any/PKGBUILD
    (from rev 237908, sugar-activity-calculate/trunk/PKGBUILD)
Deleted:
  sugar-activity-calculate/repos/community-any/0001-Port-to-GTK3.patch
  sugar-activity-calculate/repos/community-any/PKGBUILD

-------------------------+
 0001-Port-to-GTK3.patch |  964 ----------------------------------------------
 PKGBUILD                |   57 +-
 2 files changed, 27 insertions(+), 994 deletions(-)

Deleted: 0001-Port-to-GTK3.patch
===================================================================
--- 0001-Port-to-GTK3.patch	2017-06-17 14:41:49 UTC (rev 237908)
+++ 0001-Port-to-GTK3.patch	2017-06-17 14:42:02 UTC (rev 237909)
@@ -1,964 +0,0 @@
-From 80a5111bd2bde5cc1cafeddd13a76a4a083f5bf5 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ball=C3=83=C2=83=C3=82=C2=B3=20Gy=C3=83=C2=83=C3=82=C2=B6r?=
- =?UTF-8?q?gy?= <ballogyor at gmail.com>
-Date: Tue, 14 Feb 2017 20:49:52 +0100
-Subject: [PATCH] Port to GTK3
-
----
- calculate.py          | 105 +++++++++---------
- layout.py             | 293 +++++++++++++++++++++++---------------------------
- setup.py              |   2 +-
- shareable_activity.py |  10 +-
- svgimage.py           |   8 +-
- toolbars.py           |  57 +++++-----
- 6 files changed, 227 insertions(+), 248 deletions(-)
-
-diff --git a/calculate.py b/calculate.py
-index d7eeef8..8abb103 100644
---- a/calculate.py
-+++ b/calculate.py
-@@ -25,13 +25,14 @@ from gettext import gettext as _
- import logging
- _logger = logging.getLogger('Calculate')
- 
--import pygtk
--pygtk.require('2.0')
--import gtk
-+import gi
-+gi.require_version('Gtk', '3.0')
-+from gi.repository import Gtk
-+from gi.repository import Gdk
- import base64
- 
--import sugar.profile
--from sugar.graphics.xocolor import XoColor
-+import sugar3.profile
-+from sugar3.graphics.xocolor import XoColor
- 
- from shareable_activity import ShareableActivity
- from layout import CalcLayout
-@@ -63,8 +64,8 @@ def findchar(text, chars, ofs=0):
- 
- def _textview_realize_cb(widget):
-     '''Change textview properties once window is created.'''
--    win = widget.get_window(gtk.TEXT_WINDOW_TEXT)
--    win.set_cursor(gtk.gdk.Cursor(gtk.gdk.HAND1))
-+    win = widget.get_window(Gtk.TextWindowType.TEXT)
-+    win.set_cursor(Gdk.Cursor.new(Gdk.CursorType.HAND1))
-     return False
- 
- 
-@@ -131,7 +132,7 @@ class Equation:
-         return size
- 
-     def append_with_superscript_tags(self, buf, text, *tags):
--        '''Add a text to a gtk.TextBuffer with superscript tags.'''
-+        '''Add a text to a Gtk.TextBuffer with superscript tags.'''
-         fontsize = self.determine_font_size(*tags)
-         _logger.debug('font-size: %d', fontsize)
-         tagsuper = buf.create_tag(rise=fontsize / 2)
-@@ -184,16 +185,16 @@ class Equation:
- 
-     def create_lasteq_textbuf(self):
-         '''
--        Return a gtk.TextBuffer properly formatted for last equation
--        gtk.TextView.
-+        Return a Gtk.TextBuffer properly formatted for last equation
-+        Gtk.TextView.
-         '''
- 
-         is_error = isinstance(self.result, ParserError)
--        buf = gtk.TextBuffer()
-+        buf = Gtk.TextBuffer()
-         tagsmallnarrow = buf.create_tag(font=CalcLayout.FONT_SMALL_NARROW)
-         tagbignarrow = buf.create_tag(font=CalcLayout.FONT_BIG_NARROW)
-         tagbigger = buf.create_tag(font=CalcLayout.FONT_BIGGER)
--        tagjustright = buf.create_tag(justification=gtk.JUSTIFY_RIGHT)
-+        tagjustright = buf.create_tag(justification=Gtk.Justification.RIGHT)
-         tagred = buf.create_tag(foreground='#FF0000')
- 
-         # Add label and equation
-@@ -233,39 +234,39 @@ class Equation:
-         """
-         Create a history object for this equation.
-         In case of an SVG result this will be the image, otherwise it will
--        return a properly formatted gtk.TextView.
-+        return a properly formatted Gtk.TextView.
-         """
- 
-         if isinstance(self.result, SVGImage):
-             return self.result.get_image()
- 
--        w = gtk.TextView()
-+        w = Gtk.TextView()
-         w.modify_base(
--            gtk.STATE_NORMAL, gtk.gdk.color_parse(self.color.get_fill_color()))
-+            Gtk.StateType.NORMAL, Gdk.color_parse(self.color.get_fill_color()))
-         w.modify_bg(
--            gtk.STATE_NORMAL,
--            gtk.gdk.color_parse(self.color.get_stroke_color()))
--        w.set_wrap_mode(gtk.WRAP_WORD_CHAR)
--        w.set_border_window_size(gtk.TEXT_WINDOW_LEFT, 4)
--        w.set_border_window_size(gtk.TEXT_WINDOW_RIGHT, 4)
--        w.set_border_window_size(gtk.TEXT_WINDOW_TOP, 4)
--        w.set_border_window_size(gtk.TEXT_WINDOW_BOTTOM, 4)
-+            Gtk.StateType.NORMAL,
-+            Gdk.color_parse(self.color.get_stroke_color()))
-+        w.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
-+        w.set_border_window_size(Gtk.TextWindowType.LEFT, 4)
-+        w.set_border_window_size(Gtk.TextWindowType.RIGHT, 4)
-+        w.set_border_window_size(Gtk.TextWindowType.TOP, 4)
-+        w.set_border_window_size(Gtk.TextWindowType.BOTTOM, 4)
-         w.connect('realize', _textview_realize_cb)
-         buf = w.get_buffer()
- 
-         tagsmall = buf.create_tag(font=CalcLayout.FONT_SMALL)
-         tagsmallnarrow = buf.create_tag(font=CalcLayout.FONT_SMALL_NARROW)
-         tagbig = buf.create_tag(font=CalcLayout.FONT_BIG,
--                                justification=gtk.JUSTIFY_RIGHT)
-+                                justification=Gtk.Justification.RIGHT)
-         # TODO Fix for old Sugar 0.82 builds, red_float not available
-         bright = (
--            gtk.gdk.color_parse(self.color.get_fill_color()).red_float +
--            gtk.gdk.color_parse(self.color.get_fill_color()).green_float +
--            gtk.gdk.color_parse(self.color.get_fill_color()).blue_float) / 3.0
-+            Gdk.color_parse(self.color.get_fill_color()).red_float +
-+            Gdk.color_parse(self.color.get_fill_color()).green_float +
-+            Gdk.color_parse(self.color.get_fill_color()).blue_float) / 3.0
-         if bright < 0.5:
--            col = gtk.gdk.color_parse('white')
-+            col = Gdk.color_parse('white')
-         else:
--            col = gtk.gdk.color_parse('black')
-+            col = Gdk.color_parse('black')
-         tagcolor = buf.create_tag(foreground=col)
- 
-         # Add label, equation and result
-@@ -371,7 +372,7 @@ class Calculate(ShareableActivity):
-         self.KEYMAP['divide'] = self.ml.div_sym
-         self.KEYMAP['equal'] = self.ml.equ_sym
- 
--        self.clipboard = gtk.Clipboard()
-+        self.clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD)
-         self.select_reason = self.SELECT_SELECT
-         self.buffer = u""
-         self.showing_version = 0
-@@ -381,7 +382,7 @@ class Calculate(ShareableActivity):
- 
-         self.connect("key_press_event", self.keypress_cb)
-         self.connect("destroy", self.cleanup_cb)
--        self.color = sugar.profile.get_color()
-+        self.color = sugar3.profile.get_color()
- 
-         self.layout = CalcLayout(self)
-         self.label_entry = self.layout.label_entry
-@@ -561,34 +562,34 @@ class Calculate(ShareableActivity):
-         return res is not None
- 
-     def create_var_textview(self, name, value):
--        """Create a gtk.TextView for a variable"""
-+        """Create a Gtk.TextView for a variable"""
- 
-         reserved = ["Ans", "LastEqn", "help"]
-         if name in reserved:
-             return None
--        w = gtk.TextView()
-+        w = Gtk.TextView()
-         w.modify_base(
--            gtk.STATE_NORMAL, gtk.gdk.color_parse(self.color.get_fill_color()))
-+            Gtk.StateType.NORMAL, Gdk.color_parse(self.color.get_fill_color()))
-         w.modify_bg(
--            gtk.STATE_NORMAL,
--            gtk.gdk.color_parse(self.color.get_stroke_color()))
--        w.set_wrap_mode(gtk.WRAP_WORD_CHAR)
--        w.set_border_window_size(gtk.TEXT_WINDOW_LEFT, 4)
--        w.set_border_window_size(gtk.TEXT_WINDOW_RIGHT, 4)
--        w.set_border_window_size(gtk.TEXT_WINDOW_TOP, 4)
--        w.set_border_window_size(gtk.TEXT_WINDOW_BOTTOM, 4)
-+            Gtk.StateType.NORMAL,
-+            Gdk.color_parse(self.color.get_stroke_color()))
-+        w.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
-+        w.set_border_window_size(Gtk.TextWindowType.LEFT, 4)
-+        w.set_border_window_size(Gtk.TextWindowType.RIGHT, 4)
-+        w.set_border_window_size(Gtk.TextWindowType.TOP, 4)
-+        w.set_border_window_size(Gtk.TextWindowType.BOTTOM, 4)
-         w.connect('realize', _textview_realize_cb)
-         buf = w.get_buffer()
- 
-         # TODO Fix for old Sugar 0.82 builds, red_float not available
-         bright = (
--            gtk.gdk.color_parse(self.color.get_fill_color()).red_float +
--            gtk.gdk.color_parse(self.color.get_fill_color()).green_float +
--            gtk.gdk.color_parse(self.color.get_fill_color()).blue_float) / 3.0
-+            Gdk.color_parse(self.color.get_fill_color()).red_float +
-+            Gdk.color_parse(self.color.get_fill_color()).green_float +
-+            Gdk.color_parse(self.color.get_fill_color()).blue_float) / 3.0
-         if bright < 0.5:
--            col = gtk.gdk.color_parse('white')
-+            col = Gdk.color_parse('white')
-         else:
--            col = gtk.gdk.color_parse('black')
-+            col = Gdk.color_parse('black')
- 
-         tag = buf.create_tag(font=CalcLayout.FONT_SMALL_NARROW,
-                              foreground=col)
-@@ -785,7 +786,7 @@ class Calculate(ShareableActivity):
-     def text_copy(self):
-         if self.layout.graph_selected is not None:
-             self.clipboard.set_image(
--                self.layout.graph_selected.child.get_pixbuf())
-+                self.layout.graph_selected.get_child().get_pixbuf())
-             self.layout.toggle_select_graph(self.layout.graph_selected)
-         else:
-             str = self.text_entry.get_text()
-@@ -817,20 +818,20 @@ class Calculate(ShareableActivity):
-         if not self.text_entry.is_focus():
-             return
- 
--        key = gtk.gdk.keyval_name(event.keyval)
-+        key = Gdk.keyval_name(event.keyval)
-         if event.hardware_keycode == 219:
--            if (event.state & gtk.gdk.SHIFT_MASK):
-+            if (event.get_state() & Gdk.ModifierType.SHIFT_MASK):
-                 key = 'divide'
-             else:
-                 key = 'multiply'
-         _logger.debug('Key: %s (%r, %r)', key,
-                       event.keyval, event.hardware_keycode)
- 
--        if event.state & gtk.gdk.CONTROL_MASK:
-+        if event.get_state() & Gdk.ModifierType.CONTROL_MASK:
-             if key in self.CTRL_KEYMAP:
-                 f = self.CTRL_KEYMAP[key]
-                 return f(self)
--        elif (event.state & gtk.gdk.SHIFT_MASK) and key in self.SHIFT_KEYMAP:
-+        elif (event.get_state() & Gdk.ModifierType.SHIFT_MASK) and key in self.SHIFT_KEYMAP:
-             f = self.SHIFT_KEYMAP[key]
-             return f(self)
-         elif unicode(key) in self.IDENTIFIER_CHARS:
-@@ -965,9 +966,9 @@ class Calculate(ShareableActivity):
- 
- 
- def main():
--    win = gtk.Window(gtk.WINDOW_TOPLEVEL)
-+    win = Gtk.Window(Gtk.WindowType.TOPLEVEL)
-     t = Calculate(win)
--    gtk.main()
-+    Gtk.main()
-     return 0
- 
- if __name__ == "__main__":
-diff --git a/layout.py b/layout.py
-index 6075afb..22560f1 100644
---- a/layout.py
-+++ b/layout.py
-@@ -19,13 +19,14 @@
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
- 
- from gettext import gettext as _
--import pygtk
--pygtk.require('2.0')
--import gtk
--import pango
--from sugar.activity import activity
--import sugar.profile
--from sugar.graphics.combobox import ComboBox
-+import gi
-+gi.require_version('Gtk', '3.0')
-+from gi.repository import Gtk
-+from gi.repository import Gdk
-+from gi.repository import Pango
-+from sugar3.activity import activity
-+import sugar3.profile
-+from sugar3.graphics.combobox import ComboBox
- from toolbars import EditToolbar
- from toolbars import AlgebraToolbar
- from toolbars import TrigonometryToolbar
-@@ -33,9 +34,9 @@ from toolbars import BooleanToolbar
- from toolbars import MiscToolbar
- 
- try:
--    from sugar.graphics.toolbarbox import ToolbarButton, ToolbarBox
--    from sugar.activity.widgets import ActivityToolbarButton
--    from sugar.activity.widgets import StopButton
-+    from sugar3.graphics.toolbarbox import ToolbarButton, ToolbarBox
-+    from sugar3.activity.widgets import ActivityToolbarButton
-+    from sugar3.activity.widgets import StopButton
- except ImportError:
-     pass
- 
-@@ -64,7 +65,7 @@ class CalcLayout:
-         self.create_dialog()
- 
-     def create_color(self, rf, gf, bf):
--        return gtk.gdk.Color(int(rf * 0xFFFF), int(gf * 0xFFFF),
-+        return Gdk.Color(int(rf * 0xFFFF), int(gf * 0xFFFF),
-                              int(bf * 0xFFFF))
- 
-     def create_button_data(self):
-@@ -134,75 +135,51 @@ class CalcLayout:
-         """Setup most of the dialog."""
- 
- # Toolbar
--        try:
--            self._toolbar_box = ToolbarBox()
--
--            activity_button = ActivityToolbarButton(self._parent)
--            self._toolbar_box.toolbar.insert(activity_button, 0)
--
--            def append(icon_name, label, page, position):
--                toolbar_button = ToolbarButton()
--                toolbar_button.props.page = page
--                toolbar_button.props.icon_name = icon_name
--                toolbar_button.props.label = label
--                self._toolbar_box.toolbar.insert(toolbar_button, position)
--
--            append('toolbar-edit',
--                   _('Edit'),
--                   EditToolbar(self._parent),
--                   -1)
--
--            append('toolbar-algebra',
--                   _('Algebra'),
--                   AlgebraToolbar(self._parent),
--                   -1)
--
--            append('toolbar-trigonometry',
--                   _('Trigonometry'),
--                   TrigonometryToolbar(self._parent),
--                   -1)
--
--            append('toolbar-boolean',
--                   _('Boolean'),
--                   BooleanToolbar(self._parent),
--                   -1)
--
--            self._misc_toolbar = MiscToolbar(
--                self._parent,
--                target_toolbar=self._toolbar_box.toolbar)
--
--            append('toolbar-constants',
--                   _('Miscellaneous'),
--                   self._misc_toolbar,
--                   5)
--
--            self._stop_separator = gtk.SeparatorToolItem()
--            self._stop_separator.props.draw = False
--            self._stop_separator.set_expand(True)
--            self._stop_separator.show()
--            self._toolbar_box.toolbar.insert(self._stop_separator, -1)
--
--            self._stop = StopButton(self._parent)
--            self._toolbar_box.toolbar.insert(self._stop, -1)
--
--            self._toolbar_box.show_all()
--            self._parent.set_toolbar_box(self._toolbar_box)
--
--        except NameError:
--            # Use old toolbar design
--            toolbox = activity.ActivityToolbox(self._parent)
--            self._parent.set_toolbox(toolbox)
--            toolbox.add_toolbar(_('Edit'), EditToolbar(self._parent))
--            toolbox.add_toolbar(_('Algebra'), AlgebraToolbar(self._parent))
--            toolbox.add_toolbar(
--                _('Trigonometry'), TrigonometryToolbar(self._parent))
--            toolbox.add_toolbar(_('Boolean'), BooleanToolbar(self._parent))
--            toolbox.add_toolbar(_('Miscellaneous'), MiscToolbar(self._parent))
--            toolbox.show_all()
-+        self._toolbar_box = ToolbarBox()
-+        activity_button = ActivityToolbarButton(self._parent)
-+        self._toolbar_box.toolbar.insert(activity_button, 0)
-+        def append(icon_name, label, page, position):
-+            toolbar_button = ToolbarButton()
-+            toolbar_button.props.page = page
-+            toolbar_button.props.icon_name = icon_name
-+            toolbar_button.props.label = label
-+            self._toolbar_box.toolbar.insert(toolbar_button, position)
-+        append('toolbar-edit',
-+               _('Edit'),
-+               EditToolbar(self._parent),
-+               -1)
-+        append('toolbar-algebra',
-+               _('Algebra'),
-+               AlgebraToolbar(self._parent),
-+               -1)
-+        append('toolbar-trigonometry',
-+               _('Trigonometry'),
-+               TrigonometryToolbar(self._parent),
-+               -1)
-+        append('toolbar-boolean',
-+               _('Boolean'),
-+               BooleanToolbar(self._parent),
-+               -1)
-+        self._misc_toolbar = MiscToolbar(
-+            self._parent,
-+            target_toolbar=self._toolbar_box.toolbar)
-+        append('toolbar-constants',
-+               _('Miscellaneous'),
-+               self._misc_toolbar,
-+               5)
-+        self._stop_separator = Gtk.SeparatorToolItem()
-+        self._stop_separator.props.draw = False
-+        self._stop_separator.set_expand(True)
-+        self._stop_separator.show()
-+        self._toolbar_box.toolbar.insert(self._stop_separator, -1)
-+        self._stop = StopButton(self._parent)
-+        self._toolbar_box.toolbar.insert(self._stop, -1)
-+        self._toolbar_box.show_all()
-+        self._parent.set_toolbar_box(self._toolbar_box)
- 
- # Some layout constants
--        self.input_font = pango.FontDescription(str='sans bold 12')
--        self.button_font = pango.FontDescription(str='sans bold 16')
-+        self.input_font = Pango.FontDescription('sans bold 12')
-+        self.button_font = Pango.FontDescription('sans bold 16')
-         self.col_white = self.create_color(1.00, 1.00, 1.00)
-         self.col_gray1 = self.create_color(0.76, 0.76, 0.76)
-         self.col_gray2 = self.create_color(0.50, 0.50, 0.50)
-@@ -211,31 +188,31 @@ class CalcLayout:
-         self.col_red = self.create_color(1.00, 0.00, 0.00)
- 
- # Big - Table, 16 rows, 10 columns, homogeneously divided
--        self.grid = gtk.Table(26, 11, True)
--        self.grid.set_border_width(0)
--        self.grid.set_row_spacings(0)
--        self.grid.set_col_spacings(4)
-+        self.grid = Gtk.Grid()
-+        self.grid.set_column_homogeneous (True)
-+        self.grid.set_row_spacing(0)
-+        self.grid.set_column_spacing(4)
- 
- # Left part: container and input
--        vc1 = gtk.VBox(False, 0)
--        hc1 = gtk.HBox(False, 10)
--        eb = gtk.EventBox()
-+        vc1 = Gtk.VBox(False, 0)
-+        hc1 = Gtk.HBox(False, 10)
-+        eb = Gtk.EventBox()
-         eb.add(hc1)
--        eb.modify_bg(gtk.STATE_NORMAL, self.col_black)
-+        eb.modify_bg(Gtk.StateType.NORMAL, self.col_black)
-         eb.set_border_width(12)
--        eb2 = gtk.EventBox()
-+        eb2 = Gtk.EventBox()
-         eb2.add(eb)
--        eb2.modify_bg(gtk.STATE_NORMAL, self.col_black)
--        label1 = gtk.Label(_('Label:'))
--        label1.modify_fg(gtk.STATE_NORMAL, self.col_white)
-+        eb2.modify_bg(Gtk.StateType.NORMAL, self.col_black)
-+        label1 = Gtk.Label(label=_('Label:'))
-+        label1.modify_fg(Gtk.StateType.NORMAL, self.col_white)
-         label1.set_alignment(1, 0.5)
-         hc1.pack_start(label1, expand=False, fill=False, padding=10)
--        self.label_entry = gtk.Entry()
--        self.label_entry.modify_bg(gtk.STATE_INSENSITIVE, self.col_black)
-+        self.label_entry = Gtk.Entry()
-+        self.label_entry.modify_bg(Gtk.StateType.INSENSITIVE, self.col_black)
-         hc1.pack_start(self.label_entry, expand=True, fill=True, padding=0)
--        vc1.pack_start(eb2, expand=False)
-+        vc1.pack_start(eb2, False, True, 0)
- 
--        self.text_entry = gtk.Entry()
-+        self.text_entry = Gtk.Entry()
-         try:
-             self.text_entry.props.im_module = 'gtk-im-context-simple'
-         except AttributeError:
-@@ -243,95 +220,95 @@ class CalcLayout:
-         self.text_entry.set_size_request(-1, 75)
-         self.text_entry.connect('key_press_event', self._parent.ignore_key_cb)
-         self.text_entry.modify_font(self.input_font)
--        self.text_entry.modify_bg(gtk.STATE_INSENSITIVE, self.col_black)
--        eb = gtk.EventBox()
-+        self.text_entry.modify_bg(Gtk.StateType.INSENSITIVE, self.col_black)
-+        eb = Gtk.EventBox()
-         eb.add(self.text_entry)
--        eb.modify_bg(gtk.STATE_NORMAL, self.col_black)
-+        eb.modify_bg(Gtk.StateType.NORMAL, self.col_black)
-         eb.set_border_width(12)
--        eb2 = gtk.EventBox()
-+        eb2 = Gtk.EventBox()
-         eb2.add(eb)
--        eb2.modify_bg(gtk.STATE_NORMAL, self.col_black)
-+        eb2.modify_bg(Gtk.StateType.NORMAL, self.col_black)
-         vc1.pack_start(eb2, expand=True, fill=True, padding=0)
--        self.grid.attach(vc1, 0, 7, 0, 6)
-+        self.grid.attach(vc1, 0, 0, 7, 6)
- 
- # Left part: buttons
--        self.pad = gtk.Table(9, 6, True)
--        self.pad.set_row_spacings(12)
--        self.pad.set_col_spacings(12)
--        self.pad.set_border_width(12)
-+        self.pad = Gtk.Grid()
-+        self.pad.set_column_homogeneous (True)
-+        self.pad.set_row_spacing(6)
-+        self.pad.set_column_spacing(6)
-         self.create_button_data()
-         self.buttons = {}
-         for x, y, w, h, cap, bgcol, cb in self.button_data:
-             button = self.create_button(
-                 _(cap), cb, self.col_white, bgcol, w, h)
-             self.buttons[cap] = button
--            self.pad.attach(button, x, x + w, y, y + h)
-+            self.pad.attach(button, x, y, w, h)
- 
--        eb = gtk.EventBox()
-+        eb = Gtk.EventBox()
-         eb.add(self.pad)
--        eb.modify_bg(gtk.STATE_NORMAL, self.col_black)
--        self.grid.attach(eb, 0, 7, 6, 26)
-+        eb.modify_bg(Gtk.StateType.NORMAL, self.col_black)
-+        self.grid.attach(eb, 0, 6, 7, 20)
- 
- # Right part: container and equation button
--        hc2 = gtk.HBox()
-+        hc2 = Gtk.HBox()
-         combo = ComboBox()
-         combo.append_item(0, _('All equations'))
-         combo.append_item(1, _('My equations'))
-         combo.append_item(2, _('Show variables'))
-         combo.set_active(0)
-         combo.connect('changed', self._history_filter_cb)
--        hc2.pack_start(combo)
-+        hc2.pack_start(combo, True, True, 0)
-         hc2.set_border_width(6)
--        self.grid.attach(hc2, 7, 11, 0, 2)
-+        self.grid.attach(hc2, 7, 0, 4, 2)
- 
- # Right part: last equation
--        self.last_eq = gtk.TextView()
-+        self.last_eq = Gtk.TextView()
-         self.last_eq.set_editable(False)
--        self.last_eq.set_wrap_mode(gtk.WRAP_WORD_CHAR)
-+        self.last_eq.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
-         self.last_eq.connect('realize', self._textview_realize_cb)
--        self.last_eq.modify_base(gtk.STATE_NORMAL, gtk.gdk.color_parse(
--                                 sugar.profile.get_color().get_fill_color()))
--        self.last_eq.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse(
--                               sugar.profile.get_color().get_stroke_color()))
--        self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_LEFT, 4)
--        self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_RIGHT, 4)
--        self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_TOP, 4)
--        self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_BOTTOM, 4)
-+        self.last_eq.modify_base(Gtk.StateType.NORMAL, Gdk.color_parse(
-+                                 sugar3.profile.get_color().get_fill_color()))
-+        self.last_eq.modify_bg(Gtk.StateType.NORMAL, Gdk.color_parse(
-+                               sugar3.profile.get_color().get_stroke_color()))
-+        self.last_eq.set_border_window_size(Gtk.TextWindowType.LEFT, 4)
-+        self.last_eq.set_border_window_size(Gtk.TextWindowType.RIGHT, 4)
-+        self.last_eq.set_border_window_size(Gtk.TextWindowType.TOP, 4)
-+        self.last_eq.set_border_window_size(Gtk.TextWindowType.BOTTOM, 4)
- 
-         # TODO Fix for old Sugar 0.82 builds, red_float not available
--        xo_color = sugar.profile.get_color()
-+        xo_color = sugar3.profile.get_color()
-         bright = (
--            gtk.gdk.color_parse(xo_color.get_fill_color()).red_float +
--            gtk.gdk.color_parse(xo_color.get_fill_color()).green_float +
--            gtk.gdk.color_parse(xo_color.get_fill_color()).blue_float) / 3.0
-+            Gdk.color_parse(xo_color.get_fill_color()).red_float +
-+            Gdk.color_parse(xo_color.get_fill_color()).green_float +
-+            Gdk.color_parse(xo_color.get_fill_color()).blue_float) / 3.0
-         if bright < 0.5:
--            self.last_eq.modify_text(gtk.STATE_NORMAL, self.col_white)
-+            self.last_eq.modify_text(Gtk.StateType.NORMAL, self.col_white)
-         else:
--            self.last_eq.modify_text(gtk.STATE_NORMAL, self.col_black)
-+            self.last_eq.modify_text(Gtk.StateType.NORMAL, self.col_black)
- 
--        self.grid.attach(self.last_eq, 7, 11, 2, 7)
-+        self.grid.attach(self.last_eq, 7, 2, 4, 5)
- 
- # Right part: history
--        scrolled_window = gtk.ScrolledWindow()
--        scrolled_window.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
-+        scrolled_window = Gtk.ScrolledWindow()
-+        scrolled_window.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
- 
--        self.history_vbox = gtk.VBox()
-+        self.history_vbox = Gtk.VBox()
-         self.history_vbox.set_homogeneous(False)
-         self.history_vbox.set_border_width(0)
-         self.history_vbox.set_spacing(4)
- 
--        self.variable_vbox = gtk.VBox()
-+        self.variable_vbox = Gtk.VBox()
-         self.variable_vbox.set_homogeneous(False)
-         self.variable_vbox.set_border_width(0)
-         self.variable_vbox.set_spacing(4)
- 
--        vbox = gtk.VBox()
--        vbox.pack_start(self.history_vbox)
--        vbox.pack_start(self.variable_vbox)
-+        vbox = Gtk.VBox()
-+        vbox.pack_start(self.history_vbox, True, True, 0)
-+        vbox.pack_start(self.variable_vbox, True, True, 0)
-         scrolled_window.add_with_viewport(vbox)
--        self.grid.attach(scrolled_window, 7, 11, 7, 26)
-+        self.grid.attach(scrolled_window, 7, 7, 4, 19)
- 
--        gtk.gdk.screen_get_default().connect('size-changed',
-+        Gdk.Screen.get_default().connect('size-changed',
-                                              self._configure_cb)
- 
-     def _configure_cb(self, event):
-@@ -369,19 +346,19 @@ class CalcLayout:
-             widget.set_visible_window(True)
-             widget.set_above_child(True)
-             self.graph_selected = widget
--            white = gtk.gdk.color_parse('white')
--            widget.modify_bg(gtk.STATE_NORMAL, white)
-+            white = Gdk.color_parse('white')
-+            widget.modify_bg(Gtk.StateType.NORMAL, white)
-         else:
-             widget.set_visible_window(False)
-             self.graph_selected = False
- 
-     def add_equation(self, textview, own, prepend=False):
--        """Add a gtk.TextView of an equation to the history_vbox."""
-+        """Add a Gtk.TextView of an equation to the history_vbox."""
- 
-         GraphEventBox = None
--        if isinstance(textview, gtk.Image):
-+        if isinstance(textview, Gtk.Image):
-             # Add the image inside the eventBox
--            GraphEventBox = gtk.EventBox()
-+            GraphEventBox = Gtk.EventBox()
-             GraphEventBox.add(textview)
-             GraphEventBox.set_visible_window(False)
-             GraphEventBox.connect(
-@@ -390,10 +367,10 @@ class CalcLayout:
- 
-         if prepend:
-             if GraphEventBox:
--                self.history_vbox.pack_start(GraphEventBox, False, True)
-+                self.history_vbox.pack_start(GraphEventBox, False, True, 0)
-                 self.history_vbox.reorder_child(GraphEventBox, 0)
-             else:
--                self.history_vbox.pack_start(textview, False, True)
-+                self.history_vbox.pack_start(textview, False, True, 0)
-                 self.history_vbox.reorder_child(textview, 0)
-         else:
-             if GraphEventBox:
-@@ -404,7 +381,7 @@ class CalcLayout:
-         if own:
-             if GraphEventBox:
-                 self._own_equations.append(GraphEventBox)
--                GraphEventBox.child.show()
-+                GraphEventBox.get_child().show()
-             else:
-                 self._own_equations.append(textview)
-                 textview.show()
-@@ -412,7 +389,7 @@ class CalcLayout:
-             if self._showing_all_history:
-                 if GraphEventBox:
-                     self._other_equations.append(GraphEventBox)
--                    GraphEventBox.child.show()
-+                    GraphEventBox.get_child().show()
-                 else:
-                     self._other_equations.append(textview)
-                     textview.show()
-@@ -421,8 +398,8 @@ class CalcLayout:
-         """Show both owned and other equations."""
-         self._showing_all_history = True
-         for key in self._other_equations:
--            if isinstance(key, gtk.EventBox):
--                key.child.show()
-+            if isinstance(key, Gtk.EventBox):
-+                key.get_child().show()
-             else:
-                 key.show()
- 
-@@ -430,20 +407,20 @@ class CalcLayout:
-         """Show only owned equations."""
-         self._showing_all_history = False
-         for key in self._other_equations:
--            if isinstance(key, gtk.EventBox):
--                key.child.hide()
-+            if isinstance(key, Gtk.EventBox):
-+                key.get_child().hide()
-             else:
-                 key.hide()
- 
-     def add_variable(self, varname, textview):
--        """Add a gtk.TextView of a variable to the variable_vbox."""
-+        """Add a Gtk.TextView of a variable to the variable_vbox."""
- 
-         if varname in self._var_textviews:
-             self.variable_vbox.remove(self._var_textviews[varname])
-             del self._var_textviews[varname]
- 
-         self._var_textviews[varname] = textview
--        self.variable_vbox.pack_start(textview, False, True)
-+        self.variable_vbox.pack_start(textview, False, True, 0)
- 
-         # Reorder textviews for a sorted list
-         names = self._var_textviews.keys()
-@@ -461,7 +438,7 @@ class CalcLayout:
- 
-     def create_button(self, cap, cb, fgcol, bgcol, width, height):
-         """Create a button that is set up properly."""
--        button = gtk.Button(_(cap))
-+        button = Gtk.Button(_(cap))
-         self.modify_button_appearance(button, fgcol, bgcol, width, height)
-         button.connect("clicked", cb)
-         button.connect("key_press_event", self._parent.ignore_key_cb)
-@@ -473,9 +450,9 @@ class CalcLayout:
-         height = 50 * height
-         button.get_child().set_size_request(width, height)
-         button.get_child().modify_font(self.button_font)
--        button.get_child().modify_fg(gtk.STATE_NORMAL, fgcol)
--        button.modify_bg(gtk.STATE_NORMAL, bgcol)
--        button.modify_bg(gtk.STATE_PRELIGHT, bgcol)
-+        button.get_child().modify_fg(Gtk.StateType.NORMAL, fgcol)
-+        button.modify_bg(Gtk.StateType.NORMAL, bgcol)
-+        button.modify_bg(Gtk.StateType.PRELIGHT, bgcol)
- 
-     def _history_filter_cb(self, combo):
-         selection = combo.get_active()
-@@ -490,6 +467,6 @@ class CalcLayout:
- 
-     def _textview_realize_cb(self, widget):
-         '''Change textview properties once window is created.'''
--        win = widget.get_window(gtk.TEXT_WINDOW_TEXT)
--        win.set_cursor(gtk.gdk.Cursor(gtk.gdk.HAND1))
-+        win = widget.get_window(Gtk.TextWindowType.TEXT)
-+        win.set_cursor(Gdk.Cursor.new(Gdk.CursorType.HAND1))
-         return False
-diff --git a/setup.py b/setup.py
-index ec0f64e..9a141b3 100755
---- a/setup.py
-+++ b/setup.py
-@@ -1,3 +1,3 @@
- #!/usr/bin/env python
--from sugar.activity import bundlebuilder
-+from sugar3.activity import bundlebuilder
- bundlebuilder.start()
-diff --git a/shareable_activity.py b/shareable_activity.py
-index 2f38737..79bdb3b 100644
---- a/shareable_activity.py
-+++ b/shareable_activity.py
-@@ -1,10 +1,10 @@
- import dbus
--import gobject
-+from gi.repository import GObject
- import telepathy
- 
--from sugar.activity import activity
--from sugar.presence import presenceservice
--from sugar.presence.sugartubeconn import SugarTubeConnection
-+from sugar3.activity import activity
-+from sugar3.presence import presenceservice
-+from sugar3.presence.sugartubeconn import SugarTubeConnection
- 
- import logging
- _logger = logging.getLogger('ShareableActivity')
-@@ -258,7 +258,7 @@ class ShareableActivity(activity.Activity):
-             return
- 
-         self._syncreq_buddy = 0
--        self._sync_hid = gobject.timeout_add(2000, self._request_sync_cb)
-+        self._sync_hid = GObject.timeout_add(2000, self._request_sync_cb)
-         self._request_sync_cb()
- 
-     def _request_sync_cb(self):
-diff --git a/svgimage.py b/svgimage.py
-index 6a70b2b..96234a4 100644
---- a/svgimage.py
-+++ b/svgimage.py
-@@ -20,8 +20,8 @@
- import logging
- _logger = logging.getLogger('SVGImage')
- 
--import gtk
--import rsvg
-+from gi.repository import Gtk
-+from gi.repository import Rsvg
- 
- 
- class SVGImage:
-@@ -39,9 +39,9 @@ class SVGImage:
-         return self._svg_data
- 
-     def render_svg(self):
--        self._handle = rsvg.Handle(data=self._svg_data)
-+        self._handle = Rsvg.Handle.new_from_data(self._svg_data)
-         self._pixbuf = self._handle.get_pixbuf()
--        self._image = gtk.Image()
-+        self._image = Gtk.Image()
-         self._image.set_from_pixbuf(self._pixbuf)
-         self._image.set_alignment(0.5, 0)
-         return self._image
-diff --git a/toolbars.py b/toolbars.py
-index 0513944..c6b7102 100644
---- a/toolbars.py
-+++ b/toolbars.py
-@@ -1,16 +1,17 @@
- # -*- coding: utf-8 -*-
- # toolbars.py, see CalcActivity.py for info
- 
--import pygtk
--pygtk.require('2.0')
--import gtk
-+import gi
-+gi.require_version('Gtk', '3.0')
-+from gi.repository import Gtk
-+from gi.repository import Gdk
- from mathlib import MathLib
- 
--from sugar.graphics.palette import Palette
--from sugar.graphics.menuitem import MenuItem
--from sugar.graphics.toolbutton import ToolButton
--from sugar.graphics.toggletoolbutton import ToggleToolButton
--from sugar.graphics.style import GRID_CELL_SIZE
-+from sugar3.graphics.palette import Palette
-+from sugar3.graphics.menuitem import MenuItem
-+from sugar3.graphics.toolbutton import ToolButton
-+from sugar3.graphics.toggletoolbutton import ToggleToolButton
-+from sugar3.graphics.style import GRID_CELL_SIZE
- 
- import logging
- _logger = logging.getLogger('calc-activity')
-@@ -22,7 +23,7 @@ def _icon_exists(name):
-     if name == '':
-         return False
- 
--    theme = gtk.icon_theme_get_default()
-+    theme = Gtk.IconTheme.get_default()
-     info = theme.lookup_icon(name, 0, 0)
-     if info:
-         return True
-@@ -36,12 +37,12 @@ class IconToolButton(ToolButton):
-         ToolButton.__init__(self)
- 
-         if _icon_exists(icon_name):
--            self.set_icon(icon_name)
-+            self.props.icon_name = icon_name
-         else:
-             if alt_html == '':
-                 alt_html = icon_name
- 
--            label = gtk.Label()
-+            label = Gtk.Label()
-             label.set_markup(alt_html)
-             label.show()
-             self.set_label_widget(label)
-@@ -68,7 +69,7 @@ class IconToggleToolButton(ToggleToolButton):
-         ToggleToolButton.__init__(self)
-         self.items = items
-         if 'icon' in items[0] and _icon_exists(items[0]['icon']):
--            self.set_named_icon(items[0]['icon'])
-+            self.props.icon_name = items[0]['icon']
-         elif 'html' in items[0]:
-             self.set_label(items[0]['html'])
- #        self.set_tooltip(items[0][1])
-@@ -81,7 +82,7 @@ class IconToggleToolButton(ToggleToolButton):
-         self.selected = (self.selected + 1) % len(self.items)
-         but = self.items[self.selected]
-         if 'icon' in but and _icon_exists(but['icon']):
--            self.set_named_icon(but['icon'])
-+            self.props.icon_name = but['icon']
-         elif 'html' in but:
-             _logger.info('Setting html: %s', but['html'])
-             self.set_label(but['html'])
-@@ -93,10 +94,10 @@ class IconToggleToolButton(ToggleToolButton):
-                 self.callback(but)
- 
- 
--class TextToggleToolButton(gtk.ToggleToolButton):
-+class TextToggleToolButton(Gtk.ToggleToolButton):
- 
-     def __init__(self, items, cb, desc, index=False):
--        gtk.ToggleToolButton.__init__(self)
-+        Gtk.ToggleToolButton.__init__(self)
-         self.items = items
-         self.set_label(items[0])
-         self.selected = 0
-@@ -116,17 +117,17 @@ class TextToggleToolButton(gtk.ToggleToolButton):
-                 self.callback(but)
- 
- 
--class LineSeparator(gtk.SeparatorToolItem):
-+class LineSeparator(Gtk.SeparatorToolItem):
- 
-     def __init__(self):
--        gtk.SeparatorToolItem.__init__(self)
-+        Gtk.SeparatorToolItem.__init__(self)
-         self.set_draw(True)
- 
- 
--class EditToolbar(gtk.Toolbar):
-+class EditToolbar(Gtk.Toolbar):
- 
-     def __init__(self, calc):
--        gtk.Toolbar.__init__(self)
-+        Gtk.Toolbar.__init__(self)
- 
-         copy_tool = ToolButton('edit-copy')
-         copy_tool.set_tooltip(_('Copy'))
-@@ -152,10 +153,10 @@ class EditToolbar(gtk.Toolbar):
-         self.show_all()
- 
- 
--class AlgebraToolbar(gtk.Toolbar):
-+class AlgebraToolbar(Gtk.Toolbar):
- 
-     def __init__(self, calc):
--        gtk.Toolbar.__init__(self)
-+        Gtk.Toolbar.__init__(self)
- 
-         self.insert(IconToolButton('algebra-square', _('Square'),
-                                    lambda x: calc.button_pressed(
-@@ -211,10 +212,10 @@ class AlgebraToolbar(gtk.Toolbar):
-         self.show_all()
- 
- 
--class TrigonometryToolbar(gtk.Toolbar):
-+class TrigonometryToolbar(Gtk.Toolbar):
- 
-     def __init__(self, calc):
--        gtk.Toolbar.__init__(self)
-+        Gtk.Toolbar.__init__(self)
- 
-         self.insert(IconToolButton(
-             'trigonometry-sin', _('Sine'),
-@@ -268,10 +269,10 @@ class TrigonometryToolbar(gtk.Toolbar):
-         self.show_all()
- 
- 
--class BooleanToolbar(gtk.Toolbar):
-+class BooleanToolbar(Gtk.Toolbar):
- 
-     def __init__(self, calc):
--        gtk.Toolbar.__init__(self)
-+        Gtk.Toolbar.__init__(self)
- 
-         self.insert(IconToolButton(
-             'boolean-and', _('Logical and'),
-@@ -300,12 +301,12 @@ class BooleanToolbar(gtk.Toolbar):
-         self.show_all()
- 
- 
--class MiscToolbar(gtk.Toolbar):
-+class MiscToolbar(Gtk.Toolbar):
- 
-     def __init__(self, calc, target_toolbar=None):
-         self._target_toolbar = target_toolbar
- 
--        gtk.Toolbar.__init__(self)
-+        Gtk.Toolbar.__init__(self)
- 
-         self.insert(IconToolButton('constants-pi', _('Pi'),
-                                    lambda x: calc.button_pressed(
-@@ -381,7 +382,7 @@ class MiscToolbar(gtk.Toolbar):
-         self.show_all()
- 
-     def update_layout(self):
--        if gtk.gdk.screen_width() < 14 * GRID_CELL_SIZE or \
-+        if Gdk.Screen.width() < 14 * GRID_CELL_SIZE or \
-                 self._target_toolbar is None:
-             target_toolbar = self
-             if self._target_toolbar is not None:
--- 
-2.11.1
-

Deleted: PKGBUILD
===================================================================
--- PKGBUILD	2017-06-17 14:41:49 UTC (rev 237908)
+++ PKGBUILD	2017-06-17 14:42:02 UTC (rev 237909)
@@ -1,30 +0,0 @@
-# $Id$
-# Maintainer: Balló György <ballogyor+arch at gmail dot com>
-
-pkgname=sugar-activity-calculate
-_pkgname=Calculate
-pkgver=43
-pkgrel=1
-pkgdesc="Graphing calculator for Sugar"
-arch=('any')
-url="https://wiki.sugarlabs.org/go/Activities/Calculate"
-license=('GPL')
-groups=('sugar-fructose')
-depends=('sugar-toolkit-gtk3')
-optdepends=('python2-matplotlib: alternative plotting backend')
-source=(https://download.sugarlabs.org/sources/sucrose/fructose/$_pkgname/$_pkgname-$pkgver.tar.bz2
-        0001-Port-to-GTK3.patch)
-sha256sums=('8fa75a00c5e2799708fdca8ee189c5596558c9c98c6cada3c2e4d6002911a5ed'
-            '28fbbe30673dea2a69d1a6600ac35a56b0e3ffe81797b963f87d98364e1b27ab')
-
-prepare() {
-  cd $_pkgname-$pkgver
-  sed -i 's@^#!.*python$@#!/usr/bin/python2@' setup.py
-  patch -Np1 -i ../0001-Port-to-GTK3.patch
-}
-
-package() {
-  cd $_pkgname-$pkgver
-  python2 setup.py install --prefix "$pkgdir/usr"
-  rm -r "$pkgdir"/usr/share/applications
-}

Copied: sugar-activity-calculate/repos/community-any/PKGBUILD (from rev 237908, sugar-activity-calculate/trunk/PKGBUILD)
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2017-06-17 14:42:02 UTC (rev 237909)
@@ -0,0 +1,27 @@
+# $Id$
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgname=sugar-activity-calculate
+_pkgname=Calculate
+pkgver=44
+pkgrel=1
+pkgdesc="Graphing calculator for Sugar"
+arch=('any')
+url="https://wiki.sugarlabs.org/go/Activities/Calculate"
+license=('GPL')
+groups=('sugar-fructose')
+depends=('sugar-toolkit-gtk3')
+optdepends=('python2-matplotlib: alternative plotting backend')
+source=(https://download.sugarlabs.org/sources/sucrose/fructose/$_pkgname/$_pkgname-$pkgver.tar.bz2)
+sha256sums=('917c5be892f50e95209c952330bd22c3e4768bfdfe09b5fa78e9e1fa3c9385ab')
+
+prepare() {
+  cd $_pkgname-$pkgver
+  sed -i 's@^#!.*python$@#!/usr/bin/python2@' setup.py
+}
+
+package() {
+  cd $_pkgname-$pkgver
+  python2 setup.py install --prefix "$pkgdir/usr"
+  rm -r "$pkgdir"/usr/share/applications
+}



More information about the arch-commits mailing list