diff options
author | pmoxhay <pmoxhay@earthlink.net> | 2009-06-15 11:48:10 (GMT) |
---|---|---|
committer | pmoxhay <pmoxhay@earthlink.net> | 2009-06-15 11:48:10 (GMT) |
commit | 85b1fa5adeff37d462d04b6ca22be4a7c9f527e2 (patch) | |
tree | c24615322f05a542a28da51c875e1356cc9fe176 | |
parent | a1e45320ede5e558309b8038ab42039ca7fd7f8f (diff) |
Fixed bug: line segment had been disappearing
when moving from one drop target to the other.
The bounds of the movable line segment had to
be adjusted by 2 pixels.
-rw-r--r-- | draggableobject.py | 2 | ||||
-rw-r--r-- | linesegmentdroptarget.py | 4 | ||||
-rw-r--r-- | linesegmentmovableobject.py | 3 | ||||
-rw-r--r-- | linesegmentoriginobject.py | 2 | ||||
-rw-r--r-- | movableobject.py | 9 |
5 files changed, 17 insertions, 3 deletions
diff --git a/draggableobject.py b/draggableobject.py index 1e247e8..adf205a 100644 --- a/draggableobject.py +++ b/draggableobject.py @@ -189,7 +189,7 @@ class DraggableObject(Object): self.container.snap_to_grid(self) #self.drag_type = None if self.container: - print "DraggableObject on_key calling check_problem_solved" + #print "DraggableObject on_key calling check_problem_solved" self.container.check_problem_solved() elif self.moving_by_key_press and self.dragged: diff --git a/linesegmentdroptarget.py b/linesegmentdroptarget.py index fd80510..1cd2da4 100644 --- a/linesegmentdroptarget.py +++ b/linesegmentdroptarget.py @@ -137,7 +137,9 @@ class LineSegmentDropTarget(DropTargetObject): if self.container:
self.container.select_object(self.drop_origin.line1)
- else:
+ else:
+ #print "LineSegmentDropTarget: creating LineSegmentMovableObject with drop targets",self.drop_targets
+ #print "LineSegmentDropTarget: len(self.drop_targets) =",len(self.drop_targets)
if draggable_object.length == 100:
movable_object = LineSegmentMovableObject(Vector(40, 10), 100, self.drop_targets, self.container)
movable_object.move(self.pos + Vector(40, 160))
diff --git a/linesegmentmovableobject.py b/linesegmentmovableobject.py index b363878..c2059bb 100644 --- a/linesegmentmovableobject.py +++ b/linesegmentmovableobject.py @@ -76,5 +76,6 @@ class LineSegmentMovableObject(MovableObject): def get_bounds(self): mn = Vector(self.pos.x - 32, self.pos.y - 12 + self.length - self.line_segment_length) - mx = mn + Vector(64, self.line_segment_length + 24) + #mx = mn + Vector(64, self.line_segment_length + 24) + mx = mn + Vector(64, self.line_segment_length + 21) return mn, mx diff --git a/linesegmentoriginobject.py b/linesegmentoriginobject.py index 66f55de..e7231a7 100644 --- a/linesegmentoriginobject.py +++ b/linesegmentoriginobject.py @@ -28,9 +28,11 @@ class LineSegmentOriginObject(DropOriginObject): self.drop_targets = drop_targets
+ #print "LineSegmentOriginObject: creating LineSegmentObject 1 with len(self.drop_targets) = ",len(self.drop_targets)
self.line1 = LineSegmentObject(Vector(40, 10), 100, self.drop_targets, self.container)
self.line1.drop_origin = self
+ #print "LineSegmentOriginObject: creating LineSegmentObject 2 with len(self.drop_targets) = ",len(self.drop_targets)
self.line2 = LineSegmentObject(Vector(40, 110), 200, self.drop_targets, self.container)
self.line2.drop_origin = self
diff --git a/movableobject.py b/movableobject.py index 91e308d..334153f 100644 --- a/movableobject.py +++ b/movableobject.py @@ -215,13 +215,22 @@ class MovableObject(Object): if event.type == gtk.gdk.BUTTON_PRESS: self.select_by_button_press() + #print "MovableObject: BUTTON_PRESS" + #print "MovableObject: len(self.drop_targets) =",len(self.drop_targets) + #Check whether the button press is inside a drop target. # TODO- Check whether this makes multiple copies of movable in drop target. + i = 0 for o in self.drop_targets: + #print "MovableObject: Is Movable object in drop target", i, "?" + #print "MovableObject: drop target bounds =",o.get_bounds() + #print "MovableObject: movable object bounds =",self.get_bounds() if o.contains(self.get_bounds()): + #print "MovableObject: button press IS inside a drop target!" self.drop_target = None o.full = False o.contents = None + i += 1 self.drag_type = self.get_drag_type(event) |