Changeset 1642

Show
Ignore:
Timestamp:
07/16/07 09:59:06 (1 year ago)
Author:
wrobe..@pld-linux.org
Message:

- use line constraint to connect line to box again

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • gaphas/branches/hw/gaphas/examples.py

    r1637 r1642  
    1111from solver import solvable 
    1212import tool 
    13 from constraint import BalanceConstraint, LessThanConstraint, EqualsConstraint 
     13from constraint import LineConstraint, LessThanConstraint, EqualsConstraint 
    1414from geometry import point_on_rectangle, distance_rectangle_point 
    1515from util import text_extents, text_align, text_multiline, path_ellipse 
     
    154154    """ 
    155155    This is a HandleTool which supports a simple connection algorithm, 
    156     using BalanceConstraint. 
     156    using LineConstraint. 
    157157    """ 
    158158 
     
    257257 
    258258                # Make a constraint that keeps into account item coordinates. 
    259                 c1 = BalanceConstraint(band=(h1.x, h2.x), v=handle.x, balance=b) 
    260                 c2 = BalanceConstraint(band=(h1.y, h2.y), v=handle.y, balance=b) 
    261                 view.canvas.proj(c1, x={h1.x: glue_item, h2.x: glue_item, handle.x: item}) 
    262                 view.canvas.proj(c2, y={h1.y: glue_item, h2.y: glue_item, handle.y: item}) 
    263                 item.add_iconstraint(handle, c1) 
    264                 item.add_iconstraint(handle, c2) 
     259                lc = LineConstraint(line=(h1.pos, h2.pos), point=handle.pos) 
     260                pdata = { 
     261                    h1.pos: glue_item, 
     262                    h2.pos: glue_item, 
     263                    handle.pos: item, 
     264                } 
     265 
     266                view.canvas.proj(lc, xy=pdata) 
     267                view.canvas.proj(lc, xy=pdata, f=lc.update_ratio) 
     268                lc.update_ratio() 
     269                item.add_iconstraint(handle, lc) 
    265270 
    266271                handle.connected_to = glue_item