Ejemplo n.º 1
0
 def delete(self, index):
     """
     Delete wire
     :param index:
     :return:
     """
     row = len(self.wires)
     self.beginRemoveRows(QtCore.QModelIndex(), row - 1, row - 1)
     self.wires.pop(index)
     self.endRemoveRows()
Ejemplo n.º 2
0
    def parent(self, index):
        """Get the parent node of an index."""
        node = self.get_node(index)

        parent = node.parent

        if parent == self.root:
            return QtCore.QModelIndex()

        return self.createIndex(parent.row, 0, parent)
Ejemplo n.º 3
0
    def addPieces(self, pixmap):
        self.beginRemoveRows(QtCore.QModelIndex(), 0, 24)
        self.pixmaps = []
        self.locations = []
        self.endRemoveRows()

        for y in range(5):
            for x in range(5):
                pieceImage = pixmap.copy(x * 80, y * 80, 80, 80)
                self.addPiece(pieceImage, QtCore.QPoint(x, y))
Ejemplo n.º 4
0
 def add(self, wire: Wire):
     """
     Add wire
     :param wire:
     :return:
     """
     row = len(self.wires)
     self.beginInsertRows(QtCore.QModelIndex(), row, row)
     self.wires.append(wire)
     self.endInsertRows()
Ejemplo n.º 5
0
 def _on_remove_support_pressed(self):
     if not self.target or not self.current_support:
         return
     self.service.remove_support(self.target, self.current_support)
     self.supports_widget.takeItem(
         self.supports_widget.currentIndex().row())
     self._refresh_add_list()
     self.characters_widget.setCurrentIndex(QtCore.QModelIndex())
     self.current_supports = self.service.get_supports_for_character(
         self.target)
Ejemplo n.º 6
0
    def addPiece(self, pixmap, location):
        if random.random() < 0.5:
            row = 0
        else:
            row = len(self.pixmaps)

        self.beginInsertRows(QtCore.QModelIndex(), row, row)
        self.pixmaps.insert(row, pixmap)
        self.locations.insert(row, location)
        self.endInsertRows()
Ejemplo n.º 7
0
 def delete(self, index):
     """
     Delete wire
     :param index:
     :return:
     """
     row = self.rowCount()
     self.beginRemoveRows(QtCore.QModelIndex(), row - 1, row - 1)
     self.tower.wires_in_tower.pop(index)
     self.endRemoveRows()
Ejemplo n.º 8
0
 def add(self, wire: WireInTower):
     """
     Add wire
     :param wire:
     :return:
     """
     row = self.rowCount()
     self.beginInsertRows(QtCore.QModelIndex(), row, row)
     self.tower.wires_in_tower.append(wire)
     self.endInsertRows()
Ejemplo n.º 9
0
    def rowCount(self, parent=QtCore.QModelIndex()):
        if parent.column() > 0:
            return 0

        if not parent.isValid():
            parentItem = self._rootItem
        else:
            parentItem = parent.internalPointer()

        return parentItem.childCount()
Ejemplo n.º 10
0
 def load_data(self, peaks):
     """
     The peaks structure is of the format:
         [(index, (x, y)), ...]
     """
     self.peaks = peaks
     self.beginResetModel()
     self.beginInsertRows(QtCore.QModelIndex(), 0, self.rowCount())
     self.endInsertRows()
     self.endResetModel()
Ejemplo n.º 11
0
    def parent(self, model_index):
        """return parent index by child index

        if the item has no parent, an invalid QModelIndex is returned

        @param model_index: QModelIndex of child

        @retval QModelIndex of parent
        """
        if not model_index.isValid():
            return QtCore.QModelIndex()

        child = model_index.internalPointer()
        parent = child.parent()

        if parent == self.root_node:
            return QtCore.QModelIndex()

        return self.createIndex(parent.row(), 0, parent)
Ejemplo n.º 12
0
    def removeRows(self, position: int, rows: int, index: QtCore.QModelIndex = QtCore.QModelIndex()) -> bool:
        self.beginRemoveRows(index.parent(), position, position + rows - 1)

        for row in range(rows):
            self._deleled_files.append(self._data['filename'][position])
            self._data.remove_row(position)
            self._mask.remove_row(position)

        self.endRemoveRows()
        return True
Ejemplo n.º 13
0
 def appendTransaction(self, data):
     """Appends the data at the end of table"""
     count = self.rowCount()
     self.beginInsertRows(QtCore.QModelIndex(), count, count)
     with sqlite3.connect('test2.db') as conn:
         _ = conn.execute(
             'insert into transactionsnew (empid, date, credit, debit) values (:empid, :date, :credit, :debit)',
             data)
     self.setEmployee(data['empid'])
     self.endInsertRows()
Ejemplo n.º 14
0
    def removeRow(self, row=-1, index=QtCore.QModelIndex()):
        '''
        '''
        if row == -1:
            row = self.rowCount() - 1

        self.beginRemoveRows(index, row, row)
        if row > -1 and row < self.rowCount():
            self.__data.pop(row)
        self.endRemoveRows()
        return True
Ejemplo n.º 15
0
    def append_entity(self, entity):
        """Appends a new row to the end of the model.

        """
        model = self.model().sourceModel()

        model.beginInsertRows(QtCore.QModelIndex(), model.rowCount(),
                              model.rowCount())
        model.internal_data.append(entity)
        model.endInsertRows()
        self.setCurrentIndex(self.count() - 1)
Ejemplo n.º 16
0
    def filterAcceptsRow(self, source_row, parent=QtCore.QModelIndex()):
        if not self._entity_type:
            return True
        index = self.sourceModel().index(source_row, 0)
        entity = index.data(EntityRole)

        if not entity:
            return True
        if 'type' in entity and entity['type'] != self._entity_type:
            return False
        return True
Ejemplo n.º 17
0
    def removeRows(self, row, count, parent=QtCore.QModelIndex()):
        """Remove rows from the list."""

        if row < 0 or count < 0 or (row + count) > self.rowCount():
            return False

        self.beginRemoveRows(parent, row, row + count - 1)
        del self.postCardList[row:(row + count)]
        self.endRemoveRows()

        return True
Ejemplo n.º 18
0
 def removeRows(self, row, count, parent=None):
     #again we only remove one row at a time
     #you also can't delte the first account which is the admin
     print(row)
     if row == 0 or row >= self.rowCount() or count != 1:
         return False
     self.beginRemoveRows(QtCore.QModelIndex(), row, row)
     account = self.accounts[row]
     self.db_manager.remove_account(account)
     self.accounts.pop(row)
     self.endRemoveRows()
Ejemplo n.º 19
0
    def find_named_folder(self, name):
        """Find a folder with a given name."""
        node = self.get_node(QtCore.QModelIndex())

        for row in range(len(node.children)):
            child = node.children[row]

            if child.name == name:
                return self.createIndex(row, 0, child)

        return None
Ejemplo n.º 20
0
    def index(self, row, column, parent):
        """Create an index at a specific location."""
        parent = self.get_node(parent)

        if row < len(parent.children):
            child_item = parent.children[row]

            if child_item:
                return self.createIndex(row, column, child_item)

        return QtCore.QModelIndex()
Ejemplo n.º 21
0
    def removeState(self, stateName: str) -> Optional[RSIPy.State]:
        if not stateName in self.states:
            return None

        currentRow = self.getStateIndex(stateName).row()

        self.beginRemoveRows(QtC.QModelIndex(), currentRow, currentRow)
        state = self.states.pop(stateName)
        self.endRemoveRows()

        return state
Ejemplo n.º 22
0
 def index(self, row, column, parent=QtCore.QModelIndex()):
     '''
     Returns a QModelIndex according to given data.
     :param row: Returns a QModelIndex with this row index.
     :type row: int
     :param column: Returns a QModelIndex with this column index.
     :type column: int
     :param parent: Default QModelIndex
     :type parent: QModelIndex
     :return: QModelIndex if data corresponding to row and column was found. Empty QModelIndex if not.
     :rtype: QModelIndex
     '''
     if row > -1 and column > -1:
         if row < len(self.dataList) and column < len(self.headers):
             return self.createIndex(row, column,
                                     self.dataList[row][column])
         else:
             return QtCore.QModelIndex()
     else:
         return QtCore.QModelIndex()
Ejemplo n.º 23
0
 def on_trade_occurred(self, team: str, now: float, order_id: int,
                       side: Side, volume: int, price: int,
                       fee: int) -> None:
     """Callback when a trade occurs."""
     if team == self.team:
         self.beginInsertRows(QtCore.QModelIndex(), 0, 0)
         self._row_count += 1
         self.__trades.append(
             ("%.3f" % now, order_id, ("Sell", "Buy")[side], volume,
              price // 100, "%.2f" % (-fee / 100.0)))
         self.endInsertRows()
Ejemplo n.º 24
0
    def index(self, row, column, parent):
        """Returns a QModelIndex()."""
        if not parent.isValid():
            parentNode = self.rootNode
        else:
            parentNode = parent.internalPointer()

        childItem = parentNode.getChild(row)
        if not childItem:
            return QtCore.QModelIndex()
        return self.createIndex(row, column, childItem)
Ejemplo n.º 25
0
 def extend(self, items):
     """Merge a list of items into this model."""
     parent = QtCore.QModelIndex()
     start = len(self.items)
     end = start + len(items) - 1
     self.beginInsertRows(parent, start, end)
     self.items.extend(items)
     self.endInsertRows()
     if not self.limited:
         self.sort()
     self.changed.emit()
Ejemplo n.º 26
0
    def markUninstalled(self, items):
        """Mark a list of items as uninstalled."""
        for item in items:
            self._installed.remove(item)

        parent = QtCore.QModelIndex()
        parentNode = self.getNode(parent)

        self.dataChanged.emit(
            self.index(0, 0, parent),
            self.index(len(parentNode.children) - 1, 0, parent))
Ejemplo n.º 27
0
 def test_todo_editor(self):
     from PySide2 import QtCore
     import bookmarks.todo_editor as todo_editor
     widget = todo_editor.TodoEditorWidget(QtCore.QModelIndex())
     widget.add_item(
         idx=0, text=u'Hello world', checked=False)
     widget.add_item(
         idx=1, text=u'Hello world', checked=True)
     widget.add_item(idx=2, text='file://test.com', checked=False)
     widget.add_item(idx=0, text='First item', checked=False)
     widget.open()
Ejemplo n.º 28
0
    def rowCount(self, index=QtCore.QModelIndex()):
        """Return the tables number of rows.

        Args:
            index (QtCore.QModelIndex): Used to locate data in a data model.

        Returns:
            int: The tables number of rows.

        """
        return len(self.events)
Ejemplo n.º 29
0
 def removeAt(self, i, count=1):
     """  Removes count number of items from index position i and notifies any views.
     i must be a valid index position in the model (i.e., 0 <= i < size()), as
     must as i + count - 1.
     """
     self.beginRemoveRows(QtCore.QModelIndex(), i, i + count - 1)
     for cpt in range(count):
         obj = self._objects.pop(i)
         self._dereferenceItem(obj)
     self.endRemoveRows()
     self.countChanged.emit()
Ejemplo n.º 30
0
    def columnCount(self, index=QtCore.QModelIndex()):
        """Return the table number of columns.

        Args:
            index (QtCore.QModelIndex): Used to locate data in a data model.

        Returns:
            int: The tables number of columns.

        """
        return len(self.column_names)