def __init__(self, parent): QAbstractItemModel.__init__(self, parent) Logger.__init__(self) self.parent = parent self.view = None # type: HistoryList self.transactions = dict() self.tx_tree = list() self.expanded_groups = set() self.tx_status_cache = {} # type: Dict[str, Tuple[int, str]] self.group_ps = self.parent.wallet.psman.group_history # read tx group control icons self.tx_group_expand_icn = read_QIcon('tx_group_expand.png') self.tx_group_collapse_icn = read_QIcon('tx_group_collapse.png') # setup bg thread to get updated data self.data_ready.connect(self.on_get_data, Qt.QueuedConnection) self.get_data_thread = GetDataThread(self, self.get_history_data, self.data_ready, self) self.get_data_thread.data_call_args = (self.group_ps, ) self.get_data_thread.start() # sort keys methods for columns self.SORT_KEYS = { HistoryColumns.TX_GROUP: self.sort_ix, HistoryColumns.STATUS: self.sort_status, HistoryColumns.DIP2: self.sort_dip2, HistoryColumns.DESCRIPTION: self.sort_label, HistoryColumns.AMOUNT: self.sort_coin_value, HistoryColumns.BALANCE: self.sort_running_coin_balance, HistoryColumns.FIAT_VALUE: self.sort_fiat_value, HistoryColumns.FIAT_ACQ_PRICE: self.sort_fiat_acq_price, HistoryColumns.FIAT_CAP_GAINS: self.sort_fiat_cap_gains, HistoryColumns.TXID: self.sort_txid, }
def __init__(self, parent: 'ElectrumWindow'): QAbstractItemModel.__init__(self, parent) Logger.__init__(self) self.parent = parent self.view = None # type: TokenHistoryList self.transactions = OrderedDictWithIndex() self.tx_status_cache = {} # type: Dict[str, Tuple[int, str]]
def __init__(self, parent=None): QAbstractItemModel.__init__(self, parent) self._all_root = Node(data=None, parent=None) self._root = self._all_root.clone() self._selected_node = None self._language_filter = [] self._treeview = None
def __init__(self, parent): QAbstractItemModel.__init__(self, parent) self.rootItem = outlineItem(self, title="root", ID="0") # Stores removed item, in order to remove them on disk when saving, depending on the file format. self.removed = []
def __init__( self, root, checkbox_columns=None, editable_columns=None, alignment=None, parent=None, ): QAbstractItemModel.__init__(self, parent=parent) self.root = root self.checkbox_columns = checkbox_columns self.editable_columns = editable_columns if alignment is not None: self.alignment = alignment else: self.alignment = Qt.AlignTop | Qt.AlignLeft self.index_from_node_cache = weakref.WeakKeyDictionary() self.role_functions = { Qt.DisplayRole: self.data_display, epyqlib.utils.qt.UserRoles.sort: self.data_display, epyqlib.utils.qt.UserRoles.unique: self.data_unique, epyqlib.utils.qt.UserRoles.raw: self.data_display, Qt.TextAlignmentRole: lambda index: int(self.alignment), Qt.CheckStateRole: self.data_check_state, Qt.EditRole: self.data_edit, Qt.BackgroundRole: self.data_background, Qt.ForegroundRole: self.data_foreground, Qt.DecorationRole: self.data_decoration, Qt.ToolTipRole: self.data_tool_tip, Qt.FontRole: self.data_font, }
def __init__(self, parentObject): QAbstractItemModel.__init__(self, parentObject) self._manuallySorted = False self._workspace = parentObject.parent() self._workspace.documentOpened.connect(self._onDocumentOpened) self._workspace.documentClosed.connect(self._onDocumentClosed) self._workspace.modificationChanged.connect(self._onDocumentDataChanged)
def __init__(self, parent): """Constructor of SearchResultsModel class """ QAbstractItemModel.__init__(self, parent) self._replaceMode = False self.fileResults = [] # list of FileResults
def __init__(self, parent=None): QAbstractItemModel.__init__(self, parent) self.root = Node("") self.selectedNode = None self.languageFilter = None self.videoResultsBackup = None self.moviesResultsBackup = None
def __init__(self, parent=None): QAbstractItemModel.__init__(self, parent) self.root = Node('') self.selectedNode = None self.languageFilter = None self.videoResultsBackup = [] self.moviesResultsBackup = None
def __init__(self, parent): QAbstractItemModel.__init__(self, parent) self.nextAvailableID = 1 # Stores removed item, in order to remove them on disk when saving, depending on the file format. self.removed = [] self._removingRows = False
def __init__(self, parentObject): QAbstractItemModel.__init__(self, parentObject) self._manuallySorted = False self._workspace = parentObject.parent() self._workspace.documentOpened.connect(self._onDocumentOpened) self._workspace.documentClosed.connect(self._onDocumentClosed) self._workspace.modificationChanged.connect( self._onDocumentDataChanged)
def __init__(self, parent): QAbstractItemModel.__init__(self, parent) Logger.__init__(self) self.parent = parent self.view = None # type: HistoryList self.transactions = OrderedDictWithIndex() self.tx_status_cache = {} # type: Dict[str, Tuple[int, str]] self.summary = None
def __init__(self, *args, **kwargs): QAbstractItemModel.__init__(self, *args, **kwargs) self._root = scriptTreeNode(None) self._data = [] self.refresh()
def __init__(self, view, parent=None): QAbstractItemModel.__init__(self, parent) self._view = view self._db_session = get_database_session() self._categories = self._db_session.query(TCategories).all() self._root = {} self._category_dict = {} #构造数据 self._build_data()
def __init__(self, unknown_text, unknown_visible, legal_languages, parent=None): QAbstractItemModel.__init__(self, parent) self._unknown_text = unknown_text self._unknown_visible = unknown_visible self._languages = [UnknownLanguage.create_generic() ] if unknown_visible else [] self._languages += sorted(legal_languages, key=lambda x: x.name())
def __init__(self, di, prefix, sortcus, sortdies): QAbstractItemModel.__init__(self) self.prefix = prefix self.top_dies = [ decorate_die(CU.get_top_DIE(), i) for (i, CU) in enumerate(di._CUs) ] self.highlight_condition = None fi = QFontInfo(QApplication.font()) self.bold_font = QFont(fi.family(), fi.pointSize(), QFont.Bold) self.blue_brush = QBrush(Qt.GlobalColor.blue) self.sortcus = sortcus self.sortdies = sortdies
def __init__(self, cameca_files, dark_mode=True, parent=None): QAbstractItemModel.__init__(self, parent) self.collection = cameca_files self.dark_mode = dark_mode # alpha/transparency for curves when not highlighted self.global_alpha = 200 # this flag is used for tristate check behaviour # to prevent children<->parent loops: self.parent_selects_children_flag = False # That is for custom node with calculated WDS spectra self.last_item_is_custom = False self.spec_xtal_selection_model = None
def __init__(self, annotations, parent=None): QAbstractItemModel.__init__(self, parent) start = time.time() self._annotations = annotations self._dirty = False self._root = RootModelItem(self, annotations) diff = time.time() - start LOG.info("Created AnnotationModel in %.2fs" % (diff, )) self.dataChanged.connect(self.onDataChanged) self.rowsInserted.connect(self.onDataChanged) self.rowsRemoved.connect(self.onDataChanged)
def __init__(self, *args): QAbstractItemModel.__init__(self, *args) self._tags = [] self._currentTagIndex = QModelIndex() defBaseColor = QApplication.instance().palette().base().color() # yellow or maroon brightBg = QColor('#ffff80') if defBaseColor.lightnessF() > 0.5 else QColor('#800000') self._currentTagBrush = QBrush(brightBg) core.workspace().cursorPositionChanged.connect(self._onCursorPositionChanged) self._updateCurrentTagTimer = QTimer(self) self._updateCurrentTagTimer.setInterval(300) self._updateCurrentTagTimer.timeout.connect(self._updateCurrentTagAndEmitSignal)
def __init__(self, parent, columns: List[TableModelColumn], columns_movable, filtering_sorting): AttrsProtected.__init__(self) QAbstractItemModel.__init__(self, parent) self.parent_widget = parent self._columns = columns self._col_idx_by_name: Dict[str, int] = {} self._rebuild_column_index() self.view: Optional[QAbstractItemView] = None self.columns_movable = columns_movable self.initial_sorting_column_name = '' self.initial_sorting_order = Qt.AscendingOrder self.proxy_model: Optional[ColumnedSortFilterProxyModel] = None self.data_lock = thread_utils.EnhRLock() if filtering_sorting: self.enable_filter_proxy_model(self)
def __init__(self, parent, topLevelOperator): """ :param topLevelOperator: An instance of OpMultiLaneDataSelectionGroup """ # super does not work here in Python 2.x, decorated class confuses it QAbstractItemModel.__init__(self, parent) self._op = topLevelOperator def handleNewLane(multislot, laneIndex): assert multislot is self._op.DatasetGroup self.beginInsertRows(QModelIndex(), laneIndex, laneIndex) self.endInsertRows() def handleDatasetInfoChanged(slot): # Get the row of this slot assert slot.subindex, f"BUG: Excpected nested slot {slot}" laneIndex = slot.subindex[0] # FIXME: For now, we update the whole row. # Later, update only the columns that correspond to this dataset. firstIndex = self.createIndex(laneIndex, 0) lastIndex = self.createIndex(laneIndex, self.columnCount() - 1) self.dataChanged.emit(firstIndex, lastIndex) def handleNewDatasetInserted(mslot, index): mslot[index].notifyDirty(bind(handleDatasetInfoChanged)) for laneIndex, datasetMultiSlot in enumerate( self._op.DatasetGroup): datasetMultiSlot.notifyInserted(bind(handleNewDatasetInserted)) for roleIndex, datasetSlot in enumerate(datasetMultiSlot): handleNewDatasetInserted(datasetMultiSlot, roleIndex) self._op.DatasetGroup.notifyInserted(bind(handleNewLane)) def handleLaneRemoved(multislot, laneIndex): assert multislot is self._op.DatasetGroup self.beginRemoveRows(QModelIndex(), laneIndex, laneIndex) self.endRemoveRows() self._op.DatasetGroup.notifyRemoved(bind(handleLaneRemoved)) # Any lanes that already exist must be added now. for laneIndex, slot in enumerate(self._op.DatasetGroup): handleNewLane(self._op.DatasetGroup, laneIndex)
def __init__(self, parent=None, *args, **kwargs): """ Constructor of the class. """ QAbstractItemModel.__init__(self) self.parent = parent # Initialize arrays self.dataArray = np.array([[]]) self.indexArray = np.array([[]]) self.formulaArray = np.array([[]]) self.headerArray = None # class variables self.numColumns = 0 self.numRows = 0 self.suppress_column_names = True return
def __init__(self, parent, topLevelOperator): """ :param topLevelOperator: An instance of OpMultiLaneDataSelectionGroup """ # super does not work here in Python 2.x, decorated class confuses it QAbstractItemModel.__init__(self, parent) self._op = topLevelOperator def handleNewLane( multislot, laneIndex): assert multislot is self._op.DatasetGroup self.beginInsertRows( QModelIndex(), laneIndex, laneIndex ) self.endInsertRows() def handleDatasetInfoChanged(slot): # Get the row of this slot laneSlot = slot.operator laneIndex = laneSlot.operator.index( laneSlot ) # FIXME: For now, we update the whole row. # Later, update only the columns that correspond to this dataset. firstIndex = self.createIndex(laneIndex, 0) lastIndex = self.createIndex(laneIndex, self.columnCount()-1) self.dataChanged.emit(firstIndex, lastIndex) def handleNewDatasetInserted(mslot, index): mslot[index].notifyDirty( bind(handleDatasetInfoChanged) ) for laneIndex, datasetMultiSlot in enumerate(self._op.DatasetGroup): datasetMultiSlot.notifyInserted( bind(handleNewDatasetInserted) ) for roleIndex, datasetSlot in enumerate(datasetMultiSlot): handleNewDatasetInserted( datasetMultiSlot, roleIndex ) self._op.DatasetGroup.notifyInserted( bind(handleNewLane) ) def handleLaneRemoved( multislot, laneIndex ): assert multislot is self._op.DatasetGroup self.beginRemoveRows( QModelIndex(), laneIndex, laneIndex ) self.endRemoveRows() self._op.DatasetGroup.notifyRemoved( bind(handleLaneRemoved) ) # Any lanes that already exist must be added now. for laneIndex, slot in enumerate(self._op.DatasetGroup): handleNewLane( self._op.DatasetGroup, laneIndex )
def __init__(self, parent, topLevelOperator, roleIndex): """ :param topLevelOperator: An instance of OpMultiLaneDataSelectionGroup """ # super does not work here in Python 2.x, decorated class confuses it QAbstractItemModel.__init__(self, parent) self.threadRouter = ThreadRouter(self) self._op = topLevelOperator self._roleIndex = roleIndex self._currently_inserting = False self._currently_removing = False self._op.DatasetGroup.notifyInsert(self.prepareForNewLane) # pre self._op.DatasetGroup.notifyInserted(self.handleNewLane) # post self._op.DatasetGroup.notifyRemove(self.handleLaneRemove) # pre self._op.DatasetGroup.notifyRemoved(self.handleLaneRemoved) # post # Any lanes that already exist must be added now. for laneIndex, slot in enumerate(self._op.DatasetGroup): self.prepareForNewLane(self._op.DatasetGroup, laneIndex) self.handleNewLane(self._op.DatasetGroup, laneIndex)
def __init__(self, parent, topLevelOperator, roleIndex): """ :param topLevelOperator: An instance of OpMultiLaneDataSelectionGroup """ # super does not work here in Python 2.x, decorated class confuses it QAbstractItemModel.__init__(self, parent) self.threadRouter = ThreadRouter(self) self._op = topLevelOperator self._roleIndex = roleIndex self._currently_inserting = False self._currently_removing = False self._op.DatasetGroup.notifyInsert( self.prepareForNewLane ) # pre self._op.DatasetGroup.notifyInserted( self.handleNewLane ) # post self._op.DatasetGroup.notifyRemove( self.handleLaneRemove ) # pre self._op.DatasetGroup.notifyRemoved( self.handleLaneRemoved ) # post # Any lanes that already exist must be added now. for laneIndex, slot in enumerate(self._op.DatasetGroup): self.prepareForNewLane( self._op.DatasetGroup, laneIndex ) self.handleNewLane( self._op.DatasetGroup, laneIndex )
def __init__(self, *args, **kwargs): QAbstractItemModel.__init__(self, *args, **kwargs) self._rootIndex = QModelIndex() self._artists = SortedDict()
def __init__(self, query): QAbstractItemModel.__init__(self) self._root = ImageViewNode(None) self.setQuery(query)
def __init__(self): QAbstractItemModel.__init__(self) self.completer = None
def __init__(self, parent=None): QAbstractItemModel.__init__(self, parent) self._all_root = Node(data=None, parent=None) self._root = Node(data=None, parent=None) self._language_filter = []
def __init__(self, data): QAbstractItemModel.__init__(self) self.__data = data
def __init__(self, root, dmodel): QAbstractItemModel.__init__(self) self.root = root self.connectGroup(root) self.dmodel = dmodel self.dmodel.filterModelChange.connect(self.setRoot)
def __init__(self, parent): QAbstractItemModel.__init__(self, parent) # CharacterItems are stored in this list self.characters = []
def __init__(self, project_finder): QAbstractItemModel.__init__(self) self.project_finder = project_finder self.project_finder.fileChanged.connect(self.fileChanged)
def __init__(self, db): QAbstractItemModel.__init__(self) self._root = TagViewNode(None) self.db = db self.reloadTags()
def __init__(self, nodes): QAbstractItemModel.__init__(self) self._root = NavigationNode(None) for node in nodes: self._root.addChild(node)
def __init__(self, manager): QAbstractItemModel.__init__(self, manager) self._manager = manager self._indexCache = {}
def __init__(self, wordSet): QAbstractItemModel.__init__(self) self._wordSet = wordSet