misc fixes from last py3 merge

This commit is contained in:
Kovid Goyal 2019-08-29 16:54:07 +05:30
parent da5b6f898f
commit 9cf6125f19
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
8 changed files with 27 additions and 23 deletions

View File

@ -21,7 +21,7 @@ from calibre.ebooks.conversion.plumber import Plumber
from calibre.ebooks.conversion.config import sort_formats_by_preference, get_output_formats
from calibre.utils.config import prefs
from calibre.utils.logging import Log
from polyglot.builtins import unicode_type
from polyglot.builtins import unicode_type, native_string_type
class BulkConfig(Config):
@ -45,7 +45,7 @@ class BulkConfig(Config):
'values saved in a previous conversion (if they exist) instead '
'of using the defaults specified in the Preferences'))
self.output_formats.currentIndexChanged[str].connect(self.setup_pipeline)
self.output_formats.currentIndexChanged[native_string_type].connect(self.setup_pipeline)
self.groups.setSpacing(5)
self.groups.activated[(QModelIndex)].connect(self.show_pane)
self.groups.clicked[(QModelIndex)].connect(self.show_pane)

View File

@ -18,7 +18,7 @@ from calibre.constants import iswindows
from calibre.utils.ipc.simple_worker import fork_job, WorkerError
from calibre.ebooks.conversion.search_replace import compile_regular_expression
from calibre.ptempfile import TemporaryFile
from polyglot.builtins import unicode_type, range
from polyglot.builtins import unicode_type, range, native_string_type
class RegexBuilder(QDialog, Ui_RegexBuilder):
@ -42,7 +42,7 @@ class RegexBuilder(QDialog, Ui_RegexBuilder):
self.cancelled = False
self.button_box.accepted.connect(self.accept)
self.regex.textChanged[str].connect(self.regex_valid)
self.regex.textChanged[native_string_type].connect(self.regex_valid)
for src, slot in (('test', 'do'), ('previous', 'goto'), ('next',
'goto')):
getattr(self, src).clicked.connect(getattr(self, '%s_%s'%(slot,

View File

@ -12,7 +12,7 @@ Module to implement the Cover Flow feature
import sys, os, time
from PyQt5.Qt import (QImage, QSizePolicy, QTimer, QDialog, Qt, QSize, QAction,
QStackedLayout, QLabel, QByteArray, pyqtSignal, QKeySequence, QFont)
QStackedLayout, QLabel, pyqtSignal, QKeySequence, QFont)
from calibre import plugins
from calibre.ebooks.metadata import rating_to_stars
@ -242,9 +242,8 @@ class CBDialog(QDialog):
self.setWindowTitle(_('Browse by covers'))
self.layout().addWidget(cover_flow)
geom = gprefs.get('cover_browser_dialog_geometry', bytearray(''))
geom = QByteArray(geom)
if not self.restoreGeometry(geom):
geom = gprefs.get('cover_browser_dialog_geometry', None)
if not geom or not self.restoreGeometry(geom):
h, w = available_height()-60, int(available_width()/1.5)
self.resize(w, h)
self.action_fs_toggle = a = QAction(self)

View File

@ -22,7 +22,7 @@ class Catalog(QDialog, Ui_Dialog):
''' Catalog Dialog builder'''
def __init__(self, parent, dbspec, ids, db):
import re, io
import re
from calibre import prints as info
from PyQt5.uic import compileUi
@ -67,13 +67,14 @@ class Catalog(QDialog, Ui_Dialog):
# Compile the .ui form provided in plugin.zip
if not os.path.exists(compiled_form):
from polyglot.io import PolyglotStringIO
# info('\tCompiling form', form)
buf = io.BytesIO()
buf = PolyglotStringIO()
compileUi(form, buf)
dat = buf.getvalue()
dat = re.compile(r'QtGui.QApplication.translate\(.+?,\s+"(.+?)(?<!\\)",.+?\)',
re.DOTALL).sub(r'_("\1")', dat)
open(compiled_form, 'wb').write(dat)
open(compiled_form, 'wb').write(dat.encode('utf-8'))
# Import the dynamic PluginWidget() from .py file provided in plugin.zip
try:
@ -181,7 +182,7 @@ class Catalog(QDialog, Ui_Dialog):
When title/format change, invalidate Preset in E-book options tab
'''
cf = unicode_type(self.format.currentText()).lower()
if cf in ['azw3', 'epub', 'mobi'] and hasattr(self.options_widget, 'settings_changed'):
if cf in ('azw3', 'epub', 'mobi') and hasattr(self.options_widget, 'settings_changed'):
self.options_widget.settings_changed("title/format")
@property

View File

@ -39,9 +39,10 @@ class EditAuthorsDialog(QDialog, Ui_EditAuthorsDialog):
try:
self.table_column_widths = \
gprefs.get('manage_authors_table_widths', None)
geom = gprefs.get('manage_authors_dialog_geometry', bytearray(''))
self.restoreGeometry(QByteArray(geom))
except:
geom = gprefs.get('manage_authors_dialog_geometry', None)
if geom:
self.restoreGeometry(QByteArray(geom))
except Exception:
pass
self.buttonBox.button(QDialogButtonBox.Ok).setText(_('&OK'))
@ -159,7 +160,7 @@ class EditAuthorsDialog(QDialog, Ui_EditAuthorsDialog):
# have a width. Assume 25. Not a problem because user-changed column
# widths will be remembered
w = self.table.width() - 25 - self.table.verticalHeader().width()
w /= self.table.columnCount()
w //= self.table.columnCount()
for c in range(0, self.table.columnCount()):
self.table.setColumnWidth(c, w)
self.save_state()

View File

@ -58,8 +58,9 @@ class MatchBooks(QDialog, Ui_MatchBooks):
try:
self.books_table_column_widths = \
gprefs.get('match_books_dialog_books_table_widths', None)
geom = gprefs.get('match_books_dialog_geometry', bytearray(''))
self.restoreGeometry(QByteArray(geom))
geom = gprefs.get('match_books_dialog_geometry', None)
if geom:
self.restoreGeometry(QByteArray(geom))
except:
pass

View File

@ -155,8 +155,9 @@ class Quickview(QDialog, Ui_Quickview):
self.books_table_column_widths = \
gprefs.get('quickview_dialog_books_table_widths', None)
if not self.is_pane:
geom = gprefs.get('quickview_dialog_geometry', bytearray(''))
self.restoreGeometry(QByteArray(geom))
geom = gprefs.get('quickview_dialog_geometry', None)
if geom:
self.restoreGeometry(QByteArray(geom))
except:
pass
@ -588,7 +589,7 @@ class Quickview(QDialog, Ui_Quickview):
# have a width. Assume 25. Not a problem because user-changed column
# widths will be remembered
w = self.books_table.width() - 25 - self.books_table.verticalHeader().width()
w /= self.books_table.columnCount()
w //= self.books_table.columnCount()
for c in range(0, self.books_table.columnCount()):
self.books_table.setColumnWidth(c, w)
self.save_state()

View File

@ -643,8 +643,9 @@ class JobsDialog(QDialog, Ui_JobsDialog):
def restore_state(self):
try:
geom = gprefs.get('jobs_dialog_geometry', bytearray(''))
self.restoreGeometry(QByteArray(geom))
geom = gprefs.get('jobs_dialog_geometry', None)
if geom:
self.restoreGeometry(QByteArray(geom))
state = gprefs.get('jobs view column layout3', None)
if state is not None:
self.jobs_view.horizontalHeader().restoreState(QByteArray(state))