Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/symbolobject.py
diff options
context:
space:
mode:
authorPeter Moxhay <pmoxhay@earthlink.net>2009-01-23 16:29:45 (GMT)
committer Peter Moxhay <pmoxhay@earthlink.net>2009-01-23 16:29:45 (GMT)
commit6bf8db8584f4876081d0143f63af84170c8fc9cf (patch)
tree6c01ac2aebc2972e36c4c0b635d3cf921c984c81 /symbolobject.py
parent7fa2166701b76d6709012b6ef6cf9961d22fae3a (diff)
More consistent line segment dragging.
Experiment with making <, =, > drags more drag-copy-like. Still need to do key presses for dragging.
Diffstat (limited to 'symbolobject.py')
-rw-r--r--symbolobject.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/symbolobject.py b/symbolobject.py
index ff982b5..d5412d6 100644
--- a/symbolobject.py
+++ b/symbolobject.py
@@ -35,6 +35,8 @@ class SymbolObject(DraggableObject):
self.selectable = True
self.use_minimum_width_and_height = False
+
+ self.drag_copy = True
def draw(self, cr):
text = self.symbol
@@ -47,7 +49,12 @@ class SymbolObject(DraggableObject):
#cr.set_source_rgb(1, 0, 0)
#cr.fill()
- cr.set_source_rgb(0, 0, 0)
+ if self.dragged:
+ # The line segment gets transparent when dragged.
+ cr.set_source_rgba(0, 0, 0, 0.5)
+ else:
+ # Otherwise, it's black.
+ cr.set_source_rgb(0, 0, 0)
cr.set_font_size(self.size)
x_bearing, y_bearing, width, height = cr.text_extents(text)[:4]
@@ -66,7 +73,11 @@ class SymbolObject(DraggableObject):
if self.selected:
cr.rectangle(self.pos.x - 5 - width/2, self.pos.y - 5 - height/2, self.width + 10, self.height + 10)
cr.set_line_width(1.0)
- cr.set_dash((10, 10), 0)
+ # Draw a different dashed outline if the object is not only selected but dragged.
+ if self.dragged:
+ cr.set_dash((2, 2, 0))
+ else:
+ cr.set_dash((10, 10), 0)
cr.set_source_rgb(0, 0, 0)
cr.stroke()