add draw() to Mode; draw in-progress Connects

This commit is contained in:
Josh Holtrop 2011-10-03 17:55:28 -04:00
parent 751b063237
commit bf340f12d9

View File

@ -52,6 +52,7 @@ class SketchWidget(object):
self.axis_color = (1.0, 0.0, 0.0, 1.0)
self.hover_color = (1.0, 1.0, 1.0, 1.0)
self.constraint_color = (0.8, 1.0, 0.0, 1.0)
self.constraint_ip_color = (0.1, 1.0, 0.5, 1.0)
self.snap_angle = 10
self.hv_snap_dist = 10
self.snap_dist = 6
@ -156,6 +157,8 @@ class SketchWidget(object):
s, p = self.hover_snap_ptref.shape, self.hover_snap_ptref.ptNum
self.drawConnect(Connect(s, p, s, p))
self.mode.draw(self)
if gldrawable.is_double_buffered():
gldrawable.swap_buffers()
else:
@ -513,6 +516,8 @@ class Mode(object):
pass
def get_cursor(self):
return 'arrow'
def draw(self, sw):
pass
class SelectMode(Mode):
pass
@ -661,6 +666,12 @@ class ConnectMode(Mode):
else:
sw.window.set_mode('')
def draw(self, sw):
if self.first_ptref is not None:
glColor(*sw.constraint_ip_color)
s, p = self.first_ptref.shape, self.first_ptref.ptNum
sw.drawConstraint(Connect(s, p, s, p))
class HorizontalMode(ConnectMode):
def do_left_click(self, sw, x, y):
if sw.hover_snap_ptref is not None: