added delete profile button
This commit is contained in:
@@ -237,6 +237,10 @@ class DisplayProfileManagerGUI(QMainWindow):
|
|||||||
self.refresh_btn = QPushButton("Refresh")
|
self.refresh_btn = QPushButton("Refresh")
|
||||||
self.refresh_btn.clicked.connect(self.refresh_profiles)
|
self.refresh_btn.clicked.connect(self.refresh_profiles)
|
||||||
btn_layout.addWidget(self.refresh_btn)
|
btn_layout.addWidget(self.refresh_btn)
|
||||||
|
|
||||||
|
self.delete_btn = QPushButton("Delete Profile")
|
||||||
|
self.delete_btn.clicked.connect(self.on_delete_clicked)
|
||||||
|
btn_layout.addWidget(self.delete_btn)
|
||||||
|
|
||||||
self.copy_btn = QPushButton("Copy Load Cmd")
|
self.copy_btn = QPushButton("Copy Load Cmd")
|
||||||
self.copy_btn.setMinimumWidth(120)
|
self.copy_btn.setMinimumWidth(120)
|
||||||
@@ -297,6 +301,27 @@ class DisplayProfileManagerGUI(QMainWindow):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
QMessageBox.critical(self, "Error", f"Failed to load profile: {e}")
|
QMessageBox.critical(self, "Error", f"Failed to load profile: {e}")
|
||||||
|
|
||||||
|
def on_delete_clicked(self):
|
||||||
|
selected_item = self.profile_list.currentItem()
|
||||||
|
if not selected_item:
|
||||||
|
QMessageBox.warning(self, "No Selection", "Please select a profile to delete.")
|
||||||
|
return
|
||||||
|
|
||||||
|
profile_name = selected_item.text()
|
||||||
|
profile_path = DEFAULT_PROFILE_DIR / f"{profile_name}.json"
|
||||||
|
|
||||||
|
reply = QMessageBox.question(self, "Confirm Delete",
|
||||||
|
f"Are you sure you want to delete profile '{profile_name}'?",
|
||||||
|
QMessageBox.Yes | QMessageBox.No)
|
||||||
|
|
||||||
|
if reply == QMessageBox.Yes:
|
||||||
|
try:
|
||||||
|
os.remove(profile_path)
|
||||||
|
self.refresh_profiles()
|
||||||
|
QMessageBox.information(self, "Success", f"Profile '{profile_name}' deleted.")
|
||||||
|
except Exception as e:
|
||||||
|
QMessageBox.critical(self, "Error", f"Failed to delete profile: {e}")
|
||||||
|
|
||||||
def on_copy_clicked(self):
|
def on_copy_clicked(self):
|
||||||
selected_item = self.profile_list.currentItem()
|
selected_item = self.profile_list.currentItem()
|
||||||
if not selected_item:
|
if not selected_item:
|
||||||
|
|||||||
Reference in New Issue
Block a user