Example #1
0
 def __init__(self, window, tag):
     super().__init__(window)
     self.ui = Ui_EditTagDialog()
     self.ui.setupUi(self)
     self.window = window
     self.value_list = self.ui.value_list
     self.metadata_box = window.metadata_box
     self.tag = tag
     self.modified_tags = {}
     self.different = False
     self.default_tags = sorted(
         set(list(TAG_NAMES.keys()) + self.metadata_box.tag_diff.tag_names))
     if len(self.metadata_box.files) == 1:
         current_file = list(self.metadata_box.files)[0]
         self.default_tags = list(
             filter(current_file.supports_tag, self.default_tags))
     tag_names = self.ui.tag_names
     tag_names.addItem("")
     visible_tags = [
         tn for tn in self.default_tags if not tn.startswith("~")
     ]
     tag_names.addItems(visible_tags)
     self.completer = QtWidgets.QCompleter(visible_tags, tag_names)
     self.completer.setCompletionMode(QtWidgets.QCompleter.PopupCompletion)
     tag_names.setCompleter(self.completer)
     self.value_list.model().rowsInserted.connect(self.on_rows_inserted)
     self.value_list.model().rowsRemoved.connect(self.on_rows_removed)
     self.value_list.setItemDelegate(TagEditorDelegate(self))
     self.tag_changed(tag)
     self.value_selection_changed()
     self.restore_geometry()
Example #2
0
 def __init__(self, window, tag):
     QtGui.QDialog.__init__(self, window)
     self.ui = Ui_EditTagDialog()
     self.ui.setupUi(self)
     self.window = window
     self.value_list = self.ui.value_list
     self.metadata_box = window.metadata_box
     self.tag = tag
     self.modified_tags = {}
     self.different = False
     self.default_tags = sorted(set(TAG_NAMES.keys() + self.metadata_box.tag_names))
     tag_names = self.ui.tag_names
     tag_names.editTextChanged.connect(self.tag_changed)
     tag_names.addItem("")
     visible_tags = [tn for tn in self.default_tags if not tn.startswith("~")]
     tag_names.addItems(visible_tags)
     self.completer = QtGui.QCompleter(visible_tags, tag_names)
     self.completer.setCompletionMode(QtGui.QCompleter.PopupCompletion)
     tag_names.setCompleter(self.completer)
     self.tag_changed(tag)
     self.value_selection_changed()
     self.ui.edit_value.clicked.connect(self.edit_value)
     self.ui.add_value.clicked.connect(self.add_value)
     self.ui.remove_value.clicked.connect(self.remove_value)
     self.value_list.itemChanged.connect(self.value_edited)
     self.value_list.itemSelectionChanged.connect(self.value_selection_changed)
Example #3
0
 def __init__(self, parent=None):
     choices = list(['$' + name for name in script_function_names()])
     choices += ['%' + name.replace('~', '_') + '%' for name in TAG_NAMES.keys()]
     super().__init__(choices, parent)
     self.setCompletionMode(QCompleter.PopupCompletion)
     self.highlighted.connect(self.set_highlighted)
     self.last_selected = ''
Example #4
0
 def __init__(self, window, tag):
     PicardDialog.__init__(self, window)
     self.ui = Ui_EditTagDialog()
     self.ui.setupUi(self)
     self.window = window
     self.value_list = self.ui.value_list
     self.metadata_box = window.metadata_box
     self.tag = tag
     self.modified_tags = {}
     self.different = False
     self.default_tags = sorted(
         set(TAG_NAMES.keys() + self.metadata_box.tag_diff.tag_names))
     if len(self.metadata_box.files) == 1:
         current_file = list(self.metadata_box.files)[0]
         self.default_tags = filter(lambda x: current_file.supports_tag(x),
                                    self.default_tags)
     tag_names = self.ui.tag_names
     tag_names.editTextChanged.connect(self.tag_changed)
     tag_names.addItem("")
     visible_tags = [
         tn for tn in self.default_tags if not tn.startswith("~")
     ]
     tag_names.addItems(visible_tags)
     self.completer = QtGui.QCompleter(visible_tags, tag_names)
     self.completer.setCompletionMode(QtGui.QCompleter.PopupCompletion)
     tag_names.setCompleter(self.completer)
     self.tag_changed(tag)
     self.value_selection_changed()
     self.ui.edit_value.clicked.connect(self.edit_value)
     self.ui.add_value.clicked.connect(self.add_value)
     self.ui.remove_value.clicked.connect(self.remove_value)
     self.value_list.itemChanged.connect(self.value_edited)
     self.value_list.itemSelectionChanged.connect(
         self.value_selection_changed)
Example #5
0
 def __init__(self, window, tag):
     super().__init__(window)
     self.ui = Ui_EditTagDialog()
     self.ui.setupUi(self)
     self.window = window
     self.value_list = self.ui.value_list
     self.metadata_box = window.metadata_box
     self.tag = tag
     self.modified_tags = {}
     self.different = False
     self.default_tags = sorted(
         set(list(TAG_NAMES.keys()) + self.metadata_box.tag_diff.tag_names))
     if len(self.metadata_box.files) == 1:
         current_file = list(self.metadata_box.files)[0]
         self.default_tags = list(filter(current_file.supports_tag, self.default_tags))
     tag_names = self.ui.tag_names
     tag_names.editTextChanged.connect(self.tag_changed)
     tag_names.addItem("")
     visible_tags = [tn for tn in self.default_tags if not tn.startswith("~")]
     tag_names.addItems(visible_tags)
     self.completer = QtWidgets.QCompleter(visible_tags, tag_names)
     self.completer.setCompletionMode(QtWidgets.QCompleter.PopupCompletion)
     tag_names.setCompleter(self.completer)
     self.tag_changed(tag)
     self.value_selection_changed()
     self.ui.edit_value.clicked.connect(self.edit_value)
     self.ui.add_value.clicked.connect(self.add_value)
     self.ui.remove_value.clicked.connect(self.remove_value)
     self.value_list.itemChanged.connect(self.value_edited)
     self.value_list.itemSelectionChanged.connect(self.value_selection_changed)
     self.restore_geometry()
Example #6
0
 def __init__(self, parent=None):
     super().__init__(parent)
     self.ui = Ui_TagsOptionsPage()
     self.ui.setupUi(self)
     self.completer = QtWidgets.QCompleter(sorted(TAG_NAMES.keys()), self)
     self.completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive)
     self.completer.setWidget(self.ui.preserved_tags)
     self.ui.preserved_tags.textEdited.connect(self.preserved_tags_edited)
     self.completer.activated.connect(self.completer_activated)
Example #7
0
 def __init__(self, parent=None):
     super(TagsOptionsPage, self).__init__(parent)
     self.ui = Ui_TagsOptionsPage()
     self.ui.setupUi(self)
     self.ui.write_id3v23.clicked.connect(self.update_encodings)
     self.ui.write_id3v24.clicked.connect(partial(self.update_encodings, force_utf8=True))
     self.completer = QtWidgets.QCompleter(sorted(TAG_NAMES.keys()), self)
     self.completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive)
     self.completer.setWidget(self.ui.preserved_tags)
     self.ui.preserved_tags.textEdited.connect(self.preserved_tags_edited)
     self.completer.activated.connect(self.completer_activated)
Example #8
0
 def __init__(self, parent=None):
     super(TagsOptionsPage, self).__init__(parent)
     self.ui = Ui_TagsOptionsPage()
     self.ui.setupUi(self)
     self.ui.write_id3v23.clicked.connect(self.update_encodings)
     self.ui.write_id3v24.clicked.connect(
         partial(self.update_encodings, force_utf8=True))
     self.completer = QtWidgets.QCompleter(sorted(TAG_NAMES.keys()), self)
     self.completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive)
     self.completer.setWidget(self.ui.preserved_tags)
     self.ui.preserved_tags.textEdited.connect(self.preserved_tags_edited)
     self.completer.activated.connect(self.completer_activated)
Example #9
0
    def __init__(self, parent):
        super().__init__(parent)
        self.ui = Ui_TagListEditor()
        self.ui.setupUi(self)
        list_view = self.ui.tag_list_view
        model = EditableListModel()
        model.user_sortable_changed.connect(self.on_user_sortable_changed)
        self.ui.sort_buttons.setVisible(model.user_sortable)
        list_view.setModel(model)
        list_view.setItemDelegate(
            AutocompleteItemDelegate(sorted(TAG_NAMES.keys())))

        selection = list_view.selectionModel()
        selection.selectionChanged.connect(self.on_selection_changed)
        self.on_selection_changed([], [])
Example #10
0
 def __init__(self, window, tag):
     QtGui.QDialog.__init__(self, window)
     self.ui = Ui_EditTagDialog()
     self.ui.setupUi(self)
     self.window = window
     self.value_list = self.ui.value_list
     self.metadata_box = window.metadata_box
     self.tag = tag
     self.modified_tags = {}
     self.different = False
     self.default_tags = sorted(set(TAG_NAMES.keys() + self.metadata_box.tag_names))
     tag_names = self.ui.tag_names
     tag_names.editTextChanged.connect(self.tag_changed)
     tag_names.addItem("")
     tag_names.addItems([tn for tn in self.default_tags if not tn.startswith("~")])
     self.tag_changed(tag)
     self.value_selection_changed()
     self.ui.edit_value.clicked.connect(self.edit_value)
     self.ui.add_value.clicked.connect(self.add_value)
     self.ui.remove_value.clicked.connect(self.remove_value)
     self.value_list.itemChanged.connect(self.value_edited)
     self.value_list.itemSelectionChanged.connect(self.value_selection_changed)
Example #11
0
 def all_tags(self):
     yield from TAG_NAMES.keys()
     yield from PRESERVED_TAGS
     yield from EXTRA_VARIABLES