diff --git a/src/main_window.py b/src/main_window.py index 9c305ba..63b0253 100644 --- a/src/main_window.py +++ b/src/main_window.py @@ -9,6 +9,8 @@ from PySide6.QtWidgets import ( QStackedLayout, QMessageBox, QStyledItemDelegate, + QStyle, + QApplication, ) @@ -75,6 +77,7 @@ class MainWindow(QMainWindow, Ui_MainWindow): self.setupUi(self) self.setWindowTitle(f"OneDriveGUI v{version}") self.setWindowIcon(QIcon(DIR_PATH + "/resources/images/icons8-cloud-80.png")) + self.trash_icon = QApplication.style().standardIcon(QStyle.SP_TrashIcon) if gui_settings.get("frameless_window") == "True": self.setWindowFlags(Qt.FramelessWindowHint) @@ -850,11 +853,12 @@ class MainWindow(QMainWindow, Ui_MainWindow): logging.debug("Updating list item") item_widget.set_progress(int(progress)) - # item_widget.set_icon(file_path) + item_widget.set_icon(file_path) item_widget.hide_progress_bar(transfer_complete) if file_operation == "Deleting": item_widget.set_label_1(f"Deleted from {parent_dir}") + item_widget.set_custom_icon(self.trash_icon) item_widget.set_label_2(f"") # Store timestamp and display for deleted files if "timestamp" in data and data["timestamp"]: @@ -923,6 +927,7 @@ class MainWindow(QMainWindow, Ui_MainWindow): if file_operation == "Deleting": myQCustomQWidget.set_label_1(f"Deleted from {parent_dir}") + myQCustomQWidget.set_custom_icon(self.trash_icon) myQCustomQWidget.set_label_2(f"") # Store timestamp and display for deleted files if "timestamp" in data and data["timestamp"]: diff --git a/src/workers.py b/src/workers.py index 7656505..9db8886 100644 --- a/src/workers.py +++ b/src/workers.py @@ -1,7 +1,7 @@ from PySide6.QtCore import QThread, Signal, QFileInfo, Qt -from PySide6.QtWidgets import QWidget, QFileIconProvider -from PySide6.QtGui import QFontMetrics +from PySide6.QtWidgets import QWidget, QFileIconProvider, QStyle +from PySide6.QtGui import QFontMetrics, QIcon # Imports for main window. @@ -689,6 +689,10 @@ class TaskList(QWidget, Ui_list_item_widget): self.toolButton.setIcon(self.icon) + def set_custom_icon(self, icon): + """Set a custom QIcon for the toolButton.""" + self.toolButton.setIcon(icon) + def set_file_name(self, file_path): # Use font metrics to elide long filenames font_metrics = QFontMetrics(self.ls_label_file_name.font())