refactor: remove core/ folder

This commit is contained in:
Vxrtrauter
2026-03-19 20:42:28 +01:00
parent 53d4a240a0
commit 325eda54fa
52 changed files with 142 additions and 142 deletions
+89
View File
@@ -0,0 +1,89 @@
from interface.dialogs.pauseresumedelegate import PauseResumeDelegate
from interface.dialogs.hoverrowdelegate import HoverRowDelegate
from interface.dialogs.downloadmodel import DownloadModel
from interface.dialogs.theme import _table_stylesheet
from PySide6.QtWidgets import QTableView, QHeaderView
from utils.logging.logs import consoleLog
from PySide6 import QtWidgets
from PySide6.QtCore import Qt
def _create_download_list(self) -> QTableView:
self.download_model = DownloadModel()
self.downloadList.setModel(self.download_model)
self.downloadList.horizontalHeader().setStretchLastSection(False)
self.downloadList.horizontalHeader().setSectionResizeMode(0, QHeaderView.ResizeMode.Fixed)
self.downloadList.horizontalHeader().resizeSection(0, 70)
self.downloadList.horizontalHeader().setSectionResizeMode(1, QHeaderView.ResizeMode.Stretch)
self.downloadList.horizontalHeader().setSectionResizeMode(2, QHeaderView.ResizeMode.ResizeToContents)
self.downloadList.horizontalHeader().setSectionResizeMode(3, QHeaderView.ResizeMode.ResizeToContents)
self.downloadList.horizontalHeader().setSectionResizeMode(4, QHeaderView.ResizeMode.ResizeToContents)
self.downloadList.horizontalHeader().setSectionResizeMode(5, QHeaderView.ResizeMode.ResizeToContents)
self.downloadList.horizontalHeader().setSectionResizeMode(6, QHeaderView.ResizeMode.ResizeToContents)
self.downloadList.horizontalHeader().setMinimumSectionSize(60)
self.downloadList.verticalHeader().setDefaultSectionSize(40)
self.downloadList.setSelectionBehavior(QTableView.SelectionBehavior.SelectRows)
self.downloadList.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.ExtendedSelection)
self.downloadList.verticalHeader().setVisible(False)
self.downloadList.horizontalHeader().setDefaultAlignment(Qt.AlignmentFlag.AlignLeft | Qt.AlignmentFlag.AlignVCenter)
self.downloadList.horizontalHeader().setHighlightSections(False)
self.downloadList.setMouseTracking(True)
self.downloadList.setShowGrid(False)
self.downloadList.setStyleSheet(_table_stylesheet("QTableView"))
self.downloadList.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
self.downloadList.viewport().setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
download_model = self.download_model
def on_pause_resume_clicked(row):
download_model.toggle_pause_resume(row)
self.downloadList.viewport().setMouseTracking(True)
hover_delegate = HoverRowDelegate(self.downloadList)
self.downloadList.setItemDelegate(hover_delegate)
delegate = PauseResumeDelegate(self.downloadList)
self.downloadList.setItemDelegateForColumn(0, delegate)
delegate.clicked.connect(on_pause_resume_clicked)
return self.downloadList
def download_list_update(self):
self._update_speed_label()
if not self.download_model:
return
row_count = self.download_model.rowCount()
col_count = self.download_model.columnCount()
if row_count > 0 and col_count > 0:
top_left = self.download_model.index(0, 0)
bottom_right = self.download_model.index(row_count - 1, col_count - 1)
if top_left.isValid() and bottom_right.isValid():
self.download_model.dataChanged.emit(top_left, bottom_right, [Qt.ItemDataRole.DisplayRole, Qt.ItemDataRole.UserRole])
if row_count != self._last_dl_row_count:
old_count = self._last_dl_row_count
self._last_dl_row_count = row_count
if row_count > 0:
self.download_model.layoutAboutToBeChanged.emit()
self.download_model.layoutChanged.emit()
for row in range(row_count):
idx = self.download_model.index(row, 0)
if idx.isValid():
self.downloadList.closePersistentEditor(idx)
self.downloadList.openPersistentEditor(idx)
elif old_count > 0:
self.download_model.layoutAboutToBeChanged.emit()
self.download_model.layoutChanged.emit()
else:
if row_count > 0:
delegate = self.downloadList.itemDelegateForColumn(0)
for row in range(row_count):
idx = self.download_model.index(row, 0)
if idx.isValid():
editor = self.downloadList.indexWidget(idx)
if editor and delegate:
try:
delegate.setEditorData(editor, idx)
except RuntimeError as e:
consoleLog(f"Exception while updating download list: {e}")