Example #1
0
 def __init__(self, net, id, position, size):
     NetItem.__init__(self, net, id)
     self.point1 = citems.Point(self, "point1",
                                citems.AbsPlacement(position))
     self.point1.action = "resize_ltop"
     self.point2 = citems.Point(
         self, "point2",
         citems.AbsPlacement(utils.vector_add(position, size)))
     self.point2.owner = self
     self.point2.action = "resize_rbottom"
Example #2
0
 def add_point(self, position):
     inscription_position = self.inscription.get_position()
     for i, (a,
             b) in enumerate(utils.pairs_generator(self.get_all_points())):
         if utils.is_near_line_segment(a, b, position, 5):
             point = citems.Point(self, "point",
                                  citems.AbsPlacement(position))
             point.owner = self
             self.points.insert(i, point)
             break
     self.inscription.set_position(inscription_position)
     self.net.changed(
     )  # Canvas items changed, so self.changed() is not sufficient
Example #3
0
 def __init__(self, net, id, from_item, to_item, points):
     NetItem.__init__(self, net, id)
     self.from_item = from_item
     self.to_item = to_item
     self.points = [
         citems.Point(self, "point", citems.AbsPlacement(p)) for p in points
     ]
     self.line = citems.ArrowLine(self, "line", self.get_all_points)
     self.inscription = citems.Text(self, "inscription",
                                    self.line.get_relative_placement(None),
                                    "")
     self.label_simrun = citems.SimRunLabel(
         self, "simrunbox",
         self.inscription.get_relative_placement((0, 18), absolute=False))
     self.label_simrun.text_fn = self.get_simrun_label_text