v0.9.24
This commit is contained in:
@@ -139,8 +139,9 @@ class PropertiesDialog(QDialog):
|
||||
meta_layout = QVBoxLayout(meta_widget)
|
||||
|
||||
self.meta_toolbar = QToolBar()
|
||||
self._setup_table_toolbar(self.meta_toolbar, self.on_add_meta, self.on_delete_meta,
|
||||
self.on_delete_all_meta, self.on_save_meta, self.on_cancel_meta)
|
||||
self._setup_table_toolbar(
|
||||
self.meta_toolbar, self.on_add_meta, self.on_delete_meta,
|
||||
self.on_delete_all_meta, self.on_save_meta, self.on_cancel_meta)
|
||||
meta_layout.addWidget(self.meta_toolbar)
|
||||
|
||||
self.table = QTableWidget()
|
||||
@@ -172,8 +173,9 @@ class PropertiesDialog(QDialog):
|
||||
exif_layout = QVBoxLayout(exif_widget)
|
||||
|
||||
self.exif_toolbar = QToolBar()
|
||||
self._setup_table_toolbar(self.exif_toolbar, self.on_add_exif, self.on_delete_exif,
|
||||
self.on_delete_all_exif, self.on_save_exif, self.on_cancel_exif)
|
||||
self._setup_table_toolbar(
|
||||
self.exif_toolbar, self.on_add_exif, self.on_delete_exif,
|
||||
self.on_delete_all_exif, self.on_save_exif, self.on_cancel_exif)
|
||||
exif_layout.addWidget(self.exif_toolbar)
|
||||
|
||||
self.exif_table = QTableWidget()
|
||||
@@ -219,17 +221,21 @@ class PropertiesDialog(QDialog):
|
||||
# Start background loading
|
||||
self.reload_metadata()
|
||||
|
||||
def _setup_table_toolbar(self, toolbar, add_slot, del_slot, del_all_slot, save_slot, cancel_slot):
|
||||
def _setup_table_toolbar(self, toolbar, add_slot, del_slot, del_all_slot, save_slot,
|
||||
cancel_slot):
|
||||
"""Helper to populate toolbars with buttons."""
|
||||
toolbar.addAction(QIcon.fromTheme("list-add"), UITexts.CREATE, add_slot)
|
||||
toolbar.addAction(QIcon.fromTheme("list-remove"), UITexts.DELETE, del_slot)
|
||||
toolbar.addAction(QIcon.fromTheme("edit-clear-all"), UITexts.PROPERTIES_DELETE_ALL, del_all_slot)
|
||||
toolbar.addAction(
|
||||
QIcon.fromTheme("edit-clear-all"), UITexts.PROPERTIES_DELETE_ALL,
|
||||
del_all_slot)
|
||||
toolbar.addSeparator()
|
||||
toolbar.addAction(QIcon.fromTheme("document-save"), UITexts.SAVE, save_slot)
|
||||
toolbar.addAction(QIcon.fromTheme("edit-undo"), UITexts.CANCEL, cancel_slot)
|
||||
|
||||
def on_add_meta(self):
|
||||
key, ok = QInputDialog.getText(self, UITexts.PROPERTIES_ADD_ATTR, UITexts.PROPERTIES_ADD_ATTR_NAME)
|
||||
key, ok = QInputDialog.getText(
|
||||
self, UITexts.PROPERTIES_ADD_ATTR, UITexts.PROPERTIES_ADD_ATTR_NAME)
|
||||
if ok and key:
|
||||
row = self.table.rowCount()
|
||||
self.table.insertRow(row)
|
||||
@@ -240,7 +246,8 @@ class PropertiesDialog(QDialog):
|
||||
self.table.editItem(v_item)
|
||||
|
||||
def on_delete_meta(self):
|
||||
rows = sorted(set(index.row() for index in self.table.selectedIndexes()), reverse=True)
|
||||
rows = sorted(set(index.row() for index in self.table.selectedIndexes()),
|
||||
reverse=True)
|
||||
for row in rows:
|
||||
self.table.removeRow(row)
|
||||
|
||||
@@ -261,13 +268,14 @@ class PropertiesDialog(QDialog):
|
||||
XattrManager.set_attribute(self.path, k, v)
|
||||
self.reload_metadata()
|
||||
except Exception as e:
|
||||
QMessageBox.warning(self, UITexts.ERROR, f"Error: {e}")
|
||||
QMessageBox.critical(self, UITexts.ERROR, str(e))
|
||||
|
||||
def on_cancel_meta(self):
|
||||
self.update_metadata_table(self.original_xattrs)
|
||||
|
||||
def on_add_exif(self):
|
||||
key, ok = QInputDialog.getText(self, UITexts.PROPERTIES_ADD_ATTR, UITexts.PROPERTIES_ADD_ATTR_NAME)
|
||||
key, ok = QInputDialog.getText(
|
||||
self, UITexts.PROPERTIES_ADD_ATTR, UITexts.PROPERTIES_ADD_ATTR_NAME)
|
||||
if ok and key:
|
||||
row = self.exif_table.rowCount()
|
||||
self.exif_table.insertRow(row)
|
||||
@@ -278,7 +286,9 @@ class PropertiesDialog(QDialog):
|
||||
self.exif_table.editItem(v_item)
|
||||
|
||||
def on_delete_exif(self):
|
||||
rows = sorted(set(index.row() for index in self.exif_table.selectedIndexes()), reverse=True)
|
||||
rows = sorted(
|
||||
set(index.row() for index in self.exif_table.selectedIndexes()),
|
||||
reverse=True)
|
||||
for row in rows:
|
||||
self.exif_table.removeRow(row)
|
||||
|
||||
@@ -295,7 +305,7 @@ class PropertiesDialog(QDialog):
|
||||
MetadataManager.write_metadata(self.path, new_exif)
|
||||
self.reload_metadata()
|
||||
except Exception as e:
|
||||
QMessageBox.warning(self, UITexts.ERROR, f"Error: {e}")
|
||||
QMessageBox.critical(self, UITexts.ERROR, str(e))
|
||||
|
||||
def on_cancel_exif(self):
|
||||
self.update_exif_table(self.original_exif)
|
||||
|
||||
Reference in New Issue
Block a user