def setupUi(self, MetadataBulkDialog): MetadataBulkDialog.setObjectName("MetadataBulkDialog") MetadataBulkDialog.resize(955, 740) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(I("edit_input.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off) MetadataBulkDialog.setWindowIcon(icon) self.verticalLayout_3 = QtWidgets.QVBoxLayout(MetadataBulkDialog) self.verticalLayout_3.setObjectName("verticalLayout_3") self.central_widget = QtWidgets.QTabWidget(MetadataBulkDialog) self.central_widget.setObjectName("central_widget") self.scrollArea1 = QtWidgets.QScrollArea() self.scrollArea1.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea1.setWidgetResizable(True) self.scrollArea1.setObjectName("scrollArea1") self.btab = QtWidgets.QWidget() self.btab.setGeometry(QtCore.QRect(0, 0, 933, 660)) self.btab.setObjectName("btab") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.btab) self.verticalLayout_4.setObjectName("verticalLayout_4") self.gridLayout = QtWidgets.QGridLayout() self.gridLayout.setObjectName("gridLayout") self.label_2 = QtWidgets.QLabel(self.btab) self.label_2.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_2.setObjectName("label_2") self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1) self.authors = EditWithComplete(self.btab) self.authors.setEditable(True) self.authors.setObjectName("authors") self.gridLayout.addWidget(self.authors, 0, 1, 1, 1) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.auto_author_sort = QtWidgets.QCheckBox(self.btab) self.auto_author_sort.setObjectName("auto_author_sort") self.horizontalLayout_2.addWidget(self.auto_author_sort) self.swap_title_and_author = QtWidgets.QCheckBox(self.btab) self.swap_title_and_author.setObjectName("swap_title_and_author") self.horizontalLayout_2.addWidget(self.swap_title_and_author) self.gridLayout.addLayout(self.horizontalLayout_2, 1, 1, 1, 1) self.label_8 = QtWidgets.QLabel(self.btab) self.label_8.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_8.setObjectName("label_8") self.gridLayout.addWidget(self.label_8, 2, 0, 1, 1) self.author_sort = EnLineEdit(self.btab) self.author_sort.setObjectName("author_sort") self.gridLayout.addWidget(self.author_sort, 2, 1, 1, 1) self.label_6 = QtWidgets.QLabel(self.btab) self.label_6.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_6.setObjectName("label_6") self.gridLayout.addWidget(self.label_6, 3, 0, 1, 1) self.rating = RatingEditor(self.btab) self.rating.setObjectName("rating") self.gridLayout.addWidget(self.rating, 3, 1, 1, 1) self.apply_rating = QtWidgets.QCheckBox(self.btab) self.apply_rating.setObjectName("apply_rating") self.gridLayout.addWidget(self.apply_rating, 3, 2, 1, 1) self.label_3 = QtWidgets.QLabel(self.btab) self.label_3.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_3.setObjectName("label_3") self.gridLayout.addWidget(self.label_3, 4, 0, 1, 1) self.publisher = EditWithComplete(self.btab) self.publisher.setEditable(True) self.publisher.setObjectName("publisher") self.gridLayout.addWidget(self.publisher, 4, 1, 1, 1) self.clear_pub = QtWidgets.QCheckBox(self.btab) self.clear_pub.setObjectName("clear_pub") self.gridLayout.addWidget(self.clear_pub, 4, 2, 1, 1) self.label_4 = QtWidgets.QLabel(self.btab) self.label_4.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_4.setObjectName("label_4") self.gridLayout.addWidget(self.label_4, 5, 0, 1, 1) self.tags = EditWithComplete(self.btab) self.tags.setObjectName("tags") self.gridLayout.addWidget(self.tags, 5, 1, 1, 1) self.tag_editor_button = QtWidgets.QToolButton(self.btab) icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap(I("chapters.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.tag_editor_button.setIcon(icon1) self.tag_editor_button.setObjectName("tag_editor_button") self.gridLayout.addWidget(self.tag_editor_button, 5, 2, 1, 1) self.label = QtWidgets.QLabel(self.btab) self.label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label.setObjectName("label") self.gridLayout.addWidget(self.label, 6, 0, 1, 1) self.remove_tags = EditWithComplete(self.btab) self.remove_tags.setObjectName("remove_tags") self.gridLayout.addWidget(self.remove_tags, 6, 1, 1, 1) self.remove_all_tags = QtWidgets.QCheckBox(self.btab) self.remove_all_tags.setObjectName("remove_all_tags") self.gridLayout.addWidget(self.remove_all_tags, 6, 2, 1, 1) self.label_7 = QtWidgets.QLabel(self.btab) self.label_7.setTextFormat(QtCore.Qt.PlainText) self.label_7.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_7.setObjectName("label_7") self.gridLayout.addWidget(self.label_7, 7, 0, 1, 1) self.series = EditWithComplete(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.series.sizePolicy().hasHeightForWidth()) self.series.setSizePolicy(sizePolicy) self.series.setEditable(True) self.series.setInsertPolicy(QtWidgets.QComboBox.InsertAlphabetically) self.series.setSizeAdjustPolicy(QtWidgets.QComboBox.AdjustToMinimumContentsLengthWithIcon) self.series.setMinimumContentsLength(40) self.series.setObjectName("series") self.gridLayout.addWidget(self.series, 7, 1, 1, 1) self.clear_series = QtWidgets.QCheckBox(self.btab) self.clear_series.setObjectName("clear_series") self.gridLayout.addWidget(self.clear_series, 7, 2, 1, 1) self.HLayout_3 = QtWidgets.QHBoxLayout() self.HLayout_3.setObjectName("HLayout_3") self.autonumber_series = QtWidgets.QCheckBox(self.btab) self.autonumber_series.setEnabled(False) self.autonumber_series.setObjectName("autonumber_series") self.HLayout_3.addWidget(self.autonumber_series) self.series_numbering_restarts = QtWidgets.QCheckBox(self.btab) self.series_numbering_restarts.setEnabled(False) self.series_numbering_restarts.setObjectName("series_numbering_restarts") self.HLayout_3.addWidget(self.series_numbering_restarts) self.series_start_number = QtWidgets.QDoubleSpinBox(self.btab) self.series_start_number.setEnabled(False) self.series_start_number.setMinimum(0.0) self.series_start_number.setMaximum(99000000.0) self.series_start_number.setProperty("value", 1.0) self.series_start_number.setObjectName("series_start_number") self.HLayout_3.addWidget(self.series_start_number) self.series_increment = QtWidgets.QDoubleSpinBox(self.btab) self.series_increment.setEnabled(False) self.series_increment.setMinimum(0.0) self.series_increment.setMaximum(99999.0) self.series_increment.setProperty("value", 1.0) self.series_increment.setObjectName("series_increment") self.HLayout_3.addWidget(self.series_increment) self.gridLayout.addLayout(self.HLayout_3, 8, 1, 1, 1) self.label_10 = QtWidgets.QLabel(self.btab) self.label_10.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_10.setObjectName("label_10") self.gridLayout.addWidget(self.label_10, 9, 0, 1, 1) self.horizontalLayout_5 = QtWidgets.QHBoxLayout() self.horizontalLayout_5.setObjectName("horizontalLayout_5") self.adddate = DateTimeEdit(self.btab) self.adddate.setCalendarPopup(True) self.adddate.setObjectName("adddate") self.horizontalLayout_5.addWidget(self.adddate) self.clear_adddate_button = QtWidgets.QToolButton(self.btab) icon2 = QtGui.QIcon() icon2.addPixmap(QtGui.QPixmap(I("trash.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.clear_adddate_button.setIcon(icon2) self.clear_adddate_button.setObjectName("clear_adddate_button") self.horizontalLayout_5.addWidget(self.clear_adddate_button) self.gridLayout.addLayout(self.horizontalLayout_5, 9, 1, 1, 1) self.apply_adddate = QtWidgets.QCheckBox(self.btab) self.apply_adddate.setObjectName("apply_adddate") self.gridLayout.addWidget(self.apply_adddate, 9, 2, 1, 1) self.label_9 = QtWidgets.QLabel(self.btab) self.label_9.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_9.setObjectName("label_9") self.gridLayout.addWidget(self.label_9, 10, 0, 1, 1) self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.pubdate = DateTimeEdit(self.btab) self.pubdate.setCalendarPopup(True) self.pubdate.setObjectName("pubdate") self.horizontalLayout_4.addWidget(self.pubdate) self.clear_pubdate_button = QtWidgets.QToolButton(self.btab) self.clear_pubdate_button.setIcon(icon2) self.clear_pubdate_button.setObjectName("clear_pubdate_button") self.horizontalLayout_4.addWidget(self.clear_pubdate_button) self.gridLayout.addLayout(self.horizontalLayout_4, 10, 1, 1, 1) self.apply_pubdate = QtWidgets.QCheckBox(self.btab) self.apply_pubdate.setObjectName("apply_pubdate") self.gridLayout.addWidget(self.apply_pubdate, 10, 2, 1, 1) self.label_11 = QtWidgets.QLabel(self.btab) self.label_11.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_11.setObjectName("label_11") self.gridLayout.addWidget(self.label_11, 11, 0, 1, 1) self.languages = LanguagesEdit(self.btab) self.languages.setObjectName("languages") self.gridLayout.addWidget(self.languages, 11, 1, 1, 1) self.clear_languages = QtWidgets.QCheckBox(self.btab) self.clear_languages.setObjectName("clear_languages") self.gridLayout.addWidget(self.clear_languages, 11, 2, 1, 1) self.verticalLayout_4.addLayout(self.gridLayout) spacerItem = QtWidgets.QSpacerItem(17, 13, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.verticalLayout_4.addItem(spacerItem) self.gridLayout_2 = QtWidgets.QGridLayout() self.gridLayout_2.setObjectName("gridLayout_2") self.remove_conversion_settings = QtWidgets.QCheckBox(self.btab) self.remove_conversion_settings.setObjectName("remove_conversion_settings") self.gridLayout_2.addWidget(self.remove_conversion_settings, 0, 0, 1, 2) self.restore_original = QtWidgets.QCheckBox(self.btab) self.restore_original.setObjectName("restore_original") self.gridLayout_2.addWidget(self.restore_original, 0, 2, 1, 1) self.change_title_to_title_case = QtWidgets.QCheckBox(self.btab) self.change_title_to_title_case.setObjectName("change_title_to_title_case") self.gridLayout_2.addWidget(self.change_title_to_title_case, 1, 0, 1, 1) self.casing_algorithm = QtWidgets.QComboBox(self.btab) self.casing_algorithm.setMinimumSize(QtCore.QSize(150, 0)) self.casing_algorithm.setObjectName("casing_algorithm") self.gridLayout_2.addWidget(self.casing_algorithm, 1, 1, 1, 1) self.update_title_sort = QtWidgets.QCheckBox(self.btab) self.update_title_sort.setObjectName("update_title_sort") self.gridLayout_2.addWidget(self.update_title_sort, 1, 2, 1, 1) self.verticalLayout_4.addLayout(self.gridLayout_2) self.read_file_metadata = QtWidgets.QCheckBox(self.btab) self.read_file_metadata.setObjectName("read_file_metadata") self.verticalLayout_4.addWidget(self.read_file_metadata) self.groupBox = QtWidgets.QGroupBox(self.btab) self.groupBox.setObjectName("groupBox") self.horizontalLayout_9 = QtWidgets.QHBoxLayout(self.groupBox) self.horizontalLayout_9.setObjectName("horizontalLayout_9") self.cover_generate = QtWidgets.QRadioButton(self.groupBox) self.cover_generate.setObjectName("cover_generate") self.horizontalLayout_9.addWidget(self.cover_generate) self.cover_remove = QtWidgets.QRadioButton(self.groupBox) self.cover_remove.setObjectName("cover_remove") self.horizontalLayout_9.addWidget(self.cover_remove) self.cover_trim = QtWidgets.QRadioButton(self.groupBox) self.cover_trim.setObjectName("cover_trim") self.horizontalLayout_9.addWidget(self.cover_trim) self.cover_from_fmt = QtWidgets.QRadioButton(self.groupBox) self.cover_from_fmt.setObjectName("cover_from_fmt") self.horizontalLayout_9.addWidget(self.cover_from_fmt) self.cover_clone = QtWidgets.QRadioButton(self.groupBox) self.cover_clone.setObjectName("cover_clone") self.horizontalLayout_9.addWidget(self.cover_clone) self.verticalLayout_4.addWidget(self.groupBox) self.horizontalLayout_3 = QtWidgets.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.compress_cover_images = QtWidgets.QCheckBox(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.compress_cover_images.sizePolicy().hasHeightForWidth()) self.compress_cover_images.setSizePolicy(sizePolicy) self.compress_cover_images.setObjectName("compress_cover_images") self.horizontalLayout_3.addWidget(self.compress_cover_images) self.compress_quality = QtWidgets.QSpinBox(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.compress_quality.sizePolicy().hasHeightForWidth()) self.compress_quality.setSizePolicy(sizePolicy) self.compress_quality.setMinimum(10) self.compress_quality.setMaximum(100) self.compress_quality.setProperty("value", 100) self.compress_quality.setObjectName("compress_quality") self.horizontalLayout_3.addWidget(self.compress_quality) spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_3.addItem(spacerItem1) self.verticalLayout_4.addLayout(self.horizontalLayout_3) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.button_config_cover_gen = QtWidgets.QPushButton(self.btab) self.button_config_cover_gen.setObjectName("button_config_cover_gen") self.horizontalLayout.addWidget(self.button_config_cover_gen) self.comments_button = QtWidgets.QPushButton(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.comments_button.sizePolicy().hasHeightForWidth()) self.comments_button.setSizePolicy(sizePolicy) self.comments_button.setObjectName("comments_button") self.horizontalLayout.addWidget(self.comments_button) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.verticalLayout_4.addLayout(self.horizontalLayout) spacerItem3 = QtWidgets.QSpacerItem(17, 17, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.verticalLayout_4.addItem(spacerItem3) self.scrollArea1.setWidget(self.btab) self.central_widget.addTab(self.scrollArea1, "") self.scrollArea2 = QtWidgets.QScrollArea() self.scrollArea2.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea2.setWidgetResizable(True) self.scrollArea2.setObjectName("scrollArea2") self.tab = QtWidgets.QWidget() self.tab.setGeometry(QtCore.QRect(0, 0, 100, 30)) self.tab.setObjectName("tab") self.scrollArea2.setWidget(self.tab) self.central_widget.addTab(self.scrollArea2, "") self.scrollArea3 = QtWidgets.QScrollArea() self.scrollArea3.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea3.setWidgetResizable(True) self.scrollArea3.setObjectName("scrollArea3") self.tabWidgetPage3 = QtWidgets.QWidget() self.tabWidgetPage3.setGeometry(QtCore.QRect(0, 0, 777, 388)) self.tabWidgetPage3.setObjectName("tabWidgetPage3") self.vargrid = QtWidgets.QGridLayout(self.tabWidgetPage3) self.vargrid.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) self.vargrid.setObjectName("vargrid") self.s_r_heading = QtWidgets.QLabel(self.tabWidgetPage3) self.s_r_heading.setWordWrap(True) self.s_r_heading.setOpenExternalLinks(True) self.s_r_heading.setObjectName("s_r_heading") self.vargrid.addWidget(self.s_r_heading, 0, 0, 1, 4) self.filler = QtWidgets.QLabel(self.tabWidgetPage3) self.filler.setText("") self.filler.setObjectName("filler") self.vargrid.addWidget(self.filler, 1, 0, 1, 1) self.line = QtWidgets.QFrame(self.tabWidgetPage3) self.line.setFrameShape(QtWidgets.QFrame.HLine) self.line.setFrameShadow(QtWidgets.QFrame.Sunken) self.line.setObjectName("line") self.vargrid.addWidget(self.line, 2, 0, 1, 3) self.xlabel_22 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_22.setObjectName("xlabel_22") self.vargrid.addWidget(self.xlabel_22, 3, 0, 1, 1) self.query_field = QtWidgets.QComboBox(self.tabWidgetPage3) self.query_field.setObjectName("query_field") self.vargrid.addWidget(self.query_field, 3, 1, 1, 1) self.horizontalLayout_6 = QtWidgets.QHBoxLayout() self.horizontalLayout_6.setObjectName("horizontalLayout_6") spacerItem4 = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_6.addItem(spacerItem4) self.save_button = QtWidgets.QPushButton(self.tabWidgetPage3) self.save_button.setObjectName("save_button") self.horizontalLayout_6.addWidget(self.save_button) self.remove_button = QtWidgets.QPushButton(self.tabWidgetPage3) self.remove_button.setObjectName("remove_button") self.horizontalLayout_6.addWidget(self.remove_button) spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_6.addItem(spacerItem5) self.vargrid.addLayout(self.horizontalLayout_6, 3, 2, 1, 1) self.xlabel_21 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_21.setObjectName("xlabel_21") self.vargrid.addWidget(self.xlabel_21, 4, 0, 1, 1) self.search_field = QtWidgets.QComboBox(self.tabWidgetPage3) self.search_field.setObjectName("search_field") self.vargrid.addWidget(self.search_field, 4, 1, 1, 1) self.HLayout_4 = QtWidgets.QHBoxLayout() self.HLayout_4.setObjectName("HLayout_4") self.xlabel_24 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_24.setObjectName("xlabel_24") self.HLayout_4.addWidget(self.xlabel_24) self.search_mode = QtWidgets.QComboBox(self.tabWidgetPage3) self.search_mode.setObjectName("search_mode") self.HLayout_4.addWidget(self.search_mode) spacerItem6 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.HLayout_4.addItem(spacerItem6) self.vargrid.addLayout(self.HLayout_4, 4, 2, 1, 1) self.s_r_src_ident_label = QtWidgets.QLabel(self.tabWidgetPage3) self.s_r_src_ident_label.setObjectName("s_r_src_ident_label") self.vargrid.addWidget(self.s_r_src_ident_label, 5, 0, 1, 1) self.s_r_src_ident = QtWidgets.QComboBox(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.s_r_src_ident.sizePolicy().hasHeightForWidth()) self.s_r_src_ident.setSizePolicy(sizePolicy) self.s_r_src_ident.setObjectName("s_r_src_ident") self.vargrid.addWidget(self.s_r_src_ident, 5, 1, 1, 1) self.template_label = QtWidgets.QLabel(self.tabWidgetPage3) self.template_label.setObjectName("template_label") self.vargrid.addWidget(self.template_label, 5, 0, 1, 1) self.s_r_template = HistoryLineEdit(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.s_r_template.sizePolicy().hasHeightForWidth()) self.s_r_template.setSizePolicy(sizePolicy) self.s_r_template.setObjectName("s_r_template") self.vargrid.addWidget(self.s_r_template, 5, 1, 1, 1) self.xlabel_2 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_2.setObjectName("xlabel_2") self.vargrid.addWidget(self.xlabel_2, 6, 0, 1, 1) self.search_for = HistoryLineEdit(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.search_for.sizePolicy().hasHeightForWidth()) self.search_for.setSizePolicy(sizePolicy) self.search_for.setObjectName("search_for") self.vargrid.addWidget(self.search_for, 6, 1, 1, 1) self.case_sensitive = QtWidgets.QCheckBox(self.tabWidgetPage3) self.case_sensitive.setChecked(True) self.case_sensitive.setObjectName("case_sensitive") self.vargrid.addWidget(self.case_sensitive, 6, 2, 1, 1) self.xlabel_4 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_4.setObjectName("xlabel_4") self.vargrid.addWidget(self.xlabel_4, 7, 0, 1, 1) self.replace_with = HistoryLineEdit(self.tabWidgetPage3) self.replace_with.setObjectName("replace_with") self.vargrid.addWidget(self.replace_with, 7, 1, 1, 1) self.verticalLayout = QtWidgets.QHBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.label_41 = QtWidgets.QLabel(self.tabWidgetPage3) self.label_41.setObjectName("label_41") self.verticalLayout.addWidget(self.label_41) self.replace_func = QtWidgets.QComboBox(self.tabWidgetPage3) self.replace_func.setObjectName("replace_func") self.verticalLayout.addWidget(self.replace_func) spacerItem7 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.verticalLayout.addItem(spacerItem7) self.vargrid.addLayout(self.verticalLayout, 7, 2, 1, 1) self.destination_field_label = QtWidgets.QLabel(self.tabWidgetPage3) self.destination_field_label.setObjectName("destination_field_label") self.vargrid.addWidget(self.destination_field_label, 8, 0, 1, 1) self.destination_field = QtWidgets.QComboBox(self.tabWidgetPage3) self.destination_field.setObjectName("destination_field") self.vargrid.addWidget(self.destination_field, 8, 1, 1, 1) self.verticalLayout_2 = QtWidgets.QHBoxLayout() self.verticalLayout_2.setObjectName("verticalLayout_2") self.replace_mode_label = QtWidgets.QLabel(self.tabWidgetPage3) self.replace_mode_label.setObjectName("replace_mode_label") self.verticalLayout_2.addWidget(self.replace_mode_label) self.replace_mode = QtWidgets.QComboBox(self.tabWidgetPage3) self.replace_mode.setObjectName("replace_mode") self.verticalLayout_2.addWidget(self.replace_mode) self.comma_separated = QtWidgets.QCheckBox(self.tabWidgetPage3) self.comma_separated.setChecked(True) self.comma_separated.setObjectName("comma_separated") self.verticalLayout_2.addWidget(self.comma_separated) spacerItem8 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.verticalLayout_2.addItem(spacerItem8) self.vargrid.addLayout(self.verticalLayout_2, 8, 2, 1, 1) self.s_r_dst_ident_label = QtWidgets.QLabel(self.tabWidgetPage3) self.s_r_dst_ident_label.setObjectName("s_r_dst_ident_label") self.vargrid.addWidget(self.s_r_dst_ident_label, 9, 0, 1, 1) self.s_r_dst_ident = QtWidgets.QLineEdit(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.s_r_dst_ident.sizePolicy().hasHeightForWidth()) self.s_r_dst_ident.setSizePolicy(sizePolicy) self.s_r_dst_ident.setObjectName("s_r_dst_ident") self.vargrid.addWidget(self.s_r_dst_ident, 9, 1, 1, 1) self.horizontalLayout_21 = QtWidgets.QHBoxLayout() self.horizontalLayout_21.setObjectName("horizontalLayout_21") spacerItem9 = QtWidgets.QSpacerItem(20, 0, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_21.addItem(spacerItem9) self.xlabel_412 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_412.setObjectName("xlabel_412") self.horizontalLayout_21.addWidget(self.xlabel_412) self.results_count = QtWidgets.QSpinBox(self.tabWidgetPage3) self.results_count.setEnabled(True) self.results_count.setMinimum(1) self.results_count.setMaximum(999) self.results_count.setProperty("value", 999) self.results_count.setObjectName("results_count") self.horizontalLayout_21.addWidget(self.results_count) self.xlabel_413 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_413.setObjectName("xlabel_413") self.horizontalLayout_21.addWidget(self.xlabel_413) self.starting_from = QtWidgets.QSpinBox(self.tabWidgetPage3) self.starting_from.setEnabled(True) self.starting_from.setMinimum(1) self.starting_from.setMaximum(999) self.starting_from.setProperty("value", 1) self.starting_from.setObjectName("starting_from") self.horizontalLayout_21.addWidget(self.starting_from) self.xlabel_41 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_41.setObjectName("xlabel_41") self.horizontalLayout_21.addWidget(self.xlabel_41) self.multiple_separator = QtWidgets.QLineEdit(self.tabWidgetPage3) self.multiple_separator.setObjectName("multiple_separator") self.horizontalLayout_21.addWidget(self.multiple_separator) self.vargrid.addLayout(self.horizontalLayout_21, 10, 1, 1, 2) self.scrollArea11 = QtWidgets.QScrollArea(self.tabWidgetPage3) self.scrollArea11.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea11.setWidgetResizable(True) self.scrollArea11.setObjectName("scrollArea11") self.gridLayoutWidget_2 = QtWidgets.QWidget() self.gridLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 745, 70)) self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2") self.testgrid = QtWidgets.QGridLayout(self.gridLayoutWidget_2) self.testgrid.setObjectName("testgrid") self.xlabel_3 = QtWidgets.QLabel(self.gridLayoutWidget_2) self.xlabel_3.setObjectName("xlabel_3") self.testgrid.addWidget(self.xlabel_3, 7, 1, 1, 1) self.xlabel_5 = QtWidgets.QLabel(self.gridLayoutWidget_2) self.xlabel_5.setObjectName("xlabel_5") self.testgrid.addWidget(self.xlabel_5, 7, 2, 1, 1) self.label_31 = QtWidgets.QLabel(self.gridLayoutWidget_2) self.label_31.setObjectName("label_31") self.testgrid.addWidget(self.label_31, 8, 0, 1, 1) self.test_text = HistoryLineEdit(self.gridLayoutWidget_2) self.test_text.setObjectName("test_text") self.testgrid.addWidget(self.test_text, 8, 1, 1, 1) self.test_result = QtWidgets.QLineEdit(self.gridLayoutWidget_2) self.test_result.setObjectName("test_result") self.testgrid.addWidget(self.test_result, 8, 2, 1, 1) spacerItem10 = QtWidgets.QSpacerItem(20, 5, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.testgrid.addItem(spacerItem10, 25, 0, 1, 2) self.scrollArea11.setWidget(self.gridLayoutWidget_2) self.vargrid.addWidget(self.scrollArea11, 11, 0, 1, 4) self.scrollArea3.setWidget(self.tabWidgetPage3) self.central_widget.addTab(self.scrollArea3, "") self.verticalLayout_3.addWidget(self.central_widget) self.horizontalLayout_10 = QtWidgets.QHBoxLayout() self.horizontalLayout_10.setObjectName("horizontalLayout_10") self.refresh_book_list = QtWidgets.QCheckBox(MetadataBulkDialog) self.refresh_book_list.setObjectName("refresh_book_list") self.horizontalLayout_10.addWidget(self.refresh_book_list) spacerItem11 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_10.addItem(spacerItem11) self.button_box = QtWidgets.QDialogButtonBox(MetadataBulkDialog) self.button_box.setOrientation(QtCore.Qt.Horizontal) self.button_box.setStandardButtons(QtWidgets.QDialogButtonBox.Apply|QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok) self.button_box.setObjectName("button_box") self.horizontalLayout_10.addWidget(self.button_box) self.verticalLayout_3.addLayout(self.horizontalLayout_10) self.label_2.setBuddy(self.authors) self.label_8.setBuddy(self.author_sort) self.label_6.setBuddy(self.rating) self.label_3.setBuddy(self.publisher) self.label_4.setBuddy(self.tags) self.label.setBuddy(self.remove_tags) self.label_7.setBuddy(self.series) self.label_10.setBuddy(self.adddate) self.label_9.setBuddy(self.pubdate) self.label_11.setBuddy(self.languages) self.xlabel_22.setBuddy(self.query_field) self.xlabel_21.setBuddy(self.search_field) self.xlabel_24.setBuddy(self.search_mode) self.s_r_src_ident_label.setBuddy(self.s_r_src_ident) self.template_label.setBuddy(self.s_r_template) self.xlabel_2.setBuddy(self.search_for) self.xlabel_4.setBuddy(self.replace_with) self.label_41.setBuddy(self.replace_func) self.destination_field_label.setBuddy(self.destination_field) self.replace_mode_label.setBuddy(self.replace_mode) self.s_r_dst_ident_label.setBuddy(self.s_r_dst_ident) self.xlabel_412.setBuddy(self.results_count) self.xlabel_413.setBuddy(self.starting_from) self.xlabel_41.setBuddy(self.multiple_separator) self.label_31.setBuddy(self.test_text) self.retranslateUi(MetadataBulkDialog) self.central_widget.setCurrentIndex(0) self.button_box.accepted.connect(MetadataBulkDialog.accept) self.button_box.rejected.connect(MetadataBulkDialog.reject) QtCore.QMetaObject.connectSlotsByName(MetadataBulkDialog) MetadataBulkDialog.setTabOrder(self.central_widget, self.authors) MetadataBulkDialog.setTabOrder(self.authors, self.auto_author_sort) MetadataBulkDialog.setTabOrder(self.auto_author_sort, self.swap_title_and_author) MetadataBulkDialog.setTabOrder(self.swap_title_and_author, self.author_sort) MetadataBulkDialog.setTabOrder(self.author_sort, self.rating) MetadataBulkDialog.setTabOrder(self.rating, self.apply_rating) MetadataBulkDialog.setTabOrder(self.apply_rating, self.publisher) MetadataBulkDialog.setTabOrder(self.publisher, self.clear_pub) MetadataBulkDialog.setTabOrder(self.clear_pub, self.tags) MetadataBulkDialog.setTabOrder(self.tags, self.tag_editor_button) MetadataBulkDialog.setTabOrder(self.tag_editor_button, self.remove_tags) MetadataBulkDialog.setTabOrder(self.remove_tags, self.remove_all_tags) MetadataBulkDialog.setTabOrder(self.remove_all_tags, self.series) MetadataBulkDialog.setTabOrder(self.series, self.clear_series) MetadataBulkDialog.setTabOrder(self.clear_series, self.autonumber_series) MetadataBulkDialog.setTabOrder(self.autonumber_series, self.series_numbering_restarts) MetadataBulkDialog.setTabOrder(self.series_numbering_restarts, self.series_start_number) MetadataBulkDialog.setTabOrder(self.series_start_number, self.series_increment) MetadataBulkDialog.setTabOrder(self.series_increment, self.adddate) MetadataBulkDialog.setTabOrder(self.adddate, self.clear_adddate_button) MetadataBulkDialog.setTabOrder(self.clear_adddate_button, self.apply_adddate) MetadataBulkDialog.setTabOrder(self.apply_adddate, self.pubdate) MetadataBulkDialog.setTabOrder(self.pubdate, self.clear_pubdate_button) MetadataBulkDialog.setTabOrder(self.clear_pubdate_button, self.apply_pubdate) MetadataBulkDialog.setTabOrder(self.apply_pubdate, self.languages) MetadataBulkDialog.setTabOrder(self.languages, self.clear_languages) MetadataBulkDialog.setTabOrder(self.clear_languages, self.remove_conversion_settings) MetadataBulkDialog.setTabOrder(self.remove_conversion_settings, self.restore_original) MetadataBulkDialog.setTabOrder(self.restore_original, self.change_title_to_title_case) MetadataBulkDialog.setTabOrder(self.change_title_to_title_case, self.casing_algorithm) MetadataBulkDialog.setTabOrder(self.casing_algorithm, self.cover_generate) MetadataBulkDialog.setTabOrder(self.cover_generate, self.cover_remove) MetadataBulkDialog.setTabOrder(self.cover_remove, self.cover_trim) MetadataBulkDialog.setTabOrder(self.cover_trim, self.cover_from_fmt) MetadataBulkDialog.setTabOrder(self.cover_from_fmt, self.cover_clone) MetadataBulkDialog.setTabOrder(self.cover_clone, self.button_config_cover_gen) MetadataBulkDialog.setTabOrder(self.button_config_cover_gen, self.comments_button) MetadataBulkDialog.setTabOrder(self.comments_button, self.query_field) MetadataBulkDialog.setTabOrder(self.query_field, self.save_button) MetadataBulkDialog.setTabOrder(self.save_button, self.remove_button) MetadataBulkDialog.setTabOrder(self.remove_button, self.search_field) MetadataBulkDialog.setTabOrder(self.search_field, self.search_mode) MetadataBulkDialog.setTabOrder(self.search_mode, self.s_r_src_ident) MetadataBulkDialog.setTabOrder(self.s_r_src_ident, self.s_r_template) MetadataBulkDialog.setTabOrder(self.s_r_template, self.search_for) MetadataBulkDialog.setTabOrder(self.search_for, self.case_sensitive) MetadataBulkDialog.setTabOrder(self.case_sensitive, self.replace_with) MetadataBulkDialog.setTabOrder(self.replace_with, self.replace_func) MetadataBulkDialog.setTabOrder(self.replace_func, self.destination_field) MetadataBulkDialog.setTabOrder(self.destination_field, self.replace_mode) MetadataBulkDialog.setTabOrder(self.replace_mode, self.comma_separated) MetadataBulkDialog.setTabOrder(self.comma_separated, self.s_r_dst_ident) MetadataBulkDialog.setTabOrder(self.s_r_dst_ident, self.results_count) MetadataBulkDialog.setTabOrder(self.results_count, self.starting_from) MetadataBulkDialog.setTabOrder(self.starting_from, self.multiple_separator) MetadataBulkDialog.setTabOrder(self.multiple_separator, self.scrollArea11) MetadataBulkDialog.setTabOrder(self.scrollArea11, self.test_text) MetadataBulkDialog.setTabOrder(self.test_text, self.test_result) MetadataBulkDialog.setTabOrder(self.test_result, self.refresh_book_list)
def __init__(self, parent, format_): DateTimeEditBase.__init__(self, parent) self.setFrame(False) if format_ == 'iso': format_ = internal_iso_format_string() self.setDisplayFormat(format_)
class Ui_MetadataBulkDialog(object): def setupUi(self, MetadataBulkDialog): MetadataBulkDialog.setObjectName("MetadataBulkDialog") MetadataBulkDialog.resize(955, 740) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(I("edit_input.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off) MetadataBulkDialog.setWindowIcon(icon) self.verticalLayout_3 = QtWidgets.QVBoxLayout(MetadataBulkDialog) self.verticalLayout_3.setObjectName("verticalLayout_3") self.central_widget = QtWidgets.QTabWidget(MetadataBulkDialog) self.central_widget.setObjectName("central_widget") self.scrollArea1 = QtWidgets.QScrollArea() self.scrollArea1.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea1.setWidgetResizable(True) self.scrollArea1.setObjectName("scrollArea1") self.btab = QtWidgets.QWidget() self.btab.setGeometry(QtCore.QRect(0, 0, 933, 660)) self.btab.setObjectName("btab") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.btab) self.verticalLayout_4.setObjectName("verticalLayout_4") self.gridLayout = QtWidgets.QGridLayout() self.gridLayout.setObjectName("gridLayout") self.label_2 = QtWidgets.QLabel(self.btab) self.label_2.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_2.setObjectName("label_2") self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1) self.authors = EditWithComplete(self.btab) self.authors.setEditable(True) self.authors.setObjectName("authors") self.gridLayout.addWidget(self.authors, 0, 1, 1, 1) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.auto_author_sort = QtWidgets.QCheckBox(self.btab) self.auto_author_sort.setObjectName("auto_author_sort") self.horizontalLayout_2.addWidget(self.auto_author_sort) self.swap_title_and_author = QtWidgets.QCheckBox(self.btab) self.swap_title_and_author.setObjectName("swap_title_and_author") self.horizontalLayout_2.addWidget(self.swap_title_and_author) self.gridLayout.addLayout(self.horizontalLayout_2, 1, 1, 1, 1) self.label_8 = QtWidgets.QLabel(self.btab) self.label_8.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_8.setObjectName("label_8") self.gridLayout.addWidget(self.label_8, 2, 0, 1, 1) self.author_sort = EnLineEdit(self.btab) self.author_sort.setObjectName("author_sort") self.gridLayout.addWidget(self.author_sort, 2, 1, 1, 1) self.label_6 = QtWidgets.QLabel(self.btab) self.label_6.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_6.setObjectName("label_6") self.gridLayout.addWidget(self.label_6, 3, 0, 1, 1) self.rating = RatingEditor(self.btab) self.rating.setObjectName("rating") self.gridLayout.addWidget(self.rating, 3, 1, 1, 1) self.apply_rating = QtWidgets.QCheckBox(self.btab) self.apply_rating.setObjectName("apply_rating") self.gridLayout.addWidget(self.apply_rating, 3, 2, 1, 1) self.label_3 = QtWidgets.QLabel(self.btab) self.label_3.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_3.setObjectName("label_3") self.gridLayout.addWidget(self.label_3, 4, 0, 1, 1) self.publisher = EditWithComplete(self.btab) self.publisher.setEditable(True) self.publisher.setObjectName("publisher") self.gridLayout.addWidget(self.publisher, 4, 1, 1, 1) self.clear_pub = QtWidgets.QCheckBox(self.btab) self.clear_pub.setObjectName("clear_pub") self.gridLayout.addWidget(self.clear_pub, 4, 2, 1, 1) self.label_4 = QtWidgets.QLabel(self.btab) self.label_4.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_4.setObjectName("label_4") self.gridLayout.addWidget(self.label_4, 5, 0, 1, 1) self.tags = EditWithComplete(self.btab) self.tags.setObjectName("tags") self.gridLayout.addWidget(self.tags, 5, 1, 1, 1) self.tag_editor_button = QtWidgets.QToolButton(self.btab) icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap(I("chapters.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.tag_editor_button.setIcon(icon1) self.tag_editor_button.setObjectName("tag_editor_button") self.gridLayout.addWidget(self.tag_editor_button, 5, 2, 1, 1) self.label = QtWidgets.QLabel(self.btab) self.label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label.setObjectName("label") self.gridLayout.addWidget(self.label, 6, 0, 1, 1) self.remove_tags = EditWithComplete(self.btab) self.remove_tags.setObjectName("remove_tags") self.gridLayout.addWidget(self.remove_tags, 6, 1, 1, 1) self.remove_all_tags = QtWidgets.QCheckBox(self.btab) self.remove_all_tags.setObjectName("remove_all_tags") self.gridLayout.addWidget(self.remove_all_tags, 6, 2, 1, 1) self.label_7 = QtWidgets.QLabel(self.btab) self.label_7.setTextFormat(QtCore.Qt.PlainText) self.label_7.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_7.setObjectName("label_7") self.gridLayout.addWidget(self.label_7, 7, 0, 1, 1) self.series = EditWithComplete(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.series.sizePolicy().hasHeightForWidth()) self.series.setSizePolicy(sizePolicy) self.series.setEditable(True) self.series.setInsertPolicy(QtWidgets.QComboBox.InsertAlphabetically) self.series.setSizeAdjustPolicy(QtWidgets.QComboBox.AdjustToMinimumContentsLengthWithIcon) self.series.setMinimumContentsLength(40) self.series.setObjectName("series") self.gridLayout.addWidget(self.series, 7, 1, 1, 1) self.clear_series = QtWidgets.QCheckBox(self.btab) self.clear_series.setObjectName("clear_series") self.gridLayout.addWidget(self.clear_series, 7, 2, 1, 1) self.HLayout_3 = QtWidgets.QHBoxLayout() self.HLayout_3.setObjectName("HLayout_3") self.autonumber_series = QtWidgets.QCheckBox(self.btab) self.autonumber_series.setEnabled(False) self.autonumber_series.setObjectName("autonumber_series") self.HLayout_3.addWidget(self.autonumber_series) self.series_numbering_restarts = QtWidgets.QCheckBox(self.btab) self.series_numbering_restarts.setEnabled(False) self.series_numbering_restarts.setObjectName("series_numbering_restarts") self.HLayout_3.addWidget(self.series_numbering_restarts) self.series_start_number = QtWidgets.QDoubleSpinBox(self.btab) self.series_start_number.setEnabled(False) self.series_start_number.setMinimum(0.0) self.series_start_number.setMaximum(99000000.0) self.series_start_number.setProperty("value", 1.0) self.series_start_number.setObjectName("series_start_number") self.HLayout_3.addWidget(self.series_start_number) self.series_increment = QtWidgets.QDoubleSpinBox(self.btab) self.series_increment.setEnabled(False) self.series_increment.setMinimum(0.0) self.series_increment.setMaximum(99999.0) self.series_increment.setProperty("value", 1.0) self.series_increment.setObjectName("series_increment") self.HLayout_3.addWidget(self.series_increment) self.gridLayout.addLayout(self.HLayout_3, 8, 1, 1, 1) self.label_10 = QtWidgets.QLabel(self.btab) self.label_10.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_10.setObjectName("label_10") self.gridLayout.addWidget(self.label_10, 9, 0, 1, 1) self.horizontalLayout_5 = QtWidgets.QHBoxLayout() self.horizontalLayout_5.setObjectName("horizontalLayout_5") self.adddate = DateTimeEdit(self.btab) self.adddate.setCalendarPopup(True) self.adddate.setObjectName("adddate") self.horizontalLayout_5.addWidget(self.adddate) self.clear_adddate_button = QtWidgets.QToolButton(self.btab) icon2 = QtGui.QIcon() icon2.addPixmap(QtGui.QPixmap(I("trash.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.clear_adddate_button.setIcon(icon2) self.clear_adddate_button.setObjectName("clear_adddate_button") self.horizontalLayout_5.addWidget(self.clear_adddate_button) self.gridLayout.addLayout(self.horizontalLayout_5, 9, 1, 1, 1) self.apply_adddate = QtWidgets.QCheckBox(self.btab) self.apply_adddate.setObjectName("apply_adddate") self.gridLayout.addWidget(self.apply_adddate, 9, 2, 1, 1) self.label_9 = QtWidgets.QLabel(self.btab) self.label_9.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_9.setObjectName("label_9") self.gridLayout.addWidget(self.label_9, 10, 0, 1, 1) self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.pubdate = DateTimeEdit(self.btab) self.pubdate.setCalendarPopup(True) self.pubdate.setObjectName("pubdate") self.horizontalLayout_4.addWidget(self.pubdate) self.clear_pubdate_button = QtWidgets.QToolButton(self.btab) self.clear_pubdate_button.setIcon(icon2) self.clear_pubdate_button.setObjectName("clear_pubdate_button") self.horizontalLayout_4.addWidget(self.clear_pubdate_button) self.gridLayout.addLayout(self.horizontalLayout_4, 10, 1, 1, 1) self.apply_pubdate = QtWidgets.QCheckBox(self.btab) self.apply_pubdate.setObjectName("apply_pubdate") self.gridLayout.addWidget(self.apply_pubdate, 10, 2, 1, 1) self.label_11 = QtWidgets.QLabel(self.btab) self.label_11.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_11.setObjectName("label_11") self.gridLayout.addWidget(self.label_11, 11, 0, 1, 1) self.languages = LanguagesEdit(self.btab) self.languages.setObjectName("languages") self.gridLayout.addWidget(self.languages, 11, 1, 1, 1) self.clear_languages = QtWidgets.QCheckBox(self.btab) self.clear_languages.setObjectName("clear_languages") self.gridLayout.addWidget(self.clear_languages, 11, 2, 1, 1) self.verticalLayout_4.addLayout(self.gridLayout) spacerItem = QtWidgets.QSpacerItem(17, 13, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.verticalLayout_4.addItem(spacerItem) self.gridLayout_2 = QtWidgets.QGridLayout() self.gridLayout_2.setObjectName("gridLayout_2") self.remove_conversion_settings = QtWidgets.QCheckBox(self.btab) self.remove_conversion_settings.setObjectName("remove_conversion_settings") self.gridLayout_2.addWidget(self.remove_conversion_settings, 0, 0, 1, 2) self.restore_original = QtWidgets.QCheckBox(self.btab) self.restore_original.setObjectName("restore_original") self.gridLayout_2.addWidget(self.restore_original, 0, 2, 1, 1) self.change_title_to_title_case = QtWidgets.QCheckBox(self.btab) self.change_title_to_title_case.setObjectName("change_title_to_title_case") self.gridLayout_2.addWidget(self.change_title_to_title_case, 1, 0, 1, 1) self.casing_algorithm = QtWidgets.QComboBox(self.btab) self.casing_algorithm.setMinimumSize(QtCore.QSize(150, 0)) self.casing_algorithm.setObjectName("casing_algorithm") self.gridLayout_2.addWidget(self.casing_algorithm, 1, 1, 1, 1) self.update_title_sort = QtWidgets.QCheckBox(self.btab) self.update_title_sort.setObjectName("update_title_sort") self.gridLayout_2.addWidget(self.update_title_sort, 1, 2, 1, 1) self.verticalLayout_4.addLayout(self.gridLayout_2) self.read_file_metadata = QtWidgets.QCheckBox(self.btab) self.read_file_metadata.setObjectName("read_file_metadata") self.verticalLayout_4.addWidget(self.read_file_metadata) self.groupBox = QtWidgets.QGroupBox(self.btab) self.groupBox.setObjectName("groupBox") self.horizontalLayout_9 = QtWidgets.QHBoxLayout(self.groupBox) self.horizontalLayout_9.setObjectName("horizontalLayout_9") self.cover_generate = QtWidgets.QRadioButton(self.groupBox) self.cover_generate.setObjectName("cover_generate") self.horizontalLayout_9.addWidget(self.cover_generate) self.cover_remove = QtWidgets.QRadioButton(self.groupBox) self.cover_remove.setObjectName("cover_remove") self.horizontalLayout_9.addWidget(self.cover_remove) self.cover_trim = QtWidgets.QRadioButton(self.groupBox) self.cover_trim.setObjectName("cover_trim") self.horizontalLayout_9.addWidget(self.cover_trim) self.cover_from_fmt = QtWidgets.QRadioButton(self.groupBox) self.cover_from_fmt.setObjectName("cover_from_fmt") self.horizontalLayout_9.addWidget(self.cover_from_fmt) self.cover_clone = QtWidgets.QRadioButton(self.groupBox) self.cover_clone.setObjectName("cover_clone") self.horizontalLayout_9.addWidget(self.cover_clone) self.verticalLayout_4.addWidget(self.groupBox) self.horizontalLayout_3 = QtWidgets.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.compress_cover_images = QtWidgets.QCheckBox(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.compress_cover_images.sizePolicy().hasHeightForWidth()) self.compress_cover_images.setSizePolicy(sizePolicy) self.compress_cover_images.setObjectName("compress_cover_images") self.horizontalLayout_3.addWidget(self.compress_cover_images) self.compress_quality = QtWidgets.QSpinBox(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.compress_quality.sizePolicy().hasHeightForWidth()) self.compress_quality.setSizePolicy(sizePolicy) self.compress_quality.setMinimum(10) self.compress_quality.setMaximum(100) self.compress_quality.setProperty("value", 100) self.compress_quality.setObjectName("compress_quality") self.horizontalLayout_3.addWidget(self.compress_quality) spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_3.addItem(spacerItem1) self.verticalLayout_4.addLayout(self.horizontalLayout_3) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.button_config_cover_gen = QtWidgets.QPushButton(self.btab) self.button_config_cover_gen.setObjectName("button_config_cover_gen") self.horizontalLayout.addWidget(self.button_config_cover_gen) self.comments_button = QtWidgets.QPushButton(self.btab) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.comments_button.sizePolicy().hasHeightForWidth()) self.comments_button.setSizePolicy(sizePolicy) self.comments_button.setObjectName("comments_button") self.horizontalLayout.addWidget(self.comments_button) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.verticalLayout_4.addLayout(self.horizontalLayout) spacerItem3 = QtWidgets.QSpacerItem(17, 17, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.verticalLayout_4.addItem(spacerItem3) self.scrollArea1.setWidget(self.btab) self.central_widget.addTab(self.scrollArea1, "") self.scrollArea2 = QtWidgets.QScrollArea() self.scrollArea2.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea2.setWidgetResizable(True) self.scrollArea2.setObjectName("scrollArea2") self.tab = QtWidgets.QWidget() self.tab.setGeometry(QtCore.QRect(0, 0, 100, 30)) self.tab.setObjectName("tab") self.scrollArea2.setWidget(self.tab) self.central_widget.addTab(self.scrollArea2, "") self.scrollArea3 = QtWidgets.QScrollArea() self.scrollArea3.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea3.setWidgetResizable(True) self.scrollArea3.setObjectName("scrollArea3") self.tabWidgetPage3 = QtWidgets.QWidget() self.tabWidgetPage3.setGeometry(QtCore.QRect(0, 0, 777, 388)) self.tabWidgetPage3.setObjectName("tabWidgetPage3") self.vargrid = QtWidgets.QGridLayout(self.tabWidgetPage3) self.vargrid.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) self.vargrid.setObjectName("vargrid") self.s_r_heading = QtWidgets.QLabel(self.tabWidgetPage3) self.s_r_heading.setWordWrap(True) self.s_r_heading.setOpenExternalLinks(True) self.s_r_heading.setObjectName("s_r_heading") self.vargrid.addWidget(self.s_r_heading, 0, 0, 1, 4) self.filler = QtWidgets.QLabel(self.tabWidgetPage3) self.filler.setText("") self.filler.setObjectName("filler") self.vargrid.addWidget(self.filler, 1, 0, 1, 1) self.line = QtWidgets.QFrame(self.tabWidgetPage3) self.line.setFrameShape(QtWidgets.QFrame.HLine) self.line.setFrameShadow(QtWidgets.QFrame.Sunken) self.line.setObjectName("line") self.vargrid.addWidget(self.line, 2, 0, 1, 3) self.xlabel_22 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_22.setObjectName("xlabel_22") self.vargrid.addWidget(self.xlabel_22, 3, 0, 1, 1) self.query_field = QtWidgets.QComboBox(self.tabWidgetPage3) self.query_field.setObjectName("query_field") self.vargrid.addWidget(self.query_field, 3, 1, 1, 1) self.horizontalLayout_6 = QtWidgets.QHBoxLayout() self.horizontalLayout_6.setObjectName("horizontalLayout_6") spacerItem4 = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_6.addItem(spacerItem4) self.save_button = QtWidgets.QPushButton(self.tabWidgetPage3) self.save_button.setObjectName("save_button") self.horizontalLayout_6.addWidget(self.save_button) self.remove_button = QtWidgets.QPushButton(self.tabWidgetPage3) self.remove_button.setObjectName("remove_button") self.horizontalLayout_6.addWidget(self.remove_button) spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_6.addItem(spacerItem5) self.vargrid.addLayout(self.horizontalLayout_6, 3, 2, 1, 1) self.xlabel_21 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_21.setObjectName("xlabel_21") self.vargrid.addWidget(self.xlabel_21, 4, 0, 1, 1) self.search_field = QtWidgets.QComboBox(self.tabWidgetPage3) self.search_field.setObjectName("search_field") self.vargrid.addWidget(self.search_field, 4, 1, 1, 1) self.HLayout_4 = QtWidgets.QHBoxLayout() self.HLayout_4.setObjectName("HLayout_4") self.xlabel_24 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_24.setObjectName("xlabel_24") self.HLayout_4.addWidget(self.xlabel_24) self.search_mode = QtWidgets.QComboBox(self.tabWidgetPage3) self.search_mode.setObjectName("search_mode") self.HLayout_4.addWidget(self.search_mode) spacerItem6 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.HLayout_4.addItem(spacerItem6) self.vargrid.addLayout(self.HLayout_4, 4, 2, 1, 1) self.s_r_src_ident_label = QtWidgets.QLabel(self.tabWidgetPage3) self.s_r_src_ident_label.setObjectName("s_r_src_ident_label") self.vargrid.addWidget(self.s_r_src_ident_label, 5, 0, 1, 1) self.s_r_src_ident = QtWidgets.QComboBox(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.s_r_src_ident.sizePolicy().hasHeightForWidth()) self.s_r_src_ident.setSizePolicy(sizePolicy) self.s_r_src_ident.setObjectName("s_r_src_ident") self.vargrid.addWidget(self.s_r_src_ident, 5, 1, 1, 1) self.template_label = QtWidgets.QLabel(self.tabWidgetPage3) self.template_label.setObjectName("template_label") self.vargrid.addWidget(self.template_label, 5, 0, 1, 1) self.s_r_template = HistoryLineEdit(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.s_r_template.sizePolicy().hasHeightForWidth()) self.s_r_template.setSizePolicy(sizePolicy) self.s_r_template.setObjectName("s_r_template") self.vargrid.addWidget(self.s_r_template, 5, 1, 1, 1) self.xlabel_2 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_2.setObjectName("xlabel_2") self.vargrid.addWidget(self.xlabel_2, 6, 0, 1, 1) self.search_for = HistoryLineEdit(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.search_for.sizePolicy().hasHeightForWidth()) self.search_for.setSizePolicy(sizePolicy) self.search_for.setObjectName("search_for") self.vargrid.addWidget(self.search_for, 6, 1, 1, 1) self.case_sensitive = QtWidgets.QCheckBox(self.tabWidgetPage3) self.case_sensitive.setChecked(True) self.case_sensitive.setObjectName("case_sensitive") self.vargrid.addWidget(self.case_sensitive, 6, 2, 1, 1) self.xlabel_4 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_4.setObjectName("xlabel_4") self.vargrid.addWidget(self.xlabel_4, 7, 0, 1, 1) self.replace_with = HistoryLineEdit(self.tabWidgetPage3) self.replace_with.setObjectName("replace_with") self.vargrid.addWidget(self.replace_with, 7, 1, 1, 1) self.verticalLayout = QtWidgets.QHBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.label_41 = QtWidgets.QLabel(self.tabWidgetPage3) self.label_41.setObjectName("label_41") self.verticalLayout.addWidget(self.label_41) self.replace_func = QtWidgets.QComboBox(self.tabWidgetPage3) self.replace_func.setObjectName("replace_func") self.verticalLayout.addWidget(self.replace_func) spacerItem7 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.verticalLayout.addItem(spacerItem7) self.vargrid.addLayout(self.verticalLayout, 7, 2, 1, 1) self.destination_field_label = QtWidgets.QLabel(self.tabWidgetPage3) self.destination_field_label.setObjectName("destination_field_label") self.vargrid.addWidget(self.destination_field_label, 8, 0, 1, 1) self.destination_field = QtWidgets.QComboBox(self.tabWidgetPage3) self.destination_field.setObjectName("destination_field") self.vargrid.addWidget(self.destination_field, 8, 1, 1, 1) self.verticalLayout_2 = QtWidgets.QHBoxLayout() self.verticalLayout_2.setObjectName("verticalLayout_2") self.replace_mode_label = QtWidgets.QLabel(self.tabWidgetPage3) self.replace_mode_label.setObjectName("replace_mode_label") self.verticalLayout_2.addWidget(self.replace_mode_label) self.replace_mode = QtWidgets.QComboBox(self.tabWidgetPage3) self.replace_mode.setObjectName("replace_mode") self.verticalLayout_2.addWidget(self.replace_mode) self.comma_separated = QtWidgets.QCheckBox(self.tabWidgetPage3) self.comma_separated.setChecked(True) self.comma_separated.setObjectName("comma_separated") self.verticalLayout_2.addWidget(self.comma_separated) spacerItem8 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.verticalLayout_2.addItem(spacerItem8) self.vargrid.addLayout(self.verticalLayout_2, 8, 2, 1, 1) self.s_r_dst_ident_label = QtWidgets.QLabel(self.tabWidgetPage3) self.s_r_dst_ident_label.setObjectName("s_r_dst_ident_label") self.vargrid.addWidget(self.s_r_dst_ident_label, 9, 0, 1, 1) self.s_r_dst_ident = QtWidgets.QLineEdit(self.tabWidgetPage3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.s_r_dst_ident.sizePolicy().hasHeightForWidth()) self.s_r_dst_ident.setSizePolicy(sizePolicy) self.s_r_dst_ident.setObjectName("s_r_dst_ident") self.vargrid.addWidget(self.s_r_dst_ident, 9, 1, 1, 1) self.horizontalLayout_21 = QtWidgets.QHBoxLayout() self.horizontalLayout_21.setObjectName("horizontalLayout_21") spacerItem9 = QtWidgets.QSpacerItem(20, 0, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_21.addItem(spacerItem9) self.xlabel_412 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_412.setObjectName("xlabel_412") self.horizontalLayout_21.addWidget(self.xlabel_412) self.results_count = QtWidgets.QSpinBox(self.tabWidgetPage3) self.results_count.setEnabled(True) self.results_count.setMinimum(1) self.results_count.setMaximum(999) self.results_count.setProperty("value", 999) self.results_count.setObjectName("results_count") self.horizontalLayout_21.addWidget(self.results_count) self.xlabel_413 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_413.setObjectName("xlabel_413") self.horizontalLayout_21.addWidget(self.xlabel_413) self.starting_from = QtWidgets.QSpinBox(self.tabWidgetPage3) self.starting_from.setEnabled(True) self.starting_from.setMinimum(1) self.starting_from.setMaximum(999) self.starting_from.setProperty("value", 1) self.starting_from.setObjectName("starting_from") self.horizontalLayout_21.addWidget(self.starting_from) self.xlabel_41 = QtWidgets.QLabel(self.tabWidgetPage3) self.xlabel_41.setObjectName("xlabel_41") self.horizontalLayout_21.addWidget(self.xlabel_41) self.multiple_separator = QtWidgets.QLineEdit(self.tabWidgetPage3) self.multiple_separator.setObjectName("multiple_separator") self.horizontalLayout_21.addWidget(self.multiple_separator) self.vargrid.addLayout(self.horizontalLayout_21, 10, 1, 1, 2) self.scrollArea11 = QtWidgets.QScrollArea(self.tabWidgetPage3) self.scrollArea11.setFrameShape(QtWidgets.QFrame.NoFrame) self.scrollArea11.setWidgetResizable(True) self.scrollArea11.setObjectName("scrollArea11") self.gridLayoutWidget_2 = QtWidgets.QWidget() self.gridLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 745, 70)) self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2") self.testgrid = QtWidgets.QGridLayout(self.gridLayoutWidget_2) self.testgrid.setObjectName("testgrid") self.xlabel_3 = QtWidgets.QLabel(self.gridLayoutWidget_2) self.xlabel_3.setObjectName("xlabel_3") self.testgrid.addWidget(self.xlabel_3, 7, 1, 1, 1) self.xlabel_5 = QtWidgets.QLabel(self.gridLayoutWidget_2) self.xlabel_5.setObjectName("xlabel_5") self.testgrid.addWidget(self.xlabel_5, 7, 2, 1, 1) self.label_31 = QtWidgets.QLabel(self.gridLayoutWidget_2) self.label_31.setObjectName("label_31") self.testgrid.addWidget(self.label_31, 8, 0, 1, 1) self.test_text = HistoryLineEdit(self.gridLayoutWidget_2) self.test_text.setObjectName("test_text") self.testgrid.addWidget(self.test_text, 8, 1, 1, 1) self.test_result = QtWidgets.QLineEdit(self.gridLayoutWidget_2) self.test_result.setObjectName("test_result") self.testgrid.addWidget(self.test_result, 8, 2, 1, 1) spacerItem10 = QtWidgets.QSpacerItem(20, 5, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.testgrid.addItem(spacerItem10, 25, 0, 1, 2) self.scrollArea11.setWidget(self.gridLayoutWidget_2) self.vargrid.addWidget(self.scrollArea11, 11, 0, 1, 4) self.scrollArea3.setWidget(self.tabWidgetPage3) self.central_widget.addTab(self.scrollArea3, "") self.verticalLayout_3.addWidget(self.central_widget) self.horizontalLayout_10 = QtWidgets.QHBoxLayout() self.horizontalLayout_10.setObjectName("horizontalLayout_10") self.refresh_book_list = QtWidgets.QCheckBox(MetadataBulkDialog) self.refresh_book_list.setObjectName("refresh_book_list") self.horizontalLayout_10.addWidget(self.refresh_book_list) spacerItem11 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_10.addItem(spacerItem11) self.button_box = QtWidgets.QDialogButtonBox(MetadataBulkDialog) self.button_box.setOrientation(QtCore.Qt.Horizontal) self.button_box.setStandardButtons(QtWidgets.QDialogButtonBox.Apply|QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok) self.button_box.setObjectName("button_box") self.horizontalLayout_10.addWidget(self.button_box) self.verticalLayout_3.addLayout(self.horizontalLayout_10) self.label_2.setBuddy(self.authors) self.label_8.setBuddy(self.author_sort) self.label_6.setBuddy(self.rating) self.label_3.setBuddy(self.publisher) self.label_4.setBuddy(self.tags) self.label.setBuddy(self.remove_tags) self.label_7.setBuddy(self.series) self.label_10.setBuddy(self.adddate) self.label_9.setBuddy(self.pubdate) self.label_11.setBuddy(self.languages) self.xlabel_22.setBuddy(self.query_field) self.xlabel_21.setBuddy(self.search_field) self.xlabel_24.setBuddy(self.search_mode) self.s_r_src_ident_label.setBuddy(self.s_r_src_ident) self.template_label.setBuddy(self.s_r_template) self.xlabel_2.setBuddy(self.search_for) self.xlabel_4.setBuddy(self.replace_with) self.label_41.setBuddy(self.replace_func) self.destination_field_label.setBuddy(self.destination_field) self.replace_mode_label.setBuddy(self.replace_mode) self.s_r_dst_ident_label.setBuddy(self.s_r_dst_ident) self.xlabel_412.setBuddy(self.results_count) self.xlabel_413.setBuddy(self.starting_from) self.xlabel_41.setBuddy(self.multiple_separator) self.label_31.setBuddy(self.test_text) self.retranslateUi(MetadataBulkDialog) self.central_widget.setCurrentIndex(0) self.button_box.accepted.connect(MetadataBulkDialog.accept) self.button_box.rejected.connect(MetadataBulkDialog.reject) QtCore.QMetaObject.connectSlotsByName(MetadataBulkDialog) MetadataBulkDialog.setTabOrder(self.central_widget, self.authors) MetadataBulkDialog.setTabOrder(self.authors, self.auto_author_sort) MetadataBulkDialog.setTabOrder(self.auto_author_sort, self.swap_title_and_author) MetadataBulkDialog.setTabOrder(self.swap_title_and_author, self.author_sort) MetadataBulkDialog.setTabOrder(self.author_sort, self.rating) MetadataBulkDialog.setTabOrder(self.rating, self.apply_rating) MetadataBulkDialog.setTabOrder(self.apply_rating, self.publisher) MetadataBulkDialog.setTabOrder(self.publisher, self.clear_pub) MetadataBulkDialog.setTabOrder(self.clear_pub, self.tags) MetadataBulkDialog.setTabOrder(self.tags, self.tag_editor_button) MetadataBulkDialog.setTabOrder(self.tag_editor_button, self.remove_tags) MetadataBulkDialog.setTabOrder(self.remove_tags, self.remove_all_tags) MetadataBulkDialog.setTabOrder(self.remove_all_tags, self.series) MetadataBulkDialog.setTabOrder(self.series, self.clear_series) MetadataBulkDialog.setTabOrder(self.clear_series, self.autonumber_series) MetadataBulkDialog.setTabOrder(self.autonumber_series, self.series_numbering_restarts) MetadataBulkDialog.setTabOrder(self.series_numbering_restarts, self.series_start_number) MetadataBulkDialog.setTabOrder(self.series_start_number, self.series_increment) MetadataBulkDialog.setTabOrder(self.series_increment, self.adddate) MetadataBulkDialog.setTabOrder(self.adddate, self.clear_adddate_button) MetadataBulkDialog.setTabOrder(self.clear_adddate_button, self.apply_adddate) MetadataBulkDialog.setTabOrder(self.apply_adddate, self.pubdate) MetadataBulkDialog.setTabOrder(self.pubdate, self.clear_pubdate_button) MetadataBulkDialog.setTabOrder(self.clear_pubdate_button, self.apply_pubdate) MetadataBulkDialog.setTabOrder(self.apply_pubdate, self.languages) MetadataBulkDialog.setTabOrder(self.languages, self.clear_languages) MetadataBulkDialog.setTabOrder(self.clear_languages, self.remove_conversion_settings) MetadataBulkDialog.setTabOrder(self.remove_conversion_settings, self.restore_original) MetadataBulkDialog.setTabOrder(self.restore_original, self.change_title_to_title_case) MetadataBulkDialog.setTabOrder(self.change_title_to_title_case, self.casing_algorithm) MetadataBulkDialog.setTabOrder(self.casing_algorithm, self.cover_generate) MetadataBulkDialog.setTabOrder(self.cover_generate, self.cover_remove) MetadataBulkDialog.setTabOrder(self.cover_remove, self.cover_trim) MetadataBulkDialog.setTabOrder(self.cover_trim, self.cover_from_fmt) MetadataBulkDialog.setTabOrder(self.cover_from_fmt, self.cover_clone) MetadataBulkDialog.setTabOrder(self.cover_clone, self.button_config_cover_gen) MetadataBulkDialog.setTabOrder(self.button_config_cover_gen, self.comments_button) MetadataBulkDialog.setTabOrder(self.comments_button, self.query_field) MetadataBulkDialog.setTabOrder(self.query_field, self.save_button) MetadataBulkDialog.setTabOrder(self.save_button, self.remove_button) MetadataBulkDialog.setTabOrder(self.remove_button, self.search_field) MetadataBulkDialog.setTabOrder(self.search_field, self.search_mode) MetadataBulkDialog.setTabOrder(self.search_mode, self.s_r_src_ident) MetadataBulkDialog.setTabOrder(self.s_r_src_ident, self.s_r_template) MetadataBulkDialog.setTabOrder(self.s_r_template, self.search_for) MetadataBulkDialog.setTabOrder(self.search_for, self.case_sensitive) MetadataBulkDialog.setTabOrder(self.case_sensitive, self.replace_with) MetadataBulkDialog.setTabOrder(self.replace_with, self.replace_func) MetadataBulkDialog.setTabOrder(self.replace_func, self.destination_field) MetadataBulkDialog.setTabOrder(self.destination_field, self.replace_mode) MetadataBulkDialog.setTabOrder(self.replace_mode, self.comma_separated) MetadataBulkDialog.setTabOrder(self.comma_separated, self.s_r_dst_ident) MetadataBulkDialog.setTabOrder(self.s_r_dst_ident, self.results_count) MetadataBulkDialog.setTabOrder(self.results_count, self.starting_from) MetadataBulkDialog.setTabOrder(self.starting_from, self.multiple_separator) MetadataBulkDialog.setTabOrder(self.multiple_separator, self.scrollArea11) MetadataBulkDialog.setTabOrder(self.scrollArea11, self.test_text) MetadataBulkDialog.setTabOrder(self.test_text, self.test_result) MetadataBulkDialog.setTabOrder(self.test_result, self.refresh_book_list) def retranslateUi(self, MetadataBulkDialog): MetadataBulkDialog.setWindowTitle(_("Edit meta information")) self.label_2.setText(_("&Author(s): ")) self.auto_author_sort.setToolTip(_("This will cause the author sort field to be automatically updated\n" " based on the authors field for each selected book. Note that if\n" " you use the control above to set authors in bulk, the author sort\n" " field is updated anyway, regardless of the value of this checkbox.")) self.auto_author_sort.setText(_("A&utomatically set author sort")) self.swap_title_and_author.setText(_("S&wap title and author")) self.label_8.setText(_("Author s&ort: ")) self.author_sort.setToolTip(_("Specify how the author(s) of this book should be sorted. For example Charles Dickens should be sorted as Dickens, Charles.")) self.label_6.setText(_("&Rating:")) self.apply_rating.setText(_("&Apply rating")) self.label_3.setText(_("&Publisher: ")) self.clear_pub.setToolTip(_("If checked, the publisher will be cleared")) self.clear_pub.setText(_("&Clear pub")) self.label_4.setText(_("Add ta&gs: ")) self.tags.setToolTip(_("Tags categorize the book. This is particularly useful while searching. <br><br>They can be any words or phrases, separated by commas.")) self.tag_editor_button.setToolTip(_("Open Tag editor")) self.tag_editor_button.setText(_("Open Tag editor")) self.label.setText(_("&Remove tags:")) self.remove_tags.setToolTip(_("Comma separated list of tags to remove from the books. ")) self.remove_all_tags.setToolTip(_("Check this box to remove all tags from the books.")) self.remove_all_tags.setText(_("Remove &all")) self.label_7.setText(_("Ser&ies:")) self.series.setToolTip(_("List of known series. You can add new series.")) self.series.setWhatsThis(_("List of known series. You can add new series.")) self.clear_series.setToolTip(_("If checked, the series will be cleared")) self.clear_series.setText(_("&Clear series")) self.autonumber_series.setToolTip(_("If not checked, the series number for the books will be set to 1.\n" "If checked, selected books will be automatically numbered, in the order\n" "you selected them. So if you selected Book A and then Book B,\n" "Book A will have series number 1 and Book B series number 2.")) self.autonumber_series.setText(_("&Automatically number books in this series")) self.series_numbering_restarts.setToolTip(_("Series will normally be renumbered from the highest number in the database\n" "for that series. Checking this box will tell calibre to start numbering\n" "from the value in the box")) self.series_numbering_restarts.setText(_("&Force numbers to start with:")) self.series_increment.setToolTip(_("The amount by which to increment the series number for successive books. Only applicable when using force series numbers.")) self.series_increment.setPrefix(_("+ ")) self.label_10.setText(_("&Date:")) self.adddate.setDisplayFormat("d MMM yyyy") self.clear_adddate_button.setText(_("...")) self.apply_adddate.setText(_("A&pply date")) self.label_9.setText(_("P&ublished:")) self.pubdate.setDisplayFormat("MMM yyyy") self.clear_pubdate_button.setToolTip(_("Clear published date")) self.clear_pubdate_button.setText(_("...")) self.apply_pubdate.setText(_("A&pply date")) self.label_11.setText(_("&Languages:")) self.clear_languages.setText(_("Remove &all")) self.remove_conversion_settings.setToolTip(_("Remove stored conversion settings for the selected books.\n" "\n" "Future conversion of these books will use the default settings.")) self.remove_conversion_settings.setText(_("Remove &stored conversion settings for the selected books")) self.restore_original.setToolTip(_("When doing a same format to same format conversion,\n" "for e.g., EPUB to EPUB, calibre saves the original EPUB\n" " as ORIGINAL_EPUB. This option tells calibre to restore\n" " the EPUB from ORIGINAL_EPUB. Useful if you did a bulk\n" " conversion of a large number of books and something went wrong.")) self.restore_original.setText(_("Restore pre conversion &originals, if available")) self.change_title_to_title_case.setToolTip(_("Force the title to be in title case. If both this and swap authors are checked,\n" "title and author are swapped before the title case is set")) self.change_title_to_title_case.setText(_("Change title &case to:")) self.update_title_sort.setToolTip(_("Update title sort based on the current title. This will be applied only after other changes to title.")) self.update_title_sort.setText(_("Update &title sort")) self.read_file_metadata.setToolTip(_("Set the metadata in calibre from the metadata in the e-book files associated with each book. Note that this does not change the cover, for that, use the separate option below.")) self.read_file_metadata.setText(_("Set &metadata (except cover) from the e-book files")) self.groupBox.setTitle(_("Change &cover")) self.cover_generate.setText(_("&Generate default cover")) self.cover_remove.setText(_("&Remove cover")) self.cover_trim.setToolTip(_("Try to automatically detect and remove borders and extra space\n" " from the edges of cover images. This can sometimes remove too\n" " much, so use with care.")) self.cover_trim.setText(_("&Trim cover (DANGEROUS)")) self.cover_from_fmt.setText(_("Set from &e-book files")) self.cover_clone.setToolTip(_("Set the covers of all selected books to be the same\n" "as that of the first selected book.")) self.cover_clone.setText(_("&Clone covers")) self.compress_cover_images.setToolTip(_("<p>Compress cover images, if the quality is set to 100 compression is lossless, otherwise it is lossy")) self.compress_cover_images.setText(_("Co&mpress cover images:")) self.compress_quality.setToolTip(_("<p>Cover image compression quality. If the quality is set to 100 compression is lossless, otherwise it is lossy")) self.button_config_cover_gen.setToolTip(_("Control how the default generated covers are created")) self.button_config_cover_gen.setText(_("Configure co&ver generation")) self.comments_button.setText(_("Set the co&mments for all selected books")) self.central_widget.setTabText(self.central_widget.indexOf(self.scrollArea1), _("&Basic metadata")) self.central_widget.setTabText(self.central_widget.indexOf(self.scrollArea2), _("&Custom metadata")) self.xlabel_22.setText(_("&Load search/replace:")) self.query_field.setToolTip(_("Select saved search/replace to load.")) self.save_button.setToolTip(_("Save current search/replace")) self.save_button.setText(_("Sa&ve")) self.remove_button.setToolTip(_("Delete saved search/replace")) self.remove_button.setText(_("Delete")) self.xlabel_21.setText(_("Search &field:")) self.search_field.setToolTip(_("The name of the field that you want to search")) self.xlabel_24.setText(_("Search &mode:")) self.search_mode.setToolTip(_("Choose whether to use basic text matching or advanced regular expression matching")) self.s_r_src_ident_label.setText(_("&Identifier type:")) self.s_r_src_ident.setToolTip(_("Choose which identifier type to operate upon")) self.template_label.setText(_("&Template:")) self.s_r_template.setToolTip(_("Enter a template to be used as the source for the search/replace")) self.xlabel_2.setText(_("&Search for:")) self.search_for.setToolTip(_("Enter what you are looking for, either plain text or a regular expression, depending on the mode")) self.case_sensitive.setToolTip(_("Check this box if the search string must match exactly upper and lower case. Uncheck it if case is to be ignored")) self.case_sensitive.setText(_("Cas&e sensitive")) self.xlabel_4.setText(_("&Replace with:")) self.replace_with.setToolTip(_("The replacement text. The matched search text will be replaced with this string")) self.label_41.setText(_("&Apply function after replace:")) self.replace_func.setToolTip(_("Specify how the text is to be processed after matching and replacement. In character mode, the entire\n" "field is processed. In regular expression mode, only the matched text is processed")) self.destination_field_label.setText(_("&Destination field:")) self.destination_field.setToolTip(_("The field that the text will be put into after all replacements.\n" "If blank, the source field is used if the field is modifiable")) self.replace_mode_label.setText(_("M&ode:")) self.replace_mode.setToolTip(_("Specify how the text should be copied into the destination.")) self.comma_separated.setToolTip(_("Specifies whether result items should be split into multiple values or\n" "left as single values. This option has the most effect when the source field is\n" "not multiple and the destination field is multiple")) self.comma_separated.setText(_("Split &result")) self.s_r_dst_ident_label.setText(_("Identifier type:")) self.s_r_dst_ident.setToolTip(_("<p>Choose which identifier type to operate upon. When the\n" " source field is something other than \'identifiers\' you can enter\n" " a * if you want to replace the entire set of identifiers with\n" " the result of the search/replace.</p>")) self.xlabel_412.setText(_("For multiple-valued fields, sho&w")) self.xlabel_413.setText(_("val&ues starting at")) self.xlabel_41.setText(_("with values separated b&y")) self.multiple_separator.setToolTip(_("Used when displaying test results to separate values in multiple-valued fields")) self.xlabel_3.setText(_("Test text")) self.xlabel_5.setText(_("Test result")) self.label_31.setText(_("Your &test:")) self.central_widget.setTabText(self.central_widget.indexOf(self.scrollArea3), _("&Search and replace")) self.refresh_book_list.setToolTip(_("If enabled, the book list will be re-sorted and any existing\n" "search or Virtual library will be refreshed after the edit\n" "is completed. This can be slow on large libraries.")) self.refresh_book_list.setText(_("&Refresh book list after edit"))