forked from CastroFidel/winehelper
added a button to open the location of the log file
This commit is contained in:
@@ -1762,6 +1762,7 @@ class WineHelperGUI(QMainWindow):
|
||||
if show_global:
|
||||
self.backup_button.setVisible(False)
|
||||
self.create_log_button.setVisible(False)
|
||||
self.open_log_dir_button.setVisible(False)
|
||||
self.uninstall_button.setVisible(False)
|
||||
self.current_selected_app = None
|
||||
|
||||
@@ -1872,6 +1873,12 @@ class WineHelperGUI(QMainWindow):
|
||||
self.create_log_button.clicked.connect(self.run_installed_app_with_debug)
|
||||
installed_global_layout.addWidget(self.create_log_button)
|
||||
|
||||
self.open_log_dir_button = QPushButton("Открыть папку с логом")
|
||||
self.open_log_dir_button.setIcon(QIcon.fromTheme("folder-open"))
|
||||
self.open_log_dir_button.clicked.connect(self.open_log_directory)
|
||||
self.open_log_dir_button.setVisible(False) # Скрыта по умолчанию
|
||||
installed_global_layout.addWidget(self.open_log_dir_button)
|
||||
|
||||
self.backup_button = QPushButton("Создать резервную копию префикса")
|
||||
self.backup_button.setIcon(QIcon.fromTheme("document-save"))
|
||||
self.backup_button.clicked.connect(self.backup_prefix_for_app)
|
||||
@@ -3378,6 +3385,7 @@ class WineHelperGUI(QMainWindow):
|
||||
self.installed_global_action_widget.setVisible(True)
|
||||
self.backup_button.setVisible(True)
|
||||
self.create_log_button.setVisible(True)
|
||||
self.update_open_log_dir_button_visibility()
|
||||
self.uninstall_button.setVisible(True)
|
||||
self.manual_install_path_widget.setVisible(False)
|
||||
|
||||
@@ -3386,6 +3394,22 @@ class WineHelperGUI(QMainWindow):
|
||||
self.current_selected_app = None
|
||||
self.info_panel.setVisible(False)
|
||||
|
||||
def update_open_log_dir_button_visibility(self):
|
||||
"""Проверяет наличие лог-файла и обновляет видимость кнопки."""
|
||||
log_path = os.path.join(os.path.expanduser("~"), "winehelper_backup_log", "winehelper.log")
|
||||
self.open_log_dir_button.setVisible(os.path.exists(log_path))
|
||||
|
||||
def open_log_directory(self):
|
||||
"""Открывает директорию с лог-файлами."""
|
||||
log_dir_path = os.path.join(os.path.expanduser("~"), "winehelper_backup_log")
|
||||
if os.path.isdir(log_dir_path):
|
||||
try:
|
||||
subprocess.Popen(['xdg-open', log_dir_path])
|
||||
except Exception as e:
|
||||
QMessageBox.warning(self, "Ошибка", f"Не удалось открыть директорию:\n{log_dir_path}\n\nОшибка: {e}")
|
||||
else:
|
||||
QMessageBox.information(self, "Информация", f"Директория с логами не найдена:\n{log_dir_path}")
|
||||
|
||||
def _get_prefix_name_for_selected_app(self):
|
||||
"""Извлекает имя префикса для выбранного приложения."""
|
||||
if not self.current_selected_app or 'desktop_path' not in self.current_selected_app:
|
||||
|
Reference in New Issue
Block a user