def METHOD_NAME(self):
    x1 = self.widget_start.item_x() + self.widget_start.item.width() / 2
    x2 = self.widget_stop.item_x() + self.widget_stop.item.width() / 2
    y1 = self.widget_start.item_y() + self.widget_start.item.height() / 2
    y2 = self.widget_stop.item_y() + self.widget_stop.item.height() / 2
    if self.h_first:
        self.line1.setLine(x1, y1, x1, y2)
        self.line2.setLine(x1, y2, x2, y2)
    else:
        self.line1.setLine(x1, y1, x2, y1)
        self.line2.setLine(x2, y1, x2, y2)
    if self.show_arrow:
        if self.h_first:
            x = x2 - self.widget_stop.width() / 2
            y = y2
            arrow = QtGui.QPolygonF(
                [QtCore.QPoint(x - self.margin, y - self.arrow_height / 2),
                 QtCore.QPoint(x - self.margin, y + self.arrow_height / 2),
                 QtCore.QPoint(x - self.margin + self.arrow_width, y)])
        else:
            x = x2
            y = y2 - self.widget_stop.height() / 2
            if y2 < y1:
                margin = - self.margin
                arrow_width = - self.arrow_width
                y = y2 + self.widget_stop.height() / 2
            else:
                margin = self.margin
                arrow_width = self.arrow_width
            arrow = QtGui.QPolygonF(
                [QtCore.QPoint(x - self.arrow_height / 2, y - margin),
                 QtCore.QPoint(x + self.arrow_height / 2, y - margin),
                 QtCore.QPoint(x, y - margin + arrow_width)])
        if self.show_arrow:
            self.arrow.setPolygon(arrow)