From 16424ccf036cce9be9a5472b1d889fc86fee5b72 Mon Sep 17 00:00:00 2001 From: Gonzalo Odiard Date: Wed, 09 Jun 2010 18:09:35 +0000 Subject: iplements OLPC #8865 - Slider bar should change brush and line width Connects XO-1 and XO-1.5 slider function keys to line size change for pencil, eraser, brush and rainbow. The size change is relative to current size. --- (limited to 'Area.py') diff --git a/Area.py b/Area.py index 7b8c8b4..0ef5e8d 100644 --- a/Area.py +++ b/Area.py @@ -97,15 +97,13 @@ class Area(gtk.DrawingArea): gtk.gdk.BUTTON_PRESS_MASK | gtk.gdk.BUTTON_RELEASE_MASK| gtk.gdk.EXPOSURE_MASK | - gtk.gdk.KEY_PRESS_MASK | - gtk.gdk.KEY_RELEASE_MASK) + gtk.gdk.KEY_PRESS_MASK) self.connect("expose_event",self.expose) self.connect("motion_notify_event", self.mousemove) self.connect("button_press_event", self.mousedown) self.connect("button_release_event", self.mouseup) self.connect("key_press_event", self.key_press) - self.connect("key_release_event", self.key_release) self.set_flags(gtk.CAN_FOCUS) self.grab_focus() @@ -1164,8 +1162,14 @@ class Area(gtk.DrawingArea): self.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.TCROSS)) widget.queue_draw() - def key_release(self,widget,event): - pass + def change_line_size(self, delta): + if self.tool['name'] in ['pencil','eraser','brush','rainbow']: + size = self.tool['line size'] + delta + if size < 1: + size = 1 + self.tool['line size'] = size + self.configure_line(size) + self.queue_draw() def _keep_selection_ratio(self, coords): def sign(x): -- cgit v0.9.1