Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/Area.py
diff options
context:
space:
mode:
authorGonzalo Odiard <gonzalo@nautilus.localdomain>2010-06-09 18:25:23 (GMT)
committer Gonzalo Odiard <gonzalo@nautilus.localdomain>2010-06-09 18:25:23 (GMT)
commitab4986bd7349ff77f0d2f9f5080fc70d39a1cdd7 (patch)
treed56fd91905e4e4c7af736db68c4f1d6dc9a6e537 /Area.py
parent16424ccf036cce9be9a5472b1d889fc86fee5b72 (diff)
hide brush when leave drawing area
Adds an enter and leave event handler for the drawing area, in order to draw or not draw the outline cursor.
Diffstat (limited to 'Area.py')
-rw-r--r--Area.py18
1 files changed, 17 insertions, 1 deletions
diff --git a/Area.py b/Area.py
index 0ef5e8d..7b921b8 100644
--- a/Area.py
+++ b/Area.py
@@ -97,6 +97,8 @@ class Area(gtk.DrawingArea):
gtk.gdk.BUTTON_PRESS_MASK |
gtk.gdk.BUTTON_RELEASE_MASK|
gtk.gdk.EXPOSURE_MASK |
+ gtk.gdk.LEAVE_NOTIFY_MASK |
+ gtk.gdk.ENTER_NOTIFY_MASK |
gtk.gdk.KEY_PRESS_MASK)
self.connect("expose_event",self.expose)
@@ -104,6 +106,8 @@ class Area(gtk.DrawingArea):
self.connect("button_press_event", self.mousedown)
self.connect("button_release_event", self.mouseup)
self.connect("key_press_event", self.key_press)
+ self.connect("leave_notify_event", self.mouseleave)
+ self.connect("enter_notify_event", self.mouseenter)
self.set_flags(gtk.CAN_FOCUS)
self.grab_focus()
@@ -550,7 +554,19 @@ class Area(gtk.DrawingArea):
self.enableUndo(widget)
self.drawing = False
self.desenha = False
-
+
+ def mouseleave(self, widget, event):
+ if self.tool['name'] in ['pencil','eraser','brush','rainbow']:
+ self.drawing = True
+ size = self.tool['line size']
+ widget.queue_draw_area(self.x_cursor-size, self.y_cursor-size, size*2, size*2)
+
+ def mouseenter(self, widget, event):
+ if self.tool['name'] in ['pencil','eraser','brush','rainbow']:
+ self.drawing = False
+ size = self.tool['line size']
+ widget.queue_draw_area(self.x_cursor-size, self.y_cursor-size, size*2, size*2)
+
def undo(self):
"""Undo the last drawing change.