Ejemplo n.º 1
0
 def editLink(self, row: int, name: str, color: str, points: str):
     """Edit a link."""
     for i, e in enumerate((name, color, points)):
         item = QTableWidgetItem(e)
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         if i == 1:
             item.setIcon(color_icon(e))
         self.setItem(row, i, item)
Ejemplo n.º 2
0
 def edit_point(self, row: int, links: str, type_str: str, color: str, x: str, y: str):
     """Edit a point."""
     for i, e in enumerate([f'Point{row}', links, type_str, color, x, y, f"({x}, {y})"]):
         item = QTableWidgetItem(str(e))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         if i == 3:
             item.setIcon(color_icon(e))
         self.setItem(row, i, item)
Ejemplo n.º 3
0
 def editArgs(self, row: int, Links: str, Type: str, Color: str, x: float,
              y: float):
     """Edite a point."""
     for i, e in enumerate([
             'Point{}'.format(row), Links, Type, Color, x, y,
             "({}, {})".format(x, y)
     ]):
         item = QTableWidgetItem(str(e))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         if i == 3:
             item.setIcon(colorIcons(e))
         self.setItem(row, i, item)
Ejemplo n.º 4
0
 def __rename(self, arg1: Sequence[str], arg2: Sequence[str]):
     """Adjust link name in all dependents,
     if link name are changed.
     """
     if arg2[0] == arg1[0]:
         return
     for index in _no_empty_string(arg2[2].split(',')):
         row = int(index.replace('Point', ''))
         new_links = self.point_table.item(row, 1).text().split(',')
         item = QTableWidgetItem(','.join(
             _no_empty_string(
                 w.replace(arg2[0], arg1[0]) for w in new_links)))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         self.point_table.setItem(row, 1, item)
Ejemplo n.º 5
0
 def rename(self, Args1: Tuple[str], Args2: Tuple[str]):
     """Adjust link name in all dependents,
     if link name are changed.
     """
     if Args2[0] == Args1[0]:
         return
     for index in noNoneString(Args2[2].split(',')):
         row = int(index.replace('Point', ''))
         newLinks = self.PointTable.item(row, 1).text().split(',')
         item = QTableWidgetItem(','.join(noNoneString([
             w.replace(Args2[0], Args1[0])
             for w in newLinks
         ])))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         self.PointTable.setItem(row, 1, item)
Ejemplo n.º 6
0
 def writeRows(self,
     items1: Sequence[int],
     items2: Sequence[int]
 ):
     """Write table function.
     
     + Append the point that relate with these links.
     + Remove the point that irrelevant with these links.
     """
     for row in items1:
         newPoints = self.LinkTable.item(row, 2).text().split(',')
         newPoints.append('Point{}'.format(self.row))
         item = QTableWidgetItem(','.join(noNoneString(newPoints)))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         self.LinkTable.setItem(row, 2, item)
     for row in items2:
         newPoints = self.LinkTable.item(row, 2).text().split(',')
         newPoints.remove('Point{}'.format(self.row))
         item = QTableWidgetItem(','.join(noNoneString(newPoints)))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         self.LinkTable.setItem(row, 2, item)
Ejemplo n.º 7
0
 def writeRows(self,
     name: str,
     items1: Sequence[int],
     items2: Sequence[int]
 ):
     """Write table function.
     
     + Append the link that relate with these points.
     + Remove the link that irrelevant with these points.
     """
     for row in items1:
         newLinks = self.PointTable.item(row, 1).text().split(',')
         newLinks.append(name)
         item = QTableWidgetItem(','.join(noNoneString(newLinks)))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         self.PointTable.setItem(row, 1, item)
     for row in items2:
         newLinks = self.PointTable.item(row, 1).text().split(',')
         if name:
             newLinks.remove(name)
         item = QTableWidgetItem(','.join(noNoneString(newLinks)))
         item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         self.PointTable.setItem(row, 1, item)
Ejemplo n.º 8
0
 def __set_cell(self, row: int, links: List[str]):
     item = QTableWidgetItem(','.join(_no_empty_string(links)))
     item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
     self.point_table.setItem(row, 1, item)
Ejemplo n.º 9
0
 def setCell(self, row: int, links: List[str]):
     item = QTableWidgetItem(','.join(noNoneString(links)))
     item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
     self.PointTable.setItem(row, 1, item)
Ejemplo n.º 10
0
 def setCell(self, row: int, points: List):
     item = QTableWidgetItem(','.join(noNoneString(points)))
     item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
     self.LinkTable.setItem(row, 2, item)