From 3b2eafc2c4bc68b1b19ec6e7f2b183aedbc2bd4a Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 11 Apr 2014 12:42:22 +0530 Subject: [PATCH] Port imports --- setup/qt5-migrate.py | 32 +++++++++++++++++++ src/calibre/__init__.py | 2 +- src/calibre/constants.py | 2 +- src/calibre/customize/__init__.py | 4 +-- src/calibre/customize/zipplugin.py | 2 +- src/calibre/db/cache.py | 2 +- src/calibre/devices/apple/driver.py | 2 +- src/calibre/ebooks/__init__.py | 6 ++-- .../ebooks/conversion/plugins/pdf_output.py | 2 +- src/calibre/ebooks/html/to_zip.py | 2 +- src/calibre/ebooks/lrf/html/table_as_image.py | 4 +-- src/calibre/ebooks/oeb/display/webview.py | 2 +- .../ebooks/oeb/iterator/extract_fonts.py | 2 +- src/calibre/ebooks/oeb/polish/check/images.py | 2 +- src/calibre/ebooks/oeb/polish/stats.py | 4 +-- .../ebooks/oeb/transforms/rasterize.py | 16 +++++----- src/calibre/ebooks/oeb/transforms/rescale.py | 2 +- src/calibre/ebooks/pdf/pageoptions.py | 2 +- src/calibre/ebooks/pdf/render/engine.py | 2 +- src/calibre/ebooks/pdf/render/from_html.py | 4 +-- src/calibre/ebooks/pdf/render/gradients.py | 2 +- src/calibre/ebooks/pdf/render/graphics.py | 2 +- src/calibre/ebooks/pdf/render/serialize.py | 2 +- src/calibre/ebooks/pdf/render/test.py | 2 +- src/calibre/ebooks/pdf/writer.py | 4 +-- src/calibre/gui2/__init__.py | 4 +-- src/calibre/gui2/actions/__init__.py | 2 +- src/calibre/gui2/actions/add.py | 2 +- src/calibre/gui2/actions/annotate.py | 2 +- src/calibre/gui2/actions/catalog.py | 2 +- src/calibre/gui2/actions/choose_library.py | 4 +-- src/calibre/gui2/actions/convert.py | 2 +- src/calibre/gui2/actions/copy_to_library.py | 2 +- src/calibre/gui2/actions/delete.py | 2 +- src/calibre/gui2/actions/device.py | 2 +- src/calibre/gui2/actions/edit_metadata.py | 2 +- src/calibre/gui2/actions/fetch_news.py | 2 +- src/calibre/gui2/actions/help.py | 2 +- src/calibre/gui2/actions/mark_books.py | 2 +- src/calibre/gui2/actions/plugin_updates.py | 2 +- src/calibre/gui2/actions/polish.py | 2 +- src/calibre/gui2/actions/preferences.py | 2 +- src/calibre/gui2/actions/show_book_details.py | 2 +- src/calibre/gui2/actions/similar_books.py | 2 +- src/calibre/gui2/actions/sort.py | 2 +- src/calibre/gui2/actions/store.py | 2 +- src/calibre/gui2/actions/toc_edit.py | 2 +- src/calibre/gui2/actions/tweak_epub.py | 2 +- src/calibre/gui2/actions/unpack_book.py | 2 +- src/calibre/gui2/actions/view.py | 2 +- src/calibre/gui2/add.py | 2 +- src/calibre/gui2/add_wizard/__init__.py | 4 +-- src/calibre/gui2/auto_add.py | 2 +- src/calibre/gui2/bars.py | 2 +- src/calibre/gui2/book_details.py | 4 +-- src/calibre/gui2/catalog/catalog_bibtex.py | 2 +- src/calibre/gui2/catalog/catalog_csv_xml.py | 2 +- src/calibre/gui2/catalog/catalog_epub_mobi.py | 2 +- src/calibre/gui2/comments_editor.py | 4 +-- src/calibre/gui2/complete.py | 4 +-- src/calibre/gui2/complete2.py | 4 +-- src/calibre/gui2/convert/__init__.py | 2 +- src/calibre/gui2/convert/bulk.py | 2 +- src/calibre/gui2/convert/font_key.py | 2 +- src/calibre/gui2/convert/heuristics.py | 2 +- src/calibre/gui2/convert/look_and_feel.py | 2 +- src/calibre/gui2/convert/metadata.py | 2 +- src/calibre/gui2/convert/page_setup.py | 2 +- src/calibre/gui2/convert/regex_builder.py | 2 +- .../gui2/convert/search_and_replace.py | 2 +- src/calibre/gui2/convert/single.py | 2 +- src/calibre/gui2/convert/txt_input.py | 2 +- src/calibre/gui2/convert/xpath_wizard.py | 4 +-- src/calibre/gui2/cover_flow.py | 6 ++-- src/calibre/gui2/custom_column_widgets.py | 2 +- src/calibre/gui2/device.py | 2 +- .../gui2/device_drivers/configwidget.py | 2 +- src/calibre/gui2/device_drivers/mtp_config.py | 2 +- .../gui2/device_drivers/mtp_folder_browser.py | 2 +- src/calibre/gui2/dialogs/add_empty_book.py | 2 +- src/calibre/gui2/dialogs/add_from_isbn.py | 2 +- src/calibre/gui2/dialogs/authors_edit.py | 2 +- src/calibre/gui2/dialogs/book_info.py | 4 +-- src/calibre/gui2/dialogs/catalog.py | 4 +-- src/calibre/gui2/dialogs/check_library.py | 2 +- src/calibre/gui2/dialogs/choose_format.py | 2 +- .../gui2/dialogs/choose_format_device.py | 2 +- src/calibre/gui2/dialogs/choose_library.py | 2 +- .../gui2/dialogs/choose_plugin_toolbars.py | 2 +- src/calibre/gui2/dialogs/comicconf.py | 2 +- src/calibre/gui2/dialogs/comments_dialog.py | 2 +- src/calibre/gui2/dialogs/confirm_delete.py | 2 +- .../gui2/dialogs/confirm_delete_location.py | 2 +- src/calibre/gui2/dialogs/conversion_error.py | 2 +- .../dialogs/delete_matching_from_device.py | 2 +- .../gui2/dialogs/device_category_editor.py | 4 +-- src/calibre/gui2/dialogs/drm_error.py | 2 +- src/calibre/gui2/dialogs/duplicates.py | 2 +- .../gui2/dialogs/edit_authors_dialog.py | 2 +- src/calibre/gui2/dialogs/match_books.py | 2 +- src/calibre/gui2/dialogs/message_box.py | 2 +- src/calibre/gui2/dialogs/metadata_bulk.py | 2 +- src/calibre/gui2/dialogs/opml.py | 2 +- src/calibre/gui2/dialogs/password.py | 4 +-- src/calibre/gui2/dialogs/plugin_updater.py | 4 +-- src/calibre/gui2/dialogs/progress.py | 2 +- src/calibre/gui2/dialogs/quickview.py | 2 +- src/calibre/gui2/dialogs/restore_library.py | 2 +- .../gui2/dialogs/saved_search_editor.py | 2 +- src/calibre/gui2/dialogs/scheduler.py | 2 +- src/calibre/gui2/dialogs/search.py | 2 +- src/calibre/gui2/dialogs/select_formats.py | 4 +-- src/calibre/gui2/dialogs/smartdevice.py | 2 +- src/calibre/gui2/dialogs/tag_categories.py | 4 +-- src/calibre/gui2/dialogs/tag_editor.py | 4 +-- src/calibre/gui2/dialogs/tag_list_editor.py | 2 +- src/calibre/gui2/dialogs/template_dialog.py | 2 +- .../gui2/dialogs/template_line_editor.py | 2 +- src/calibre/gui2/dialogs/trim_image.py | 2 +- src/calibre/gui2/dialogs/user_profiles.py | 4 +-- src/calibre/gui2/dnd.py | 2 +- src/calibre/gui2/email.py | 4 +-- src/calibre/gui2/font_family_chooser.py | 2 +- src/calibre/gui2/init.py | 2 +- src/calibre/gui2/job_indicator.py | 4 +-- src/calibre/gui2/jobs.py | 2 +- src/calibre/gui2/keyboard.py | 2 +- src/calibre/gui2/layout.py | 2 +- src/calibre/gui2/library/alternate_views.py | 2 +- src/calibre/gui2/library/caches.py | 2 +- src/calibre/gui2/library/delegates.py | 2 +- src/calibre/gui2/library/models.py | 2 +- src/calibre/gui2/library/views.py | 2 +- src/calibre/gui2/lrf_renderer/bookview.py | 4 +-- src/calibre/gui2/lrf_renderer/document.py | 4 +-- src/calibre/gui2/lrf_renderer/main.py | 6 ++-- src/calibre/gui2/lrf_renderer/text.py | 4 +-- src/calibre/gui2/main.py | 6 ++-- src/calibre/gui2/main_window.py | 2 +- src/calibre/gui2/metadata/basic_widgets.py | 2 +- src/calibre/gui2/metadata/bulk_download.py | 2 +- src/calibre/gui2/metadata/config.py | 2 +- src/calibre/gui2/metadata/diff.py | 2 +- src/calibre/gui2/metadata/pdf_covers.py | 2 +- src/calibre/gui2/metadata/single.py | 2 +- src/calibre/gui2/metadata/single_download.py | 4 +-- src/calibre/gui2/notify.py | 2 +- src/calibre/gui2/preferences/__init__.py | 4 +-- src/calibre/gui2/preferences/adding.py | 4 +-- src/calibre/gui2/preferences/behavior.py | 4 +-- src/calibre/gui2/preferences/coloring.py | 2 +- src/calibre/gui2/preferences/columns.py | 4 +-- src/calibre/gui2/preferences/conversion.py | 4 +-- .../gui2/preferences/create_custom_column.py | 2 +- src/calibre/gui2/preferences/device_debug.py | 2 +- .../gui2/preferences/device_user_defined.py | 2 +- src/calibre/gui2/preferences/emailp.py | 4 +-- src/calibre/gui2/preferences/history.py | 2 +- .../gui2/preferences/ignored_devices.py | 4 +-- src/calibre/gui2/preferences/keyboard.py | 4 +-- src/calibre/gui2/preferences/look_feel.py | 2 +- src/calibre/gui2/preferences/main.py | 2 +- .../gui2/preferences/metadata_sources.py | 4 +-- src/calibre/gui2/preferences/misc.py | 2 +- src/calibre/gui2/preferences/plugboard.py | 4 +-- src/calibre/gui2/preferences/plugins.py | 4 +-- src/calibre/gui2/preferences/save_template.py | 2 +- src/calibre/gui2/preferences/saving.py | 2 +- src/calibre/gui2/preferences/search.py | 2 +- src/calibre/gui2/preferences/sending.py | 2 +- src/calibre/gui2/preferences/server.py | 4 +-- .../gui2/preferences/template_functions.py | 4 +-- .../gui2/preferences/texture_chooser.py | 2 +- src/calibre/gui2/preferences/toolbar.py | 4 +-- src/calibre/gui2/preferences/tweaks.py | 2 +- src/calibre/gui2/proceed.py | 4 +-- src/calibre/gui2/search_box.py | 2 +- src/calibre/gui2/search_restriction_mixin.py | 2 +- src/calibre/gui2/shortcuts.py | 2 +- src/calibre/gui2/store/basic_config.py | 2 +- .../config/chooser/adv_search_builder.py | 2 +- .../store/config/chooser/chooser_dialog.py | 2 +- .../store/config/chooser/chooser_widget.py | 2 +- .../gui2/store/config/chooser/models.py | 2 +- .../gui2/store/config/chooser/results_view.py | 2 +- .../gui2/store/config/search/search_widget.py | 2 +- src/calibre/gui2/store/opensearch_store.py | 2 +- .../gui2/store/search/adv_search_builder.py | 2 +- src/calibre/gui2/store/search/models.py | 2 +- src/calibre/gui2/store/search/results_view.py | 2 +- src/calibre/gui2/store/search/search.py | 2 +- .../gui2/store/stores/allegro_plugin.py | 2 +- .../gui2/store/stores/amazon_ca_plugin.py | 2 +- .../gui2/store/stores/amazon_de_plugin.py | 2 +- .../gui2/store/stores/amazon_es_plugin.py | 2 +- .../gui2/store/stores/amazon_fr_plugin.py | 2 +- .../gui2/store/stores/amazon_it_plugin.py | 2 +- .../gui2/store/stores/amazon_plugin.py | 2 +- .../gui2/store/stores/amazon_uk_plugin.py | 2 +- .../store/stores/baen_webscription_plugin.py | 2 +- .../store/stores/beam_ebooks_de_plugin.py | 2 +- src/calibre/gui2/store/stores/bn_plugin.py | 2 +- src/calibre/gui2/store/stores/cdp_plugin.py | 2 +- .../gui2/store/stores/chitanka_plugin.py | 2 +- .../gui2/store/stores/ebook_nl_plugin.py | 2 +- .../gui2/store/stores/ebookpoint_plugin.py | 2 +- .../gui2/store/stores/ebooks_com_plugin.py | 2 +- .../store/stores/ebookshoppe_uk_plugin.py | 2 +- .../gui2/store/stores/eknigi_plugin.py | 2 +- src/calibre/gui2/store/stores/empik_plugin.py | 2 +- .../gui2/store/stores/google_books_plugin.py | 2 +- src/calibre/gui2/store/stores/kobo_plugin.py | 2 +- src/calibre/gui2/store/stores/koobe_plugin.py | 2 +- .../gui2/store/stores/legimi_plugin.py | 2 +- .../gui2/store/stores/libri_de_plugin.py | 2 +- .../gui2/store/stores/litres_plugin.py | 2 +- .../gui2/store/stores/mills_boon_uk_plugin.py | 2 +- .../stores/mobileread/adv_search_builder.py | 2 +- .../mobileread/cache_progress_dialog.py | 2 +- .../stores/mobileread/cache_update_thread.py | 2 +- .../stores/mobileread/mobileread_plugin.py | 2 +- .../gui2/store/stores/mobileread/models.py | 2 +- .../store/stores/mobileread/store_dialog.py | 2 +- src/calibre/gui2/store/stores/nexto_plugin.py | 2 +- .../gui2/store/stores/nook_uk_plugin.py | 2 +- .../gui2/store/stores/open_books_plugin.py | 2 +- .../gui2/store/stores/ozon_ru_plugin.py | 2 +- .../gui2/store/stores/publio_plugin.py | 2 +- .../gui2/store/stores/rw2010_plugin.py | 2 +- .../gui2/store/stores/smashwords_plugin.py | 2 +- .../gui2/store/stores/sony_au_plugin.py | 2 +- src/calibre/gui2/store/stores/sony_plugin.py | 2 +- .../gui2/store/stores/virtualo_plugin.py | 2 +- .../store/stores/waterstones_uk_plugin.py | 2 +- .../store/stores/weightless_books_plugin.py | 2 +- .../gui2/store/stores/whsmith_uk_plugin.py | 2 +- .../gui2/store/stores/woblink_plugin.py | 2 +- .../gui2/store/stores/wolnelektury_plugin.py | 2 +- src/calibre/gui2/store/web_control.py | 4 +-- src/calibre/gui2/store/web_store_dialog.py | 2 +- src/calibre/gui2/tag_browser/model.py | 2 +- src/calibre/gui2/tag_browser/ui.py | 2 +- src/calibre/gui2/tag_browser/view.py | 2 +- src/calibre/gui2/throbber.py | 4 +-- src/calibre/gui2/toc/location.py | 4 +-- src/calibre/gui2/toc/main.py | 2 +- src/calibre/gui2/tools.py | 2 +- src/calibre/gui2/tweak_book/boss.py | 2 +- src/calibre/gui2/tweak_book/char_select.py | 2 +- src/calibre/gui2/tweak_book/check.py | 4 +-- src/calibre/gui2/tweak_book/diff/highlight.py | 2 +- src/calibre/gui2/tweak_book/diff/main.py | 2 +- src/calibre/gui2/tweak_book/diff/view.py | 2 +- src/calibre/gui2/tweak_book/editor/canvas.py | 2 +- src/calibre/gui2/tweak_book/editor/image.py | 2 +- .../gui2/tweak_book/editor/insert_resource.py | 2 +- .../gui2/tweak_book/editor/smart/html.py | 2 +- .../gui2/tweak_book/editor/syntax/base.py | 2 +- .../gui2/tweak_book/editor/syntax/html.py | 2 +- src/calibre/gui2/tweak_book/editor/text.py | 2 +- src/calibre/gui2/tweak_book/editor/themes.py | 2 +- src/calibre/gui2/tweak_book/editor/widget.py | 2 +- src/calibre/gui2/tweak_book/file_list.py | 2 +- src/calibre/gui2/tweak_book/job.py | 2 +- src/calibre/gui2/tweak_book/main.py | 2 +- src/calibre/gui2/tweak_book/preferences.py | 2 +- src/calibre/gui2/tweak_book/preview.py | 4 +-- src/calibre/gui2/tweak_book/save.py | 2 +- src/calibre/gui2/tweak_book/search.py | 2 +- src/calibre/gui2/tweak_book/toc.py | 2 +- src/calibre/gui2/tweak_book/ui.py | 2 +- src/calibre/gui2/tweak_book/undo.py | 2 +- src/calibre/gui2/tweak_book/widgets.py | 2 +- src/calibre/gui2/ui.py | 2 +- src/calibre/gui2/update.py | 2 +- src/calibre/gui2/viewer/bookmarkmanager.py | 2 +- src/calibre/gui2/viewer/config.py | 2 +- src/calibre/gui2/viewer/documentview.py | 4 +-- src/calibre/gui2/viewer/flip.py | 2 +- src/calibre/gui2/viewer/gestures.py | 2 +- src/calibre/gui2/viewer/image_popup.py | 2 +- src/calibre/gui2/viewer/inspector.py | 4 +-- src/calibre/gui2/viewer/main.py | 2 +- src/calibre/gui2/viewer/printing.py | 6 ++-- src/calibre/gui2/viewer/table_popup.py | 4 +-- src/calibre/gui2/viewer/toc.py | 2 +- src/calibre/gui2/widgets.py | 2 +- src/calibre/gui2/widgets2.py | 2 +- src/calibre/gui2/wizard/__init__.py | 2 +- src/calibre/gui2/wizard/send_email.py | 2 +- src/calibre/library/database2.py | 4 +-- src/calibre/linux.py | 2 +- src/calibre/test_build.py | 4 +-- src/calibre/utils/pyconsole/console.py | 2 +- src/calibre/utils/pyconsole/controller.py | 2 +- src/calibre/utils/pyconsole/formatter.py | 2 +- src/calibre/utils/pyconsole/main.py | 2 +- src/calibre/utils/serve_coffee.py | 8 ++--- src/calibre/utils/wmf/__init__.py | 2 +- src/calibre/web/feeds/recipes/model.py | 2 +- src/calibre/web/jsbrowser/browser.py | 4 +-- 301 files changed, 406 insertions(+), 374 deletions(-) create mode 100644 setup/qt5-migrate.py diff --git a/setup/qt5-migrate.py b/setup/qt5-migrate.py new file mode 100644 index 0000000000..4ae126b7a6 --- /dev/null +++ b/setup/qt5-migrate.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python +# vim:fileencoding=utf-8 +from __future__ import (unicode_literals, division, absolute_import, + print_function) + +__license__ = 'GPL v3' +__copyright__ = '2014, Kovid Goyal ' + +# QT5XX: Delete this file after migration is completed + +import os + +def all_py_files(): + base = os.path.dirname(os.path.dirname(os.path.basename(__file__))) + for dirpath, dirname, filenames in os.walk(os.path.join(base, 'src', 'calibre')): + for n in filenames: + if n.endswith('.py'): + yield os.path.join(dirpath, n) + +def port_imports(): + for path in all_py_files(): + with open(path, 'r+b') as f: + raw = f.read() + nraw = raw.replace(b'from PyQt4.', b'from PyQt5.') + if nraw != raw: + f.seek(0), f.truncate() + f.write(nraw) + + +if __name__ == '__main__': + port_imports() + diff --git a/src/calibre/__init__.py b/src/calibre/__init__.py index 19945de536..32ba98e0c5 100644 --- a/src/calibre/__init__.py +++ b/src/calibre/__init__.py @@ -477,7 +477,7 @@ def detect_ncpus(): try: ans = multiprocessing.cpu_count() except: - from PyQt4.Qt import QThread + from PyQt5.Qt import QThread ans = QThread.idealThreadCount() if ans < 1: ans = 1 diff --git a/src/calibre/constants.py b/src/calibre/constants.py index eab21570cf..8d187215ca 100644 --- a/src/calibre/constants.py +++ b/src/calibre/constants.py @@ -300,6 +300,6 @@ def get_windows_user_locale_name(): def is_modern_webkit(): # Check if we are using QtWebKit >= 2.3 - from PyQt4.QtWebKit import qWebKitMajorVersion + from PyQt5.QtWebKit import qWebKitMajorVersion return qWebKitMajorVersion() >= 537 diff --git a/src/calibre/customize/__init__.py b/src/calibre/customize/__init__.py index 7569dc107e..1e2cca5317 100644 --- a/src/calibre/customize/__init__.py +++ b/src/calibre/customize/__init__.py @@ -128,7 +128,7 @@ class Plugin(object): # {{{ True if the user clicks OK, False otherwise. The changes are automatically applied. ''' - from PyQt4.Qt import QDialog, QDialogButtonBox, QVBoxLayout, \ + from PyQt5.Qt import QDialog, QDialogButtonBox, QVBoxLayout, \ QLabel, Qt, QLineEdit from calibre.gui2 import gprefs @@ -708,7 +708,7 @@ class ViewerPlugin(Plugin): # {{{ it wants to make available. For example:: def load_fonts(): - from PyQt4.Qt import QFontDatabase + from PyQt5.Qt import QFontDatabase font_data = get_resources(['myfont1.ttf', 'myfont2.ttf']) for raw in font_data.itervalues(): QFontDatabase.addApplicationFontFromData(raw) diff --git a/src/calibre/customize/zipplugin.py b/src/calibre/customize/zipplugin.py index f32d0290f4..4d795e8be3 100644 --- a/src/calibre/customize/zipplugin.py +++ b/src/calibre/customize/zipplugin.py @@ -60,7 +60,7 @@ def get_icons(zfp, name_or_list_of_names): If a single path is passed in the return value will be A QIcon. ''' - from PyQt4.Qt import QIcon, QPixmap + from PyQt5.Qt import QIcon, QPixmap names = name_or_list_of_names ans = get_resources(zfp, names) if isinstance(names, basestring): diff --git a/src/calibre/db/cache.py b/src/calibre/db/cache.py index 7660bfeea9..e1ed78e1cd 100644 --- a/src/calibre/db/cache.py +++ b/src/calibre/db/cache.py @@ -642,7 +642,7 @@ class Cache(object): return ret = buf.getvalue() if as_image: - from PyQt4.Qt import QImage + from PyQt5.Qt import QImage i = QImage() i.loadFromData(ret) ret = i diff --git a/src/calibre/devices/apple/driver.py b/src/calibre/devices/apple/driver.py index 3e8e80f9bd..db01da617a 100644 --- a/src/calibre/devices/apple/driver.py +++ b/src/calibre/devices/apple/driver.py @@ -45,7 +45,7 @@ class AppleOpenFeedback(OpenFeedback): self.plugin = plugin def custom_dialog(self, parent): - from PyQt4.Qt import (QDialog, QDialogButtonBox, QIcon, + from PyQt5.Qt import (QDialog, QDialogButtonBox, QIcon, QLabel, QPushButton, QVBoxLayout) class Dialog(QDialog): diff --git a/src/calibre/ebooks/__init__.py b/src/calibre/ebooks/__init__.py index 595364694b..b7c6d7816e 100644 --- a/src/calibre/ebooks/__init__.py +++ b/src/calibre/ebooks/__init__.py @@ -41,7 +41,7 @@ class HTMLRenderer(object): self.exception = self.tb = None def __call__(self, ok): - from PyQt4.Qt import QImage, QPainter, QByteArray, QBuffer + from PyQt5.Qt import QImage, QPainter, QByteArray, QBuffer try: if not ok: raise RuntimeError('Rendering of HTML failed.') @@ -130,8 +130,8 @@ def render_html_svg_workaround(path_to_html, log, width=590, height=750): def render_html(path_to_html, width=590, height=750, as_xhtml=True): - from PyQt4.QtWebKit import QWebPage - from PyQt4.Qt import QEventLoop, QPalette, Qt, QUrl, QSize + from PyQt5.QtWebKit import QWebPage + from PyQt5.Qt import QEventLoop, QPalette, Qt, QUrl, QSize from calibre.gui2 import is_ok_to_use_qt if not is_ok_to_use_qt(): return None diff --git a/src/calibre/ebooks/conversion/plugins/pdf_output.py b/src/calibre/ebooks/conversion/plugins/pdf_output.py index 2779a29861..702c486ef9 100644 --- a/src/calibre/ebooks/conversion/plugins/pdf_output.py +++ b/src/calibre/ebooks/conversion/plugins/pdf_output.py @@ -164,7 +164,7 @@ class PDFOutput(OutputFormatPlugin): ''' from calibre.ebooks.oeb.base import urlnormalize from calibre.utils.fonts.utils import remove_embed_restriction - from PyQt4.Qt import QFontDatabase, QByteArray, QRawFont, QFont + from PyQt5.Qt import QFontDatabase, QByteArray, QRawFont, QFont # First find all @font-face rules and remove them, adding the embedded # fonts to Qt diff --git a/src/calibre/ebooks/html/to_zip.py b/src/calibre/ebooks/html/to_zip.py index 5c6aba010f..c89ec28526 100644 --- a/src/calibre/ebooks/html/to_zip.py +++ b/src/calibre/ebooks/html/to_zip.py @@ -66,7 +66,7 @@ every time you add an HTML file to the library.\ True if the user clicks OK, False otherwise. The changes are automatically applied. ''' - from PyQt4.Qt import (QDialog, QDialogButtonBox, QVBoxLayout, + from PyQt5.Qt import (QDialog, QDialogButtonBox, QVBoxLayout, QLabel, Qt, QLineEdit, QCheckBox) config_dialog = QDialog(parent) diff --git a/src/calibre/ebooks/lrf/html/table_as_image.py b/src/calibre/ebooks/lrf/html/table_as_image.py index 1a58af2900..ef9d43113a 100644 --- a/src/calibre/ebooks/lrf/html/table_as_image.py +++ b/src/calibre/ebooks/lrf/html/table_as_image.py @@ -7,9 +7,9 @@ __docformat__ = 'restructuredtext en' Render HTML tables as images. ''' import os, tempfile, atexit, shutil -from PyQt4.Qt import QUrl, QApplication, QSize, QEventLoop, \ +from PyQt5.Qt import QUrl, QApplication, QSize, QEventLoop, \ QPainter, QImage, QObject, Qt -from PyQt4.QtWebKit import QWebPage +from PyQt5.QtWebKit import QWebPage class HTMLTableRenderer(QObject): diff --git a/src/calibre/ebooks/oeb/display/webview.py b/src/calibre/ebooks/oeb/display/webview.py index 5d517eb723..c6ac427037 100644 --- a/src/calibre/ebooks/oeb/display/webview.py +++ b/src/calibre/ebooks/oeb/display/webview.py @@ -33,7 +33,7 @@ def self_closing_sub(match): def load_html(path, view, codec='utf-8', mime_type=None, pre_load_callback=lambda x:None, path_is_html=False, force_as_html=False): - from PyQt4.Qt import QUrl, QByteArray + from PyQt5.Qt import QUrl, QByteArray if mime_type is None: mime_type = guess_type(path)[0] if not mime_type: diff --git a/src/calibre/ebooks/oeb/iterator/extract_fonts.py b/src/calibre/ebooks/oeb/iterator/extract_fonts.py index 76b8e15d65..132ccb6505 100644 --- a/src/calibre/ebooks/oeb/iterator/extract_fonts.py +++ b/src/calibre/ebooks/oeb/iterator/extract_fonts.py @@ -41,7 +41,7 @@ class FamilyMap(dict): return self.pat.sub(sub, raw) def read_font_fule(self, basedir, css): - from PyQt4.Qt import QFontDatabase + from PyQt5.Qt import QFontDatabase import cssutils cssutils.log.setLevel(logging.ERROR) try: diff --git a/src/calibre/ebooks/oeb/polish/check/images.py b/src/calibre/ebooks/oeb/polish/check/images.py index 4d476f0b09..2f6f0fff2d 100644 --- a/src/calibre/ebooks/oeb/polish/check/images.py +++ b/src/calibre/ebooks/oeb/polish/check/images.py @@ -28,7 +28,7 @@ class CMYKImage(BaseError): level = WARN def __call__(self, container): - from PyQt4.Qt import QImage + from PyQt5.Qt import QImage from calibre.gui2 import pixmap_to_data ext = container.mime_map[self.name].split('/')[-1].upper() if ext == 'JPG': diff --git a/src/calibre/ebooks/oeb/polish/stats.py b/src/calibre/ebooks/oeb/polish/stats.py index 879e664b52..7cebdbedf5 100644 --- a/src/calibre/ebooks/oeb/polish/stats.py +++ b/src/calibre/ebooks/oeb/polish/stats.py @@ -12,9 +12,9 @@ from urllib import unquote from collections import defaultdict from cssutils import CSSParser -from PyQt4.Qt import (pyqtProperty, QString, QEventLoop, Qt, QSize, QTimer, +from PyQt5.Qt import (pyqtProperty, QString, QEventLoop, Qt, QSize, QTimer, pyqtSlot) -from PyQt4.QtWebKit import QWebPage, QWebView +from PyQt5.QtWebKit import QWebPage, QWebView from calibre.constants import iswindows from calibre.ebooks.oeb.display.webview import load_html diff --git a/src/calibre/ebooks/oeb/transforms/rasterize.py b/src/calibre/ebooks/oeb/transforms/rasterize.py index 48788279db..7962eabf30 100644 --- a/src/calibre/ebooks/oeb/transforms/rasterize.py +++ b/src/calibre/ebooks/oeb/transforms/rasterize.py @@ -9,14 +9,14 @@ __copyright__ = '2008, Marshall T. Vandegrift ' import os, re from urlparse import urldefrag from lxml import etree -from PyQt4.QtCore import Qt -from PyQt4.QtCore import QByteArray -from PyQt4.QtCore import QBuffer -from PyQt4.QtCore import QIODevice -from PyQt4.QtGui import QColor -from PyQt4.QtGui import QImage -from PyQt4.QtGui import QPainter -from PyQt4.QtSvg import QSvgRenderer +from PyQt5.QtCore import Qt +from PyQt5.QtCore import QByteArray +from PyQt5.QtCore import QBuffer +from PyQt5.QtCore import QIODevice +from PyQt5.QtGui import QColor +from PyQt5.QtGui import QImage +from PyQt5.QtGui import QPainter +from PyQt5.QtSvg import QSvgRenderer from calibre.ebooks.oeb.base import XHTML, XLINK from calibre.ebooks.oeb.base import SVG_MIME, PNG_MIME from calibre.ebooks.oeb.base import xml2str, xpath diff --git a/src/calibre/ebooks/oeb/transforms/rescale.py b/src/calibre/ebooks/oeb/transforms/rescale.py index 443837ef06..8885766a67 100644 --- a/src/calibre/ebooks/oeb/transforms/rescale.py +++ b/src/calibre/ebooks/oeb/transforms/rescale.py @@ -56,7 +56,7 @@ class RescaleImages(object): # We cannot do an imagemagick conversion of CMYK to RGB as # ImageMagick inverts colors if you just set the colorspace # to rgb. See for example: https://bugs.launchpad.net/bugs/1246710 - from PyQt4.Qt import QImage + from PyQt5.Qt import QImage from calibre.gui2 import pixmap_to_data qimg = QImage() qimg.loadFromData(raw) diff --git a/src/calibre/ebooks/pdf/pageoptions.py b/src/calibre/ebooks/pdf/pageoptions.py index b115ac0f34..f6a0f70cee 100644 --- a/src/calibre/ebooks/pdf/pageoptions.py +++ b/src/calibre/ebooks/pdf/pageoptions.py @@ -3,7 +3,7 @@ __license__ = 'GPL 3' __copyright__ = '2009, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QPrinter +from PyQt5.Qt import QPrinter UNITS = { 'millimeter' : QPrinter.Millimeter, diff --git a/src/calibre/ebooks/pdf/render/engine.py b/src/calibre/ebooks/pdf/render/engine.py index 17b4d255da..ab817ea7a9 100644 --- a/src/calibre/ebooks/pdf/render/engine.py +++ b/src/calibre/ebooks/pdf/render/engine.py @@ -13,7 +13,7 @@ from functools import wraps, partial from future_builtins import map import sip -from PyQt4.Qt import (QPaintEngine, QPaintDevice, Qt, QTransform, QBrush) +from PyQt5.Qt import (QPaintEngine, QPaintDevice, Qt, QTransform, QBrush) from calibre.constants import plugins from calibre.ebooks.pdf.render.serialize import (PDFStream, Path) diff --git a/src/calibre/ebooks/pdf/render/from_html.py b/src/calibre/ebooks/pdf/render/from_html.py index d4711381df..bb02f9ed22 100644 --- a/src/calibre/ebooks/pdf/render/from_html.py +++ b/src/calibre/ebooks/pdf/render/from_html.py @@ -12,9 +12,9 @@ from future_builtins import map from math import floor from collections import defaultdict -from PyQt4.Qt import (QObject, QPainter, Qt, QSize, QString, QTimer, +from PyQt5.Qt import (QObject, QPainter, Qt, QSize, QString, QTimer, pyqtProperty, QEventLoop, QPixmap, QRect, pyqtSlot) -from PyQt4.QtWebKit import QWebView, QWebPage, QWebSettings +from PyQt5.QtWebKit import QWebView, QWebPage, QWebSettings from calibre import fit_image from calibre.constants import iswindows diff --git a/src/calibre/ebooks/pdf/render/gradients.py b/src/calibre/ebooks/pdf/render/gradients.py index 0c6a2485d1..6f3f9300a1 100644 --- a/src/calibre/ebooks/pdf/render/gradients.py +++ b/src/calibre/ebooks/pdf/render/gradients.py @@ -12,7 +12,7 @@ from future_builtins import map from collections import namedtuple import sip -from PyQt4.Qt import QLinearGradient, QPointF +from PyQt5.Qt import QLinearGradient, QPointF from calibre.ebooks.pdf.render.common import Name, Array, Dictionary diff --git a/src/calibre/ebooks/pdf/render/graphics.py b/src/calibre/ebooks/pdf/render/graphics.py index b08b4d9cc9..d533d67986 100644 --- a/src/calibre/ebooks/pdf/render/graphics.py +++ b/src/calibre/ebooks/pdf/render/graphics.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' from math import sqrt from collections import namedtuple -from PyQt4.Qt import ( +from PyQt5.Qt import ( QBrush, QPen, Qt, QPointF, QTransform, QPaintEngine, QImage) from calibre.ebooks.pdf.render.common import ( diff --git a/src/calibre/ebooks/pdf/render/serialize.py b/src/calibre/ebooks/pdf/render/serialize.py index 90dad86ac0..773689c78e 100644 --- a/src/calibre/ebooks/pdf/render/serialize.py +++ b/src/calibre/ebooks/pdf/render/serialize.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' import hashlib from future_builtins import map -from PyQt4.Qt import QBuffer, QByteArray, QImage, Qt, QColor, qRgba, QPainter +from PyQt5.Qt import QBuffer, QByteArray, QImage, Qt, QColor, qRgba, QPainter from calibre.constants import (__appname__, __version__) from calibre.ebooks.pdf.render.common import ( diff --git a/src/calibre/ebooks/pdf/render/test.py b/src/calibre/ebooks/pdf/render/test.py index dcd90fa8b6..555069c94e 100644 --- a/src/calibre/ebooks/pdf/render/test.py +++ b/src/calibre/ebooks/pdf/render/test.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import os -from PyQt4.Qt import (QBrush, QColor, QPoint, QPixmap, QPainterPath, QRectF, +from PyQt5.Qt import (QBrush, QColor, QPoint, QPixmap, QPainterPath, QRectF, QApplication, QPainter, Qt, QImage, QLinearGradient, QPointF, QPen) QBrush, QColor, QPoint, QPixmap, QPainterPath, QRectF, Qt, QPointF diff --git a/src/calibre/ebooks/pdf/writer.py b/src/calibre/ebooks/pdf/writer.py index eaec0e79bc..48f9d9ce41 100644 --- a/src/calibre/ebooks/pdf/writer.py +++ b/src/calibre/ebooks/pdf/writer.py @@ -10,9 +10,9 @@ Write content to PDF. import os, shutil, json -from PyQt4.Qt import (QEventLoop, QObject, QPrinter, QSizeF, Qt, QPainter, +from PyQt5.Qt import (QEventLoop, QObject, QPrinter, QSizeF, Qt, QPainter, QPixmap, QTimer, pyqtProperty, QString, QSize) -from PyQt4.QtWebKit import QWebView, QWebPage, QWebSettings +from PyQt5.QtWebKit import QWebView, QWebPage, QWebSettings from calibre.ptempfile import PersistentTemporaryDirectory from calibre.ebooks.pdf.pageoptions import (unit, paper_size) diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index 075fd6d032..8ee9ab09e2 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -996,7 +996,7 @@ class Application(QApplication): if st is not None: st = unicode(st.objectName()).lower() if (islinux or isbsd) and st in ('windows', 'motif', 'cde'): - from PyQt4.Qt import QStyleFactory + from PyQt5.Qt import QStyleFactory styles = set(map(unicode, QStyleFactory.keys())) if os.environ.get('KDE_FULL_SESSION', False): self.load_calibre_style() @@ -1104,7 +1104,7 @@ def elided_text(text, font=None, width=300, pos='middle'): rendered, replacing characters from the left, middle or right (as per pos) of the string with an ellipsis. Results in a string much closer to the limit than Qt's elidedText().''' - from PyQt4.Qt import QFontMetrics, QApplication + from PyQt5.Qt import QFontMetrics, QApplication fm = QApplication.fontMetrics() if font is None else QFontMetrics(font) delta = 4 ellipsis = u'\u2026' diff --git a/src/calibre/gui2/actions/__init__.py b/src/calibre/gui2/actions/__init__.py index 3dda2292d5..9dc6c6852f 100644 --- a/src/calibre/gui2/actions/__init__.py +++ b/src/calibre/gui2/actions/__init__.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' from functools import partial from zipfile import ZipFile -from PyQt4.Qt import (QToolButton, QAction, QIcon, QObject, QMenu, +from PyQt5.Qt import (QToolButton, QAction, QIcon, QObject, QMenu, QKeySequence) from calibre import prints diff --git a/src/calibre/gui2/actions/add.py b/src/calibre/gui2/actions/add.py index 6ec8406618..bf6afc8838 100644 --- a/src/calibre/gui2/actions/add.py +++ b/src/calibre/gui2/actions/add.py @@ -9,7 +9,7 @@ import os from functools import partial from collections import defaultdict -from PyQt4.Qt import QPixmap, QTimer +from PyQt5.Qt import QPixmap, QTimer from calibre import as_unicode from calibre.gui2 import (error_dialog, choose_files, choose_dir, diff --git a/src/calibre/gui2/actions/annotate.py b/src/calibre/gui2/actions/annotate.py index 8b78dbc321..8ba5c0a253 100644 --- a/src/calibre/gui2/actions/annotate.py +++ b/src/calibre/gui2/actions/annotate.py @@ -6,7 +6,7 @@ __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import pyqtSignal, QModelIndex, QThread, Qt +from PyQt5.Qt import pyqtSignal, QModelIndex, QThread, Qt from calibre.gui2 import error_dialog from calibre.gui2.actions import InterfaceAction diff --git a/src/calibre/gui2/actions/catalog.py b/src/calibre/gui2/actions/catalog.py index fbc8181d8e..ca9b19c2ca 100644 --- a/src/calibre/gui2/actions/catalog.py +++ b/src/calibre/gui2/actions/catalog.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import re, os, shutil, errno -from PyQt4.Qt import QModelIndex +from PyQt5.Qt import QModelIndex from calibre.gui2 import choose_dir, error_dialog, warning_dialog from calibre.gui2.tools import generate_catalog diff --git a/src/calibre/gui2/actions/choose_library.py b/src/calibre/gui2/actions/choose_library.py index 898dc571ba..6ed21ff75a 100644 --- a/src/calibre/gui2/actions/choose_library.py +++ b/src/calibre/gui2/actions/choose_library.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import os, posixpath, weakref from functools import partial -from PyQt4.Qt import (QMenu, Qt, QInputDialog, QToolButton, QDialog, +from PyQt5.Qt import (QMenu, Qt, QInputDialog, QToolButton, QDialog, QDialogButtonBox, QGridLayout, QLabel, QLineEdit, QIcon, QSize, QCoreApplication, pyqtSignal, QVBoxLayout, QTimer) @@ -535,7 +535,7 @@ class ChooseLibraryAction(InterfaceAction): # from calibre.utils.mem import memory # import weakref - # from PyQt4.Qt import QTimer + # from PyQt5.Qt import QTimer # self.dbref = weakref.ref(self.gui.library_view.model().db) # self.before_mem = memory() self.gui.library_moved(loc, allow_rebuild=True) diff --git a/src/calibre/gui2/actions/convert.py b/src/calibre/gui2/actions/convert.py index dd1f26b255..3421d2596b 100644 --- a/src/calibre/gui2/actions/convert.py +++ b/src/calibre/gui2/actions/convert.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import os from functools import partial -from PyQt4.Qt import QModelIndex, QTimer +from PyQt5.Qt import QModelIndex, QTimer from calibre.gui2 import error_dialog, Dispatcher from calibre.gui2.tools import convert_single_ebook, convert_bulk_ebook diff --git a/src/calibre/gui2/actions/copy_to_library.py b/src/calibre/gui2/actions/copy_to_library.py index bd2c6797d1..02ab493826 100644 --- a/src/calibre/gui2/actions/copy_to_library.py +++ b/src/calibre/gui2/actions/copy_to_library.py @@ -11,7 +11,7 @@ from threading import Thread from contextlib import closing from collections import defaultdict -from PyQt4.Qt import ( +from PyQt5.Qt import ( QToolButton, QDialog, QGridLayout, QIcon, QLabel, QDialogButtonBox, QApplication, QFormLayout, QCheckBox, QWidget, QScrollArea, QVBoxLayout, Qt, QListWidgetItem, QListWidget) diff --git a/src/calibre/gui2/actions/delete.py b/src/calibre/gui2/actions/delete.py index 654da7d6a3..01c8465a4a 100644 --- a/src/calibre/gui2/actions/delete.py +++ b/src/calibre/gui2/actions/delete.py @@ -9,7 +9,7 @@ import errno from functools import partial from collections import Counter -from PyQt4.Qt import QObject, QTimer, QModelIndex +from PyQt5.Qt import QObject, QTimer, QModelIndex from calibre.gui2 import error_dialog, question_dialog from calibre.gui2.dialogs.delete_matching_from_device import DeleteMatchingFromDeviceDialog diff --git a/src/calibre/gui2/actions/device.py b/src/calibre/gui2/actions/device.py index 3629d55771..1d928ba7ab 100644 --- a/src/calibre/gui2/actions/device.py +++ b/src/calibre/gui2/actions/device.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import QToolButton, QMenu, pyqtSignal, QIcon, QTimer +from PyQt5.Qt import QToolButton, QMenu, pyqtSignal, QIcon, QTimer from calibre.gui2.actions import InterfaceAction from calibre.utils.smtp import config as email_config diff --git a/src/calibre/gui2/actions/edit_metadata.py b/src/calibre/gui2/actions/edit_metadata.py index 2266a806bc..40054a1264 100644 --- a/src/calibre/gui2/actions/edit_metadata.py +++ b/src/calibre/gui2/actions/edit_metadata.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import os, shutil, copy from functools import partial -from PyQt4.Qt import QMenu, QModelIndex, QTimer, QIcon +from PyQt5.Qt import QMenu, QModelIndex, QTimer, QIcon from calibre.gui2 import error_dialog, Dispatcher, question_dialog, gprefs from calibre.gui2.dialogs.metadata_bulk import MetadataBulkDialog diff --git a/src/calibre/gui2/actions/fetch_news.py b/src/calibre/gui2/actions/fetch_news.py index d80bfdffe7..87597aa4f0 100644 --- a/src/calibre/gui2/actions/fetch_news.py +++ b/src/calibre/gui2/actions/fetch_news.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import gc -from PyQt4.Qt import Qt +from PyQt5.Qt import Qt from calibre.gui2 import Dispatcher from calibre.gui2.tools import fetch_scheduled_recipe diff --git a/src/calibre/gui2/actions/help.py b/src/calibre/gui2/actions/help.py index 7d5851c83d..945ad19423 100644 --- a/src/calibre/gui2/actions/help.py +++ b/src/calibre/gui2/actions/help.py @@ -5,7 +5,7 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre.gui2 import open_url from calibre.gui2.actions import InterfaceAction diff --git a/src/calibre/gui2/actions/mark_books.py b/src/calibre/gui2/actions/mark_books.py index 8b8212089b..9398be95aa 100644 --- a/src/calibre/gui2/actions/mark_books.py +++ b/src/calibre/gui2/actions/mark_books.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' from functools import partial -from PyQt4.Qt import QTimer, QApplication, Qt +from PyQt5.Qt import QTimer, QApplication, Qt from calibre.gui2 import error_dialog from calibre.gui2.actions import InterfaceAction diff --git a/src/calibre/gui2/actions/plugin_updates.py b/src/calibre/gui2/actions/plugin_updates.py index 2e378282bd..32c895e2a1 100644 --- a/src/calibre/gui2/actions/plugin_updates.py +++ b/src/calibre/gui2/actions/plugin_updates.py @@ -7,7 +7,7 @@ __license__ = 'GPL v3' __copyright__ = '2011, Grant Drake ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QApplication, Qt, QIcon +from PyQt5.Qt import QApplication, Qt, QIcon from calibre.gui2.actions import InterfaceAction from calibre.gui2.dialogs.plugin_updater import (PluginUpdaterDialog, FILTER_ALL, FILTER_UPDATE_AVAILABLE) diff --git a/src/calibre/gui2/actions/polish.py b/src/calibre/gui2/actions/polish.py index b77849d882..469e96bdeb 100644 --- a/src/calibre/gui2/actions/polish.py +++ b/src/calibre/gui2/actions/polish.py @@ -12,7 +12,7 @@ from collections import OrderedDict from functools import partial from future_builtins import map -from PyQt4.Qt import (QDialog, QGridLayout, QIcon, QCheckBox, QLabel, QFrame, +from PyQt5.Qt import (QDialog, QGridLayout, QIcon, QCheckBox, QLabel, QFrame, QApplication, QDialogButtonBox, Qt, QSize, QSpacerItem, QSizePolicy, QTimer, QModelIndex, QTextEdit, QInputDialog, QMenu) diff --git a/src/calibre/gui2/actions/preferences.py b/src/calibre/gui2/actions/preferences.py index d692832ec6..f95ff70fa1 100644 --- a/src/calibre/gui2/actions/preferences.py +++ b/src/calibre/gui2/actions/preferences.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import QIcon, Qt +from PyQt5.Qt import QIcon, Qt from calibre.gui2.actions import InterfaceAction from calibre.gui2.preferences.main import Preferences diff --git a/src/calibre/gui2/actions/show_book_details.py b/src/calibre/gui2/actions/show_book_details.py index 75026ae370..6e82c4ffbd 100644 --- a/src/calibre/gui2/actions/show_book_details.py +++ b/src/calibre/gui2/actions/show_book_details.py @@ -5,7 +5,7 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import Qt +from PyQt5.Qt import Qt from calibre.gui2.actions import InterfaceAction from calibre.gui2.dialogs.book_info import BookInfo diff --git a/src/calibre/gui2/actions/similar_books.py b/src/calibre/gui2/actions/similar_books.py index 5ccdd37a92..347e1d1afd 100644 --- a/src/calibre/gui2/actions/similar_books.py +++ b/src/calibre/gui2/actions/similar_books.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import QToolButton +from PyQt5.Qt import QToolButton from calibre.gui2.actions import InterfaceAction diff --git a/src/calibre/gui2/actions/sort.py b/src/calibre/gui2/actions/sort.py index 9a8f25a295..c89b822bbb 100644 --- a/src/calibre/gui2/actions/sort.py +++ b/src/calibre/gui2/actions/sort.py @@ -6,7 +6,7 @@ from __future__ import (unicode_literals, division, absolute_import, __license__ = 'GPL v3' __copyright__ = '2013, Kovid Goyal ' -from PyQt4.Qt import QToolButton, QAction, pyqtSignal, QIcon +from PyQt5.Qt import QToolButton, QAction, pyqtSignal, QIcon from calibre.gui2.actions import InterfaceAction from calibre.utils.icu import sort_key diff --git a/src/calibre/gui2/actions/store.py b/src/calibre/gui2/actions/store.py index cbe44e8f82..0c75c568ac 100644 --- a/src/calibre/gui2/actions/store.py +++ b/src/calibre/gui2/actions/store.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import QIcon, QSize +from PyQt5.Qt import QIcon, QSize from calibre.gui2 import error_dialog from calibre.gui2.actions import InterfaceAction diff --git a/src/calibre/gui2/actions/toc_edit.py b/src/calibre/gui2/actions/toc_edit.py index b22fdaba21..15937b2263 100644 --- a/src/calibre/gui2/actions/toc_edit.py +++ b/src/calibre/gui2/actions/toc_edit.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' from collections import OrderedDict -from PyQt4.Qt import (QTimer, QDialog, QGridLayout, QCheckBox, QLabel, +from PyQt5.Qt import (QTimer, QDialog, QGridLayout, QCheckBox, QLabel, QDialogButtonBox, QIcon) from calibre.gui2 import error_dialog diff --git a/src/calibre/gui2/actions/tweak_epub.py b/src/calibre/gui2/actions/tweak_epub.py index 5a41526ef6..d5de66704b 100755 --- a/src/calibre/gui2/actions/tweak_epub.py +++ b/src/calibre/gui2/actions/tweak_epub.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import time from functools import partial -from PyQt4.Qt import QTimer, QDialog, QDialogButtonBox, QCheckBox, QVBoxLayout, QLabel, Qt +from PyQt5.Qt import QTimer, QDialog, QDialogButtonBox, QCheckBox, QVBoxLayout, QLabel, Qt from calibre.gui2 import error_dialog from calibre.gui2.actions import InterfaceAction diff --git a/src/calibre/gui2/actions/unpack_book.py b/src/calibre/gui2/actions/unpack_book.py index 71407ae52d..9a37a10819 100644 --- a/src/calibre/gui2/actions/unpack_book.py +++ b/src/calibre/gui2/actions/unpack_book.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import os, weakref, shutil -from PyQt4.Qt import (QDialog, QVBoxLayout, QHBoxLayout, QRadioButton, QFrame, +from PyQt5.Qt import (QDialog, QVBoxLayout, QHBoxLayout, QRadioButton, QFrame, QPushButton, QLabel, QGroupBox, QGridLayout, QIcon, QSize, QTimer) from calibre import as_unicode diff --git a/src/calibre/gui2/actions/view.py b/src/calibre/gui2/actions/view.py index 72ea3c75a4..3aff423c50 100644 --- a/src/calibre/gui2/actions/view.py +++ b/src/calibre/gui2/actions/view.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import os, time from functools import partial -from PyQt4.Qt import Qt, QAction, pyqtSignal +from PyQt5.Qt import Qt, QAction, pyqtSignal from calibre.constants import isosx, iswindows from calibre.gui2 import ( diff --git a/src/calibre/gui2/add.py b/src/calibre/gui2/add.py index d849846e02..6b6aa5a27c 100644 --- a/src/calibre/gui2/add.py +++ b/src/calibre/gui2/add.py @@ -5,7 +5,7 @@ import os, shutil, time from Queue import Queue, Empty from functools import partial -from PyQt4.Qt import QThread, QObject, Qt, QProgressDialog, pyqtSignal, QTimer +from PyQt5.Qt import QThread, QObject, Qt, QProgressDialog, pyqtSignal, QTimer from calibre.ptempfile import PersistentTemporaryDirectory from calibre.gui2.dialogs.progress import ProgressDialog diff --git a/src/calibre/gui2/add_wizard/__init__.py b/src/calibre/gui2/add_wizard/__init__.py index 5df3f601a0..6fde2a2ee7 100644 --- a/src/calibre/gui2/add_wizard/__init__.py +++ b/src/calibre/gui2/add_wizard/__init__.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import os -from PyQt4.Qt import QWizard, QWizardPage, QIcon, QPixmap, Qt, QThread, \ +from PyQt5.Qt import QWizard, QWizardPage, QIcon, QPixmap, Qt, QThread, \ pyqtSignal from calibre.gui2 import error_dialog, choose_dir, gprefs @@ -163,7 +163,7 @@ class Wizard(QWizard): # {{{ # Test Wizard {{{ if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication from calibre.library import db app = QApplication([]) w = Wizard(db()) diff --git a/src/calibre/gui2/auto_add.py b/src/calibre/gui2/auto_add.py index fc03c2590a..7e208f4a67 100644 --- a/src/calibre/gui2/auto_add.py +++ b/src/calibre/gui2/auto_add.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' import os, tempfile, shutil, time from threading import Thread, Event -from PyQt4.Qt import (QFileSystemWatcher, QObject, Qt, pyqtSignal, QTimer) +from PyQt5.Qt import (QFileSystemWatcher, QObject, Qt, pyqtSignal, QTimer) from calibre import prints from calibre.ptempfile import PersistentTemporaryDirectory diff --git a/src/calibre/gui2/bars.py b/src/calibre/gui2/bars.py index bdb64c90a8..93ea2a1e96 100644 --- a/src/calibre/gui2/bars.py +++ b/src/calibre/gui2/bars.py @@ -8,7 +8,7 @@ __copyright__ = '2011, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (Qt, QAction, QMenu, QMenuBar, QObject, +from PyQt5.Qt import (Qt, QAction, QMenu, QMenuBar, QObject, QToolBar, QToolButton, QSize) from calibre.gui2.throbber import create_donate_widget diff --git a/src/calibre/gui2/book_details.py b/src/calibre/gui2/book_details.py index 71f5e9f5d6..c6c2641680 100644 --- a/src/calibre/gui2/book_details.py +++ b/src/calibre/gui2/book_details.py @@ -7,11 +7,11 @@ __docformat__ = 'restructuredtext en' from binascii import unhexlify -from PyQt4.Qt import (QPixmap, QSize, QWidget, Qt, pyqtSignal, QUrl, QIcon, +from PyQt5.Qt import (QPixmap, QSize, QWidget, Qt, pyqtSignal, QUrl, QIcon, QPropertyAnimation, QEasingCurve, QApplication, QFontInfo, QAction, QSizePolicy, QPainter, QRect, pyqtProperty, QLayout, QPalette, QMenu, QPen, QColor) -from PyQt4.QtWebKit import QWebView +from PyQt5.QtWebKit import QWebView from calibre import fit_image from calibre.gui2.dnd import (dnd_has_image, dnd_get_image, dnd_get_files, diff --git a/src/calibre/gui2/catalog/catalog_bibtex.py b/src/calibre/gui2/catalog/catalog_bibtex.py index 2d31e4e451..c8053ddd1e 100644 --- a/src/calibre/gui2/catalog/catalog_bibtex.py +++ b/src/calibre/gui2/catalog/catalog_bibtex.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' from calibre.gui2 import gprefs from calibre.gui2.catalog.catalog_bibtex_ui import Ui_Form -from PyQt4.Qt import QWidget, QListWidgetItem +from PyQt5.Qt import QWidget, QListWidgetItem class PluginWidget(QWidget, Ui_Form): diff --git a/src/calibre/gui2/catalog/catalog_csv_xml.py b/src/calibre/gui2/catalog/catalog_csv_xml.py index 6e1c322fe1..bbb765e0c6 100644 --- a/src/calibre/gui2/catalog/catalog_csv_xml.py +++ b/src/calibre/gui2/catalog/catalog_csv_xml.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' from calibre.gui2 import gprefs from calibre.gui2.catalog.catalog_csv_xml_ui import Ui_Form from calibre.library import db as db_ -from PyQt4.Qt import QWidget, QListWidgetItem +from PyQt5.Qt import QWidget, QListWidgetItem class PluginWidget(QWidget, Ui_Form): diff --git a/src/calibre/gui2/catalog/catalog_epub_mobi.py b/src/calibre/gui2/catalog/catalog_epub_mobi.py index 182155f50e..ec85ad74c5 100644 --- a/src/calibre/gui2/catalog/catalog_epub_mobi.py +++ b/src/calibre/gui2/catalog/catalog_epub_mobi.py @@ -16,7 +16,7 @@ from calibre.utils.config import JSONConfig from calibre.utils.icu import sort_key from catalog_epub_mobi_ui import Ui_Form -from PyQt4.Qt import (Qt, QAbstractItemView, QCheckBox, QComboBox, +from PyQt5.Qt import (Qt, QAbstractItemView, QCheckBox, QComboBox, QDoubleSpinBox, QIcon, QInputDialog, QLineEdit, QRadioButton, QSize, QSizePolicy, QTableWidget, QTableWidgetItem, QTextEdit, QToolButton, QUrl, QVBoxLayout, QWidget) diff --git a/src/calibre/gui2/comments_editor.py b/src/calibre/gui2/comments_editor.py index 61974c7595..08015347ac 100644 --- a/src/calibre/gui2/comments_editor.py +++ b/src/calibre/gui2/comments_editor.py @@ -10,12 +10,12 @@ import re, os, json, weakref from lxml import html import sip -from PyQt4.Qt import (QApplication, QFontInfo, QSize, QWidget, QPlainTextEdit, +from PyQt5.Qt import (QApplication, QFontInfo, QSize, QWidget, QPlainTextEdit, QToolBar, QVBoxLayout, QAction, QIcon, Qt, QTabWidget, QUrl, QFormLayout, QSyntaxHighlighter, QColor, QChar, QColorDialog, QMenu, QDialog, QLabel, QHBoxLayout, QKeySequence, QLineEdit, QDialogButtonBox, QPushButton, QCheckBox) -from PyQt4.QtWebKit import QWebView, QWebPage +from PyQt5.QtWebKit import QWebView, QWebPage from calibre.ebooks.chardet import xml_to_unicode from calibre import xml_replace_entities, prepare_string_for_xml diff --git a/src/calibre/gui2/complete.py b/src/calibre/gui2/complete.py index 1c2d567130..85667c7636 100644 --- a/src/calibre/gui2/complete.py +++ b/src/calibre/gui2/complete.py @@ -10,7 +10,7 @@ WARNING: The code in this module is deprecated. Use complete2.py instead. This code remains here for legacy plugin support. ''' -from PyQt4.Qt import (QLineEdit, QAbstractListModel, Qt, +from PyQt5.Qt import (QLineEdit, QAbstractListModel, Qt, QApplication, QCompleter) from calibre.utils.icu import sort_key @@ -199,7 +199,7 @@ class MultiCompleteComboBox(EnComboBox): le.selectAll() if __name__ == '__main__': - from PyQt4.Qt import QDialog, QVBoxLayout + from PyQt5.Qt import QDialog, QVBoxLayout app = QApplication([]) d = QDialog() d.setLayout(QVBoxLayout()) diff --git a/src/calibre/gui2/complete2.py b/src/calibre/gui2/complete2.py index d9eb7f7bc1..e65dcf2b1a 100644 --- a/src/calibre/gui2/complete2.py +++ b/src/calibre/gui2/complete2.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' import weakref import sip -from PyQt4.Qt import (QLineEdit, QAbstractListModel, Qt, pyqtSignal, QObject, +from PyQt5.Qt import (QLineEdit, QAbstractListModel, Qt, pyqtSignal, QObject, QApplication, QListView, QPoint, QModelIndex, QFont, QFontInfo) from calibre.constants import isosx, get_osx_version @@ -468,7 +468,7 @@ class EditWithComplete(EnComboBox): return EnComboBox.eventFilter(self, obj, e) if __name__ == '__main__': - from PyQt4.Qt import QDialog, QVBoxLayout + from PyQt5.Qt import QDialog, QVBoxLayout app = QApplication([]) d = QDialog() d.setLayout(QVBoxLayout()) diff --git a/src/calibre/gui2/convert/__init__.py b/src/calibre/gui2/convert/__init__.py index c4b1fa3835..3e2a8bde3d 100644 --- a/src/calibre/gui2/convert/__init__.py +++ b/src/calibre/gui2/convert/__init__.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import textwrap, codecs, importlib from functools import partial -from PyQt4.Qt import (QWidget, QSpinBox, QDoubleSpinBox, QLineEdit, QTextEdit, +from PyQt5.Qt import (QWidget, QSpinBox, QDoubleSpinBox, QLineEdit, QTextEdit, QCheckBox, QComboBox, Qt, QIcon, pyqtSignal, QLabel, QFontComboBox, QFont, QFontInfo) diff --git a/src/calibre/gui2/convert/bulk.py b/src/calibre/gui2/convert/bulk.py index fdfef392fe..78e9847228 100644 --- a/src/calibre/gui2/convert/bulk.py +++ b/src/calibre/gui2/convert/bulk.py @@ -6,7 +6,7 @@ __docformat__ = 'restructuredtext en' import shutil -from PyQt4.Qt import QString, QModelIndex +from PyQt5.Qt import QString, QModelIndex from calibre.gui2.convert.single import (Config, sort_formats_by_preference, GroupModel, gprefs, get_output_formats) diff --git a/src/calibre/gui2/convert/font_key.py b/src/calibre/gui2/convert/font_key.py index ba943c26b0..c3b67e0a1f 100644 --- a/src/calibre/gui2/convert/font_key.py +++ b/src/calibre/gui2/convert/font_key.py @@ -6,7 +6,7 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog +from PyQt5.Qt import QDialog from calibre.gui2.convert.font_key_ui import Ui_Dialog diff --git a/src/calibre/gui2/convert/heuristics.py b/src/calibre/gui2/convert/heuristics.py index 67774bb2b3..e1db613afc 100644 --- a/src/calibre/gui2/convert/heuristics.py +++ b/src/calibre/gui2/convert/heuristics.py @@ -4,7 +4,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import Qt +from PyQt5.Qt import Qt from calibre.gui2 import gprefs from calibre.gui2.convert.heuristics_ui import Ui_Form diff --git a/src/calibre/gui2/convert/look_and_feel.py b/src/calibre/gui2/convert/look_and_feel.py index d448e3b95a..7630cdb9c9 100644 --- a/src/calibre/gui2/convert/look_and_feel.py +++ b/src/calibre/gui2/convert/look_and_feel.py @@ -6,7 +6,7 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QVariant, Qt +from PyQt5.Qt import QVariant, Qt from calibre.gui2.convert.look_and_feel_ui import Ui_Form from calibre.gui2.convert import Widget diff --git a/src/calibre/gui2/convert/metadata.py b/src/calibre/gui2/convert/metadata.py index c291874a33..7ff7bc5384 100644 --- a/src/calibre/gui2/convert/metadata.py +++ b/src/calibre/gui2/convert/metadata.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import os, re -from PyQt4.Qt import QPixmap +from PyQt5.Qt import QPixmap from calibre.gui2 import choose_images, error_dialog from calibre.gui2.convert.metadata_ui import Ui_Form diff --git a/src/calibre/gui2/convert/page_setup.py b/src/calibre/gui2/convert/page_setup.py index 5bbac735d3..7dd3dc05bb 100644 --- a/src/calibre/gui2/convert/page_setup.py +++ b/src/calibre/gui2/convert/page_setup.py @@ -6,7 +6,7 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import Qt, QAbstractListModel, QVariant, QModelIndex +from PyQt5.Qt import Qt, QAbstractListModel, QVariant, QModelIndex from calibre.gui2.convert.page_setup_ui import Ui_Form from calibre.gui2.convert import Widget diff --git a/src/calibre/gui2/convert/regex_builder.py b/src/calibre/gui2/convert/regex_builder.py index f3c1f0a826..004a1dbec4 100644 --- a/src/calibre/gui2/convert/regex_builder.py +++ b/src/calibre/gui2/convert/regex_builder.py @@ -6,7 +6,7 @@ __docformat__ = 'restructuredtext en' import re, os -from PyQt4.Qt import (QDialog, QWidget, QDialogButtonBox, +from PyQt5.Qt import (QDialog, QWidget, QDialogButtonBox, QBrush, QTextCursor, QTextEdit, QByteArray, Qt, pyqtSignal) from calibre.gui2.convert.regex_builder_ui import Ui_RegexBuilder diff --git a/src/calibre/gui2/convert/search_and_replace.py b/src/calibre/gui2/convert/search_and_replace.py index c8206ebeae..976fef7aa1 100644 --- a/src/calibre/gui2/convert/search_and_replace.py +++ b/src/calibre/gui2/convert/search_and_replace.py @@ -6,7 +6,7 @@ __docformat__ = 'restructuredtext en' import re, codecs, json -from PyQt4.Qt import Qt, QTableWidgetItem +from PyQt5.Qt import Qt, QTableWidgetItem from calibre.gui2.convert.search_and_replace_ui import Ui_Form from calibre.gui2.convert import Widget diff --git a/src/calibre/gui2/convert/single.py b/src/calibre/gui2/convert/single.py index fa42801b54..ec761e07f4 100644 --- a/src/calibre/gui2/convert/single.py +++ b/src/calibre/gui2/convert/single.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import cPickle, shutil -from PyQt4.Qt import QString, QAbstractListModel, Qt, QVariant, QFont, QModelIndex +from PyQt5.Qt import QString, QAbstractListModel, Qt, QVariant, QFont, QModelIndex from calibre.gui2 import ResizableDialog, NONE, gprefs from calibre.ebooks.conversion.config import (GuiRecommendations, save_specifics, diff --git a/src/calibre/gui2/convert/txt_input.py b/src/calibre/gui2/convert/txt_input.py index 8a0370ac8f..e84e3099a1 100644 --- a/src/calibre/gui2/convert/txt_input.py +++ b/src/calibre/gui2/convert/txt_input.py @@ -4,7 +4,7 @@ __license__ = 'GPL 3' __copyright__ = '2009, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QListWidgetItem, Qt +from PyQt5.Qt import QListWidgetItem, Qt from calibre.gui2.convert.txt_input_ui import Ui_Form from calibre.gui2.convert import Widget diff --git a/src/calibre/gui2/convert/xpath_wizard.py b/src/calibre/gui2/convert/xpath_wizard.py index 0a0a371e41..8ae83f8187 100644 --- a/src/calibre/gui2/convert/xpath_wizard.py +++ b/src/calibre/gui2/convert/xpath_wizard.py @@ -6,7 +6,7 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog, QWidget, Qt, QDialogButtonBox, QVBoxLayout +from PyQt5.Qt import QDialog, QWidget, Qt, QDialogButtonBox, QVBoxLayout from calibre.gui2.convert.xpath_wizard_ui import Ui_Form from calibre.gui2.convert.xexp_edit_ui import Ui_Form as Ui_Edit @@ -100,7 +100,7 @@ class XPathEdit(QWidget, Ui_Edit): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) w = XPathEdit() w.setObjectName('test') diff --git a/src/calibre/gui2/cover_flow.py b/src/calibre/gui2/cover_flow.py index 1b6530223c..59f6a4ebb3 100644 --- a/src/calibre/gui2/cover_flow.py +++ b/src/calibre/gui2/cover_flow.py @@ -9,7 +9,7 @@ Module to implement the Cover Flow feature import sys, os, time -from PyQt4.Qt import (QImage, QSizePolicy, QTimer, QDialog, Qt, QSize, QAction, +from PyQt5.Qt import (QImage, QSizePolicy, QTimer, QDialog, Qt, QSize, QAction, QStackedLayout, QLabel, QByteArray, pyqtSignal, QKeySequence, QFont) from calibre import plugins @@ -353,7 +353,7 @@ class CoverFlowMixin(object): self.cf_last_updated_at = time.time() def test(): - from PyQt4.QtGui import QApplication, QMainWindow + from PyQt5.QtGui import QApplication, QMainWindow app = QApplication([]) w = QMainWindow() cf = CoverFlow() @@ -372,7 +372,7 @@ def main(args=sys.argv): return 0 if __name__ == '__main__': - from PyQt4.QtGui import QApplication, QMainWindow + from PyQt5.QtGui import QApplication, QMainWindow app = QApplication([]) w = QMainWindow() cf = CoverFlow() diff --git a/src/calibre/gui2/custom_column_widgets.py b/src/calibre/gui2/custom_column_widgets.py index 6d312d4c7e..d4180642ff 100644 --- a/src/calibre/gui2/custom_column_widgets.py +++ b/src/calibre/gui2/custom_column_widgets.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import (QComboBox, QLabel, QSpinBox, QDoubleSpinBox, QDateTimeEdit, +from PyQt5.Qt import (QComboBox, QLabel, QSpinBox, QDoubleSpinBox, QDateTimeEdit, QDateTime, QGroupBox, QVBoxLayout, QSizePolicy, QGridLayout, QSpacerItem, QIcon, QCheckBox, QWidget, QHBoxLayout, QPushButton, QMessageBox, QToolButton, Qt) diff --git a/src/calibre/gui2/device.py b/src/calibre/gui2/device.py index 0b0c1b3fd3..0fe748e80f 100644 --- a/src/calibre/gui2/device.py +++ b/src/calibre/gui2/device.py @@ -6,7 +6,7 @@ __copyright__ = '2008, Kovid Goyal ' import os, traceback, Queue, time, cStringIO, re, sys, weakref from threading import Thread, Event -from PyQt4.Qt import ( +from PyQt5.Qt import ( QMenu, QAction, QActionGroup, QIcon, Qt, pyqtSignal, QDialog, QObject, QVBoxLayout, QDialogButtonBox, QCursor, QCoreApplication, QApplication, QEventLoop) diff --git a/src/calibre/gui2/device_drivers/configwidget.py b/src/calibre/gui2/device_drivers/configwidget.py index 512415a81d..875c4c2b65 100644 --- a/src/calibre/gui2/device_drivers/configwidget.py +++ b/src/calibre/gui2/device_drivers/configwidget.py @@ -6,7 +6,7 @@ __docformat__ = 'restructuredtext en' import textwrap -from PyQt4.Qt import (QWidget, QListWidgetItem, Qt, QVariant, QLabel, +from PyQt5.Qt import (QWidget, QListWidgetItem, Qt, QVariant, QLabel, QLineEdit, QCheckBox, QComboBox) from calibre.gui2 import error_dialog, question_dialog diff --git a/src/calibre/gui2/device_drivers/mtp_config.py b/src/calibre/gui2/device_drivers/mtp_config.py index 2670a7a5f6..9f4391f7b8 100644 --- a/src/calibre/gui2/device_drivers/mtp_config.py +++ b/src/calibre/gui2/device_drivers/mtp_config.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import weakref -from PyQt4.Qt import (QWidget, QListWidgetItem, Qt, QToolButton, QLabel, +from PyQt5.Qt import (QWidget, QListWidgetItem, Qt, QToolButton, QLabel, QTabWidget, QGridLayout, QListWidget, QIcon, QLineEdit, QVBoxLayout, QPushButton, QGroupBox, QScrollArea, QHBoxLayout, QComboBox, pyqtSignal, QSizePolicy, QDialog, QDialogButtonBox, QPlainTextEdit, diff --git a/src/calibre/gui2/device_drivers/mtp_folder_browser.py b/src/calibre/gui2/device_drivers/mtp_folder_browser.py index e84542df9e..e687960914 100644 --- a/src/calibre/gui2/device_drivers/mtp_folder_browser.py +++ b/src/calibre/gui2/device_drivers/mtp_folder_browser.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' from operator import attrgetter -from PyQt4.Qt import (QTabWidget, QTreeWidget, QTreeWidgetItem, Qt, QDialog, +from PyQt5.Qt import (QTabWidget, QTreeWidget, QTreeWidgetItem, Qt, QDialog, QDialogButtonBox, QVBoxLayout, QSize, pyqtSignal, QIcon, QLabel) from calibre.gui2 import file_icon_provider diff --git a/src/calibre/gui2/dialogs/add_empty_book.py b/src/calibre/gui2/dialogs/add_empty_book.py index 0119659793..401bdf7b39 100644 --- a/src/calibre/gui2/dialogs/add_empty_book.py +++ b/src/calibre/gui2/dialogs/add_empty_book.py @@ -4,7 +4,7 @@ __docformat__ = 'restructuredtext en' __license__ = 'GPL v3' -from PyQt4.Qt import QDialog, QGridLayout, QLabel, QDialogButtonBox, \ +from PyQt5.Qt import QDialog, QGridLayout, QLabel, QDialogButtonBox, \ QApplication, QSpinBox, QToolButton, QIcon, QCheckBox from calibre.ebooks.metadata import string_to_authors from calibre.gui2.complete2 import EditWithComplete diff --git a/src/calibre/gui2/dialogs/add_from_isbn.py b/src/calibre/gui2/dialogs/add_from_isbn.py index 03908f4776..e9c898ba00 100644 --- a/src/calibre/gui2/dialogs/add_from_isbn.py +++ b/src/calibre/gui2/dialogs/add_from_isbn.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import os -from PyQt4.Qt import QDialog, QApplication +from PyQt5.Qt import QDialog, QApplication from calibre.gui2.dialogs.add_from_isbn_ui import Ui_Dialog from calibre.ebooks.metadata import check_isbn diff --git a/src/calibre/gui2/dialogs/authors_edit.py b/src/calibre/gui2/dialogs/authors_edit.py index 91b68fdcc0..9e088562b9 100644 --- a/src/calibre/gui2/dialogs/authors_edit.py +++ b/src/calibre/gui2/dialogs/authors_edit.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' from collections import OrderedDict -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QGridLayout, QDialogButtonBox, QListWidget, QApplication, Qt, pyqtSignal, QSize, QPushButton, QIcon, QStyledItemDelegate, QLabel) diff --git a/src/calibre/gui2/dialogs/book_info.py b/src/calibre/gui2/dialogs/book_info.py index 0b515c7a41..e8e54a502d 100644 --- a/src/calibre/gui2/dialogs/book_info.py +++ b/src/calibre/gui2/dialogs/book_info.py @@ -6,11 +6,11 @@ __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import ( +from PyQt5.Qt import ( QCoreApplication, QModelIndex, QTimer, Qt, pyqtSignal, QWidget, QGridLayout, QDialog, QPixmap, QSize, QPalette, QShortcut, QKeySequence, QSplitter, QVBoxLayout, QCheckBox, QPushButton, QIcon, QBrush) -from PyQt4.QtWebKit import QWebView +from PyQt5.QtWebKit import QWebView from calibre.gui2 import gprefs from calibre import fit_image diff --git a/src/calibre/gui2/dialogs/catalog.py b/src/calibre/gui2/dialogs/catalog.py index 3700237d5e..ac241df6a3 100644 --- a/src/calibre/gui2/dialogs/catalog.py +++ b/src/calibre/gui2/dialogs/catalog.py @@ -19,7 +19,7 @@ class Catalog(ResizableDialog, Ui_Dialog): def __init__(self, parent, dbspec, ids, db): import re, cStringIO from calibre import prints as info - from PyQt4.uic import compileUi + from PyQt5.uic import compileUi ResizableDialog.__init__(self, parent) self.dbspec, self.ids = dbspec, ids @@ -186,7 +186,7 @@ class Catalog(ResizableDialog, Ui_Dialog): To add help functionality for a specific format: In gui2.catalog.catalog_.py, add the following: from calibre.gui2 import open_url - from PyQt4.Qt import QUrl + from PyQt5.Qt import QUrl In the PluginWidget() class, add this method: def show_help(self): diff --git a/src/calibre/gui2/dialogs/check_library.py b/src/calibre/gui2/dialogs/check_library.py index b04592c628..d99c12a7be 100644 --- a/src/calibre/gui2/dialogs/check_library.py +++ b/src/calibre/gui2/dialogs/check_library.py @@ -6,7 +6,7 @@ __license__ = 'GPL v3' import os from threading import Thread -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QVBoxLayout, QHBoxLayout, QTreeWidget, QLabel, QPushButton, QDialogButtonBox, QApplication, QTreeWidgetItem, QLineEdit, Qt, QSize, QTimer, QIcon, QTextEdit, QSplitter, QWidget, QGridLayout, pyqtSignal) diff --git a/src/calibre/gui2/dialogs/choose_format.py b/src/calibre/gui2/dialogs/choose_format.py index 9319131e6e..713c986c64 100644 --- a/src/calibre/gui2/dialogs/choose_format.py +++ b/src/calibre/gui2/dialogs/choose_format.py @@ -1,7 +1,7 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.Qt import QDialog, QListWidgetItem, QModelIndex +from PyQt5.Qt import QDialog, QListWidgetItem, QModelIndex from calibre.gui2 import file_icon_provider from calibre.gui2.dialogs.choose_format_ui import Ui_ChooseFormatDialog diff --git a/src/calibre/gui2/dialogs/choose_format_device.py b/src/calibre/gui2/dialogs/choose_format_device.py index 48c5afff5f..47bc536671 100644 --- a/src/calibre/gui2/dialogs/choose_format_device.py +++ b/src/calibre/gui2/dialogs/choose_format_device.py @@ -1,7 +1,7 @@ __license__ = 'GPL v3' __copyright__ = '2011, John Schember ' -from PyQt4.Qt import QDialog, QTreeWidgetItem, QIcon, QModelIndex +from PyQt5.Qt import QDialog, QTreeWidgetItem, QIcon, QModelIndex from calibre.gui2 import file_icon_provider from calibre.gui2.dialogs.choose_format_device_ui import Ui_ChooseFormatDeviceDialog diff --git a/src/calibre/gui2/dialogs/choose_library.py b/src/calibre/gui2/dialogs/choose_library.py index 1659a47b8f..b66795f3d4 100644 --- a/src/calibre/gui2/dialogs/choose_library.py +++ b/src/calibre/gui2/dialogs/choose_library.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import os -from PyQt4.Qt import QDialog +from PyQt5.Qt import QDialog from calibre.gui2.dialogs.choose_library_ui import Ui_Dialog from calibre.gui2 import error_dialog, choose_dir diff --git a/src/calibre/gui2/dialogs/choose_plugin_toolbars.py b/src/calibre/gui2/dialogs/choose_plugin_toolbars.py index 818eb5b2bc..cac8bedb33 100644 --- a/src/calibre/gui2/dialogs/choose_plugin_toolbars.py +++ b/src/calibre/gui2/dialogs/choose_plugin_toolbars.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' __license__ = 'GPL v3' -from PyQt4.Qt import (QDialog, QVBoxLayout, QLabel, QDialogButtonBox, +from PyQt5.Qt import (QDialog, QVBoxLayout, QLabel, QDialogButtonBox, QListWidget, QAbstractItemView) from PyQt4 import QtGui diff --git a/src/calibre/gui2/dialogs/comicconf.py b/src/calibre/gui2/dialogs/comicconf.py index ece2edb9df..33b3d3c527 100644 --- a/src/calibre/gui2/dialogs/comicconf.py +++ b/src/calibre/gui2/dialogs/comicconf.py @@ -4,7 +4,7 @@ __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' '''''' -from PyQt4.QtGui import QDialog +from PyQt5.QtGui import QDialog from calibre.gui2.dialogs.comicconf_ui import Ui_Dialog from calibre.ebooks.lrf.comic.convert_from import config, PROFILES diff --git a/src/calibre/gui2/dialogs/comments_dialog.py b/src/calibre/gui2/dialogs/comments_dialog.py index 70d4a4a5a3..30c096262b 100644 --- a/src/calibre/gui2/dialogs/comments_dialog.py +++ b/src/calibre/gui2/dialogs/comments_dialog.py @@ -3,7 +3,7 @@ __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' __license__ = 'GPL v3' -from PyQt4.Qt import Qt, QDialog, QDialogButtonBox +from PyQt5.Qt import Qt, QDialog, QDialogButtonBox from calibre.gui2 import gprefs from calibre.gui2.dialogs.comments_dialog_ui import Ui_CommentsDialog diff --git a/src/calibre/gui2/dialogs/confirm_delete.py b/src/calibre/gui2/dialogs/confirm_delete.py index e129bc567f..68513083eb 100644 --- a/src/calibre/gui2/dialogs/confirm_delete.py +++ b/src/calibre/gui2/dialogs/confirm_delete.py @@ -3,7 +3,7 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog, Qt, QPixmap, QIcon +from PyQt5.Qt import QDialog, Qt, QPixmap, QIcon from calibre import confirm_config_name from calibre.gui2 import dynamic diff --git a/src/calibre/gui2/dialogs/confirm_delete_location.py b/src/calibre/gui2/dialogs/confirm_delete_location.py index b976b936b8..8d12cd2d68 100644 --- a/src/calibre/gui2/dialogs/confirm_delete_location.py +++ b/src/calibre/gui2/dialogs/confirm_delete_location.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' from functools import partial from calibre.gui2.dialogs.confirm_delete_location_ui import Ui_Dialog -from PyQt4.Qt import QDialog, Qt, QPixmap, QIcon +from PyQt5.Qt import QDialog, Qt, QPixmap, QIcon class Dialog(QDialog, Ui_Dialog): diff --git a/src/calibre/gui2/dialogs/conversion_error.py b/src/calibre/gui2/dialogs/conversion_error.py index 7b47c59d5a..ea2e9ec105 100644 --- a/src/calibre/gui2/dialogs/conversion_error.py +++ b/src/calibre/gui2/dialogs/conversion_error.py @@ -1,6 +1,6 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.QtGui import QDialog +from PyQt5.QtGui import QDialog from calibre.gui2.dialogs.conversion_error_ui import Ui_ConversionErrorDialog diff --git a/src/calibre/gui2/dialogs/delete_matching_from_device.py b/src/calibre/gui2/dialogs/delete_matching_from_device.py index d7927e2f75..42846b68cb 100644 --- a/src/calibre/gui2/dialogs/delete_matching_from_device.py +++ b/src/calibre/gui2/dialogs/delete_matching_from_device.py @@ -3,7 +3,7 @@ __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' __license__ = 'GPL v3' -from PyQt4.Qt import Qt, QDialog, QTableWidgetItem, QAbstractItemView +from PyQt5.Qt import Qt, QDialog, QTableWidgetItem, QAbstractItemView from calibre import strftime from calibre.ebooks.metadata import authors_to_string, authors_to_sort_string, \ diff --git a/src/calibre/gui2/dialogs/device_category_editor.py b/src/calibre/gui2/dialogs/device_category_editor.py index 3b046b8ef1..2ae2de5635 100644 --- a/src/calibre/gui2/dialogs/device_category_editor.py +++ b/src/calibre/gui2/dialogs/device_category_editor.py @@ -1,8 +1,8 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.QtCore import Qt, QString -from PyQt4.QtGui import QDialog, QListWidgetItem +from PyQt5.QtCore import Qt, QString +from PyQt5.QtGui import QDialog, QListWidgetItem from calibre.gui2.dialogs.device_category_editor_ui import Ui_DeviceCategoryEditor from calibre.gui2 import question_dialog, error_dialog diff --git a/src/calibre/gui2/dialogs/drm_error.py b/src/calibre/gui2/dialogs/drm_error.py index 5fbba47165..b346ca2141 100644 --- a/src/calibre/gui2/dialogs/drm_error.py +++ b/src/calibre/gui2/dialogs/drm_error.py @@ -6,7 +6,7 @@ __copyright__ = '2011, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog +from PyQt5.Qt import QDialog from calibre.gui2.dialogs.drm_error_ui import Ui_Dialog class DRMErrorMessage(QDialog, Ui_Dialog): diff --git a/src/calibre/gui2/dialogs/duplicates.py b/src/calibre/gui2/dialogs/duplicates.py index ae82912994..fdb200b8aa 100644 --- a/src/calibre/gui2/dialogs/duplicates.py +++ b/src/calibre/gui2/dialogs/duplicates.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import os.path -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QGridLayout, QIcon, QLabel, QTreeWidget, QTreeWidgetItem, Qt, QFont, QDialogButtonBox, QApplication) diff --git a/src/calibre/gui2/dialogs/edit_authors_dialog.py b/src/calibre/gui2/dialogs/edit_authors_dialog.py index d1cb1be828..12bf4aac49 100644 --- a/src/calibre/gui2/dialogs/edit_authors_dialog.py +++ b/src/calibre/gui2/dialogs/edit_authors_dialog.py @@ -3,7 +3,7 @@ __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' __license__ = 'GPL v3' -from PyQt4.Qt import (Qt, QDialog, QTableWidgetItem, QAbstractItemView, QIcon, +from PyQt5.Qt import (Qt, QDialog, QTableWidgetItem, QAbstractItemView, QIcon, QDialogButtonBox, QFrame, QLabel, QTimer, QMenu, QApplication, QByteArray) diff --git a/src/calibre/gui2/dialogs/match_books.py b/src/calibre/gui2/dialogs/match_books.py index 3861b3cbe9..5dd361283d 100644 --- a/src/calibre/gui2/dialogs/match_books.py +++ b/src/calibre/gui2/dialogs/match_books.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (Qt, QDialog, QAbstractItemView, QTableWidgetItem, +from PyQt5.Qt import (Qt, QDialog, QAbstractItemView, QTableWidgetItem, QByteArray) from calibre.gui2 import gprefs, error_dialog diff --git a/src/calibre/gui2/dialogs/message_box.py b/src/calibre/gui2/dialogs/message_box.py index ba2ff5f3da..5fe79352c1 100644 --- a/src/calibre/gui2/dialogs/message_box.py +++ b/src/calibre/gui2/dialogs/message_box.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import sys -from PyQt4.Qt import (QDialog, QIcon, QApplication, QSize, QKeySequence, +from PyQt5.Qt import (QDialog, QIcon, QApplication, QSize, QKeySequence, QAction, Qt, QTextBrowser, QDialogButtonBox, QVBoxLayout, QGridLayout, QLabel, QPlainTextEdit, QTextDocument, QCheckBox, pyqtSignal) diff --git a/src/calibre/gui2/dialogs/metadata_bulk.py b/src/calibre/gui2/dialogs/metadata_bulk.py index 4545a5ba28..fde5908a70 100644 --- a/src/calibre/gui2/dialogs/metadata_bulk.py +++ b/src/calibre/gui2/dialogs/metadata_bulk.py @@ -7,7 +7,7 @@ import re, os from collections import namedtuple, defaultdict from threading import Thread -from PyQt4.Qt import Qt, QDialog, QGridLayout, QVBoxLayout, QFont, QLabel, \ +from PyQt5.Qt import Qt, QDialog, QGridLayout, QVBoxLayout, QFont, QLabel, \ pyqtSignal, QDialogButtonBox, QInputDialog, QLineEdit, \ QDateTime, QCompleter diff --git a/src/calibre/gui2/dialogs/opml.py b/src/calibre/gui2/dialogs/opml.py index 8c64589583..2832d60da9 100644 --- a/src/calibre/gui2/dialogs/opml.py +++ b/src/calibre/gui2/dialogs/opml.py @@ -9,7 +9,7 @@ __copyright__ = '2014, Kovid Goyal ' from collections import defaultdict, namedtuple from operator import itemgetter -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QFormLayout, QHBoxLayout, QLineEdit, QToolButton, QIcon, QDialogButtonBox, Qt, QSpinBox, QCheckBox) diff --git a/src/calibre/gui2/dialogs/password.py b/src/calibre/gui2/dialogs/password.py index 90d8a86153..c215b58eee 100644 --- a/src/calibre/gui2/dialogs/password.py +++ b/src/calibre/gui2/dialogs/password.py @@ -1,8 +1,8 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' import re -from PyQt4.QtGui import QDialog, QLineEdit -from PyQt4.QtCore import Qt +from PyQt5.QtGui import QDialog, QLineEdit +from PyQt5.QtCore import Qt from calibre.gui2.dialogs.password_ui import Ui_Dialog from calibre.gui2 import dynamic diff --git a/src/calibre/gui2/dialogs/plugin_updater.py b/src/calibre/gui2/dialogs/plugin_updater.py index dc74efe9bb..6b46e36902 100644 --- a/src/calibre/gui2/dialogs/plugin_updater.py +++ b/src/calibre/gui2/dialogs/plugin_updater.py @@ -9,12 +9,12 @@ __docformat__ = 'restructuredtext en' import re, datetime, traceback from lxml import html -from PyQt4.Qt import (Qt, QUrl, QFrame, QVBoxLayout, QLabel, QBrush, QTextEdit, +from PyQt5.Qt import (Qt, QUrl, QFrame, QVBoxLayout, QLabel, QBrush, QTextEdit, QComboBox, QAbstractItemView, QHBoxLayout, QDialogButtonBox, QAbstractTableModel, QVariant, QTableView, QModelIndex, QSortFilterProxyModel, QAction, QIcon, QDialog, QFont, QPixmap, QSize) -from PyQt4.QtGui import QLineEdit +from PyQt5.QtGui import QLineEdit from calibre import browser, prints from calibre.constants import numeric_version, iswindows, isosx, DEBUG, __appname__, __version__ diff --git a/src/calibre/gui2/dialogs/progress.py b/src/calibre/gui2/dialogs/progress.py index 552172e4b2..12c79c09b6 100644 --- a/src/calibre/gui2/dialogs/progress.py +++ b/src/calibre/gui2/dialogs/progress.py @@ -5,7 +5,7 @@ __docformat__ = 'restructuredtext en' '''''' -from PyQt4.Qt import QDialog, pyqtSignal, Qt, QVBoxLayout, QLabel, QFont +from PyQt5.Qt import QDialog, pyqtSignal, Qt, QVBoxLayout, QLabel, QFont from calibre.gui2.dialogs.progress_ui import Ui_Dialog from calibre.gui2.progress_indicator import ProgressIndicator diff --git a/src/calibre/gui2/dialogs/quickview.py b/src/calibre/gui2/dialogs/quickview.py index 68bb321514..553f09b4a8 100644 --- a/src/calibre/gui2/dialogs/quickview.py +++ b/src/calibre/gui2/dialogs/quickview.py @@ -4,7 +4,7 @@ __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (Qt, QDialog, QAbstractItemView, QTableWidgetItem, +from PyQt5.Qt import (Qt, QDialog, QAbstractItemView, QTableWidgetItem, QListWidgetItem, QByteArray, QCoreApplication, QApplication, pyqtSignal, QDialogButtonBox) diff --git a/src/calibre/gui2/dialogs/restore_library.py b/src/calibre/gui2/dialogs/restore_library.py index a00151f563..411318944c 100644 --- a/src/calibre/gui2/dialogs/restore_library.py +++ b/src/calibre/gui2/dialogs/restore_library.py @@ -5,7 +5,7 @@ __license__ = 'GPL v3' __copyright__ = '2011, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QDialog, QLabel, QVBoxLayout, QDialogButtonBox, +from PyQt5.Qt import (QDialog, QLabel, QVBoxLayout, QDialogButtonBox, QProgressBar, QSize, QTimer, pyqtSignal, Qt) from calibre.gui2 import (error_dialog, question_dialog, warning_dialog, diff --git a/src/calibre/gui2/dialogs/saved_search_editor.py b/src/calibre/gui2/dialogs/saved_search_editor.py index ade21244e9..53c6b71edc 100644 --- a/src/calibre/gui2/dialogs/saved_search_editor.py +++ b/src/calibre/gui2/dialogs/saved_search_editor.py @@ -3,7 +3,7 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.QtGui import QDialog +from PyQt5.QtGui import QDialog from calibre.gui2.dialogs.saved_search_editor_ui import Ui_SavedSearchEditor from calibre.utils.icu import sort_key diff --git a/src/calibre/gui2/dialogs/scheduler.py b/src/calibre/gui2/dialogs/scheduler.py index b8d2d51893..34568451a1 100644 --- a/src/calibre/gui2/dialogs/scheduler.py +++ b/src/calibre/gui2/dialogs/scheduler.py @@ -11,7 +11,7 @@ from datetime import timedelta import calendar, textwrap from collections import OrderedDict -from PyQt4.Qt import (QDialog, Qt, QTime, QObject, QMenu, QHBoxLayout, +from PyQt5.Qt import (QDialog, Qt, QTime, QObject, QMenu, QHBoxLayout, QAction, QIcon, QMutex, QTimer, pyqtSignal, QWidget, QGridLayout, QCheckBox, QTimeEdit, QLabel, QLineEdit, QDoubleSpinBox) diff --git a/src/calibre/gui2/dialogs/search.py b/src/calibre/gui2/dialogs/search.py index 99c60c0458..97cd761976 100644 --- a/src/calibre/gui2/dialogs/search.py +++ b/src/calibre/gui2/dialogs/search.py @@ -4,7 +4,7 @@ __copyright__ = '2008, Kovid Goyal ' import re, copy from datetime import date -from PyQt4.Qt import QDialog, QDialogButtonBox +from PyQt5.Qt import QDialog, QDialogButtonBox from calibre.gui2.dialogs.search_ui import Ui_Dialog from calibre.library.caches import CONTAINS_MATCH, EQUALS_MATCH diff --git a/src/calibre/gui2/dialogs/select_formats.py b/src/calibre/gui2/dialogs/select_formats.py index 58085176a4..e57da09e49 100644 --- a/src/calibre/gui2/dialogs/select_formats.py +++ b/src/calibre/gui2/dialogs/select_formats.py @@ -7,7 +7,7 @@ __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QVBoxLayout, QDialog, QLabel, QDialogButtonBox, Qt, \ +from PyQt5.Qt import QVBoxLayout, QDialog, QLabel, QDialogButtonBox, Qt, \ QAbstractListModel, QVariant, QListView, QSize from calibre.gui2 import NONE, file_icon_provider @@ -91,7 +91,7 @@ class SelectFormats(QDialog): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) d = SelectFormats(['epub', 'lrf', 'lit', 'mobi'], 'Choose a format') d.exec_() diff --git a/src/calibre/gui2/dialogs/smartdevice.py b/src/calibre/gui2/dialogs/smartdevice.py index 9bd570a12e..c95fd4a181 100644 --- a/src/calibre/gui2/dialogs/smartdevice.py +++ b/src/calibre/gui2/dialogs/smartdevice.py @@ -5,7 +5,7 @@ from __future__ import (unicode_literals, division, absolute_import, __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.Qt import (QDialog, QLineEdit, Qt) +from PyQt5.Qt import (QDialog, QLineEdit, Qt) from calibre.gui2 import error_dialog from calibre.gui2.dialogs.smartdevice_ui import Ui_Dialog diff --git a/src/calibre/gui2/dialogs/tag_categories.py b/src/calibre/gui2/dialogs/tag_categories.py index 6b20392aff..ce234ad096 100644 --- a/src/calibre/gui2/dialogs/tag_categories.py +++ b/src/calibre/gui2/dialogs/tag_categories.py @@ -2,8 +2,8 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.QtCore import Qt -from PyQt4.QtGui import QDialog, QIcon, QListWidgetItem +from PyQt5.QtCore import Qt +from PyQt5.QtGui import QDialog, QIcon, QListWidgetItem from calibre.gui2.dialogs.tag_categories_ui import Ui_TagCategories from calibre.gui2.dialogs.confirm_delete import confirm diff --git a/src/calibre/gui2/dialogs/tag_editor.py b/src/calibre/gui2/dialogs/tag_editor.py index 5299949449..c7f2aa40d2 100644 --- a/src/calibre/gui2/dialogs/tag_editor.py +++ b/src/calibre/gui2/dialogs/tag_editor.py @@ -3,8 +3,8 @@ __copyright__ = '2008, Kovid Goyal ' from functools import partial -from PyQt4.QtCore import Qt -from PyQt4.QtGui import QDialog +from PyQt5.QtCore import Qt +from PyQt5.QtGui import QDialog from calibre.gui2.dialogs.tag_editor_ui import Ui_TagEditor from calibre.gui2 import question_dialog, error_dialog, gprefs diff --git a/src/calibre/gui2/dialogs/tag_list_editor.py b/src/calibre/gui2/dialogs/tag_list_editor.py index fcc6bc7637..2599b48bb1 100644 --- a/src/calibre/gui2/dialogs/tag_list_editor.py +++ b/src/calibre/gui2/dialogs/tag_list_editor.py @@ -1,7 +1,7 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.Qt import (Qt, QDialog, QTableWidgetItem, QIcon, QByteArray, +from PyQt5.Qt import (Qt, QDialog, QTableWidgetItem, QIcon, QByteArray, QString, QSize) from calibre.gui2.dialogs.tag_list_editor_ui import Ui_TagListEditor diff --git a/src/calibre/gui2/dialogs/template_dialog.py b/src/calibre/gui2/dialogs/template_dialog.py index 3960c62289..787c2cf923 100644 --- a/src/calibre/gui2/dialogs/template_dialog.py +++ b/src/calibre/gui2/dialogs/template_dialog.py @@ -5,7 +5,7 @@ __license__ = 'GPL v3' import json, os, traceback -from PyQt4.Qt import (Qt, QDialog, QDialogButtonBox, QSyntaxHighlighter, QFont, +from PyQt5.Qt import (Qt, QDialog, QDialogButtonBox, QSyntaxHighlighter, QFont, QRegExp, QApplication, QTextCharFormat, QColor, QCursor, QIcon, QSize, QVariant) diff --git a/src/calibre/gui2/dialogs/template_line_editor.py b/src/calibre/gui2/dialogs/template_line_editor.py index 02293e4df7..f8ebd766dc 100644 --- a/src/calibre/gui2/dialogs/template_line_editor.py +++ b/src/calibre/gui2/dialogs/template_line_editor.py @@ -6,7 +6,7 @@ __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QLineEdit +from PyQt5.Qt import QLineEdit from calibre.gui2.dialogs.template_dialog import TemplateDialog diff --git a/src/calibre/gui2/dialogs/trim_image.py b/src/calibre/gui2/dialogs/trim_image.py index 4c54132945..80cac9198a 100644 --- a/src/calibre/gui2/dialogs/trim_image.py +++ b/src/calibre/gui2/dialogs/trim_image.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' import sys, os -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QGridLayout, QToolBar, Qt, QLabel, QIcon, QDialogButtonBox, QSize, QApplication, QKeySequence) diff --git a/src/calibre/gui2/dialogs/user_profiles.py b/src/calibre/gui2/dialogs/user_profiles.py index 2d927bb14a..58815c0901 100644 --- a/src/calibre/gui2/dialogs/user_profiles.py +++ b/src/calibre/gui2/dialogs/user_profiles.py @@ -3,7 +3,7 @@ __copyright__ = '2008, Kovid Goyal ' import time, os -from PyQt4.Qt import (QUrl, QAbstractListModel, Qt, QVariant, QFont) +from PyQt5.Qt import (QUrl, QAbstractListModel, Qt, QVariant, QFont) from calibre.web.feeds.recipes import compile_recipe, custom_recipes from calibre.web.feeds.news import AutomaticNewsRecipe @@ -286,7 +286,7 @@ class %(classname)s(%(base_class)s): def add_builtin_recipe(self): from calibre.web.feeds.recipes.collection import \ get_builtin_recipe_collection, get_builtin_recipe_by_id - from PyQt4.Qt import QDialog, QVBoxLayout, QListWidgetItem, \ + from PyQt5.Qt import QDialog, QVBoxLayout, QListWidgetItem, \ QListWidget, QDialogButtonBox, QSize d = QDialog(self) diff --git a/src/calibre/gui2/dnd.py b/src/calibre/gui2/dnd.py index 4625f70f77..0a837161bb 100644 --- a/src/calibre/gui2/dnd.py +++ b/src/calibre/gui2/dnd.py @@ -12,7 +12,7 @@ from urlparse import urlparse, urlunparse from threading import Thread from Queue import Queue, Empty -from PyQt4.Qt import QPixmap, Qt, QDialog, QLabel, QVBoxLayout, \ +from PyQt5.Qt import QPixmap, Qt, QDialog, QLabel, QVBoxLayout, \ QDialogButtonBox, QProgressBar, QTimer from calibre.constants import DEBUG, iswindows diff --git a/src/calibre/gui2/email.py b/src/calibre/gui2/email.py index 4d4859dab0..eecc63445d 100644 --- a/src/calibre/gui2/email.py +++ b/src/calibre/gui2/email.py @@ -13,7 +13,7 @@ from threading import Thread from itertools import repeat from collections import defaultdict -from PyQt4.Qt import ( +from PyQt5.Qt import ( Qt, QDialog, QGridLayout, QIcon, QListWidget, QDialogButtonBox, QListWidgetItem, QLabel, QLineEdit, QPushButton) @@ -479,7 +479,7 @@ class EmailMixin(object): # {{{ # }}} if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) # noqa print (select_recipients()) diff --git a/src/calibre/gui2/font_family_chooser.py b/src/calibre/gui2/font_family_chooser.py index 9900578fd9..d60d4175e5 100644 --- a/src/calibre/gui2/font_family_chooser.py +++ b/src/calibre/gui2/font_family_chooser.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import os, shutil -from PyQt4.Qt import (QFontInfo, QFontMetrics, Qt, QFont, QFontDatabase, QPen, +from PyQt5.Qt import (QFontInfo, QFontMetrics, Qt, QFont, QFontDatabase, QPen, QStyledItemDelegate, QSize, QStyle, QStringListModel, pyqtSignal, QDialog, QVBoxLayout, QApplication, QFontComboBox, QPushButton, QToolButton, QGridLayout, QListView, QWidget, QDialogButtonBox, QIcon, diff --git a/src/calibre/gui2/init.py b/src/calibre/gui2/init.py index 23188aa4ab..57cb2a4c3f 100644 --- a/src/calibre/gui2/init.py +++ b/src/calibre/gui2/init.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import functools -from PyQt4.Qt import (Qt, QApplication, QStackedWidget, QMenu, QTimer, +from PyQt5.Qt import (Qt, QApplication, QStackedWidget, QMenu, QTimer, QSize, QSizePolicy, QStatusBar, QLabel, QFont, QAction, QTabBar) from calibre.utils.config import prefs diff --git a/src/calibre/gui2/job_indicator.py b/src/calibre/gui2/job_indicator.py index 3767c0cfcf..ee19705871 100644 --- a/src/calibre/gui2/job_indicator.py +++ b/src/calibre/gui2/job_indicator.py @@ -7,7 +7,7 @@ __license__ = 'GPL v3' __copyright__ = '2012, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QPainter, Qt, QWidget, QPropertyAnimation, QRect, QPoint, +from PyQt5.Qt import (QPainter, Qt, QWidget, QPropertyAnimation, QRect, QPoint, QColor, QEasingCurve, QBrush, QPainterPath, QPointF, QPalette) @@ -41,7 +41,7 @@ class Pointer(QWidget): self.color.setAlpha(100) self.brush = QBrush(self.color, Qt.SolidPattern) - # from PyQt4.Qt import QTimer + # from PyQt5.Qt import QTimer # QTimer.singleShot(1000, self.start) @property diff --git a/src/calibre/gui2/jobs.py b/src/calibre/gui2/jobs.py index 9fe0091838..f33fdd56bd 100644 --- a/src/calibre/gui2/jobs.py +++ b/src/calibre/gui2/jobs.py @@ -10,7 +10,7 @@ Job management. import re, time from Queue import Empty, Queue -from PyQt4.Qt import (QAbstractTableModel, QVariant, QModelIndex, Qt, +from PyQt5.Qt import (QAbstractTableModel, QVariant, QModelIndex, Qt, QTimer, pyqtSignal, QIcon, QDialog, QAbstractItemDelegate, QApplication, QSize, QStyleOptionProgressBarV2, QString, QStyle, QToolTip, QFrame, QHBoxLayout, QVBoxLayout, QSizePolicy, QLabel, QCoreApplication, QAction, diff --git a/src/calibre/gui2/keyboard.py b/src/calibre/gui2/keyboard.py index c781c39f3c..e38a2a0c4b 100644 --- a/src/calibre/gui2/keyboard.py +++ b/src/calibre/gui2/keyboard.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' from collections import OrderedDict from functools import partial -from PyQt4.Qt import (QObject, QKeySequence, QAbstractItemModel, QModelIndex, +from PyQt5.Qt import (QObject, QKeySequence, QAbstractItemModel, QModelIndex, Qt, QStyledItemDelegate, QTextDocument, QStyle, pyqtSignal, QFrame, QApplication, QSize, QRectF, QWidget, QTreeView, QGridLayout, QLabel, QRadioButton, QPushButton, QToolButton, QIcon) diff --git a/src/calibre/gui2/layout.py b/src/calibre/gui2/layout.py index f3dffa7436..a8e5562dc6 100644 --- a/src/calibre/gui2/layout.py +++ b/src/calibre/gui2/layout.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import (QIcon, Qt, QWidget, QSize, +from PyQt5.Qt import (QIcon, Qt, QWidget, QSize, pyqtSignal, QToolButton, QMenu, QAction, QObject, QVBoxLayout, QSizePolicy, QLabel, QHBoxLayout, QActionGroup) diff --git a/src/calibre/gui2/library/alternate_views.py b/src/calibre/gui2/library/alternate_views.py index 5d3917a557..25c90f9a0d 100644 --- a/src/calibre/gui2/library/alternate_views.py +++ b/src/calibre/gui2/library/alternate_views.py @@ -13,7 +13,7 @@ from Queue import LifoQueue from functools import wraps, partial from textwrap import wrap -from PyQt4.Qt import ( +from PyQt5.Qt import ( QListView, QSize, QStyledItemDelegate, QModelIndex, Qt, QImage, pyqtSignal, QTimer, QPalette, QColor, QItemSelection, QPixmap, QMenu, QApplication, QMimeData, QUrl, QDrag, QPoint, QPainter, QRect, pyqtProperty, QEvent, diff --git a/src/calibre/gui2/library/caches.py b/src/calibre/gui2/library/caches.py index b38448106e..a31fa2924c 100644 --- a/src/calibre/gui2/library/caches.py +++ b/src/calibre/gui2/library/caches.py @@ -9,7 +9,7 @@ __copyright__ = '2013, Kovid Goyal ' from threading import Lock, current_thread from collections import OrderedDict -from PyQt4.Qt import QImage, QPixmap +from PyQt5.Qt import QImage, QPixmap from calibre.db.utils import ThumbnailCache as TC diff --git a/src/calibre/gui2/library/delegates.py b/src/calibre/gui2/library/delegates.py index 57440b5356..8c104e49df 100644 --- a/src/calibre/gui2/library/delegates.py +++ b/src/calibre/gui2/library/delegates.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import sys -from PyQt4.Qt import (Qt, QApplication, QStyle, QIcon, QDoubleSpinBox, QStyleOptionViewItemV4, +from PyQt5.Qt import (Qt, QApplication, QStyle, QIcon, QDoubleSpinBox, QStyleOptionViewItemV4, QVariant, QSpinBox, QStyledItemDelegate, QComboBox, QTextDocument, QSize, QAbstractTextDocumentLayout, QFont, QFontInfo, QDate, QDateTimeEdit, QDateTime) diff --git a/src/calibre/gui2/library/models.py b/src/calibre/gui2/library/models.py index 5226e5e55c..4cbe5dc434 100644 --- a/src/calibre/gui2/library/models.py +++ b/src/calibre/gui2/library/models.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import functools, re, os, traceback, errno, time from collections import defaultdict, namedtuple -from PyQt4.Qt import (QAbstractTableModel, Qt, pyqtSignal, QIcon, QImage, +from PyQt5.Qt import (QAbstractTableModel, Qt, pyqtSignal, QIcon, QImage, QModelIndex, QVariant, QDateTime, QColor, QPixmap, QPainter) from calibre.gui2 import NONE, error_dialog diff --git a/src/calibre/gui2/library/views.py b/src/calibre/gui2/library/views.py index 26da246299..44d83adf53 100644 --- a/src/calibre/gui2/library/views.py +++ b/src/calibre/gui2/library/views.py @@ -10,7 +10,7 @@ from functools import partial from future_builtins import map from collections import OrderedDict -from PyQt4.Qt import ( +from PyQt5.Qt import ( QTableView, Qt, QAbstractItemView, QMenu, pyqtSignal, QFont, QModelIndex, QIcon, QItemSelection, QMimeData, QDrag, QStyle, QPoint, QUrl, QHeaderView, QStyleOptionHeader) diff --git a/src/calibre/gui2/lrf_renderer/bookview.py b/src/calibre/gui2/lrf_renderer/bookview.py index 108a20e917..033e19b220 100644 --- a/src/calibre/gui2/lrf_renderer/bookview.py +++ b/src/calibre/gui2/lrf_renderer/bookview.py @@ -1,8 +1,8 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from PyQt4.QtGui import QGraphicsView -from PyQt4.QtCore import QSize +from PyQt5.QtGui import QGraphicsView +from PyQt5.QtCore import QSize class BookView(QGraphicsView): diff --git a/src/calibre/gui2/lrf_renderer/document.py b/src/calibre/gui2/lrf_renderer/document.py index 970823beee..08251d6436 100644 --- a/src/calibre/gui2/lrf_renderer/document.py +++ b/src/calibre/gui2/lrf_renderer/document.py @@ -2,8 +2,8 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' import collections, itertools, glob -from PyQt4.QtCore import Qt, QByteArray, pyqtSignal -from PyQt4.QtGui import QGraphicsRectItem, QGraphicsScene, QPen, \ +from PyQt5.QtCore import Qt, QByteArray, pyqtSignal +from PyQt5.QtGui import QGraphicsRectItem, QGraphicsScene, QPen, \ QBrush, QColor, QFontDatabase, \ QGraphicsItem, QGraphicsLineItem diff --git a/src/calibre/gui2/lrf_renderer/main.py b/src/calibre/gui2/lrf_renderer/main.py index d4cab382f8..b263d1fcdd 100644 --- a/src/calibre/gui2/lrf_renderer/main.py +++ b/src/calibre/gui2/lrf_renderer/main.py @@ -2,8 +2,8 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' import sys, logging, os, traceback, time -from PyQt4.QtGui import QKeySequence, QPainter, QDialog, QSpinBox, QSlider, QIcon -from PyQt4.QtCore import Qt, QCoreApplication, QThread +from PyQt5.QtGui import QKeySequence, QPainter, QDialog, QSpinBox, QSlider, QIcon +from PyQt5.QtCore import Qt, QCoreApplication, QThread from calibre import __appname__, setup_cli_handlers, islinux, isbsd from calibre.ebooks.lrf.lrfparser import LRFDocument @@ -162,7 +162,7 @@ class Main(MainWindow, Ui_MainWindow): self.renderer.lrf.device_info.height hdelta = self.tool_bar.height()+3 - from PyQt4.QtGui import QScrollBar + from PyQt5.QtGui import QScrollBar s = QScrollBar(self) scrollbar_adjust = min(s.width(), s.height()) self.graphics_view.resize_for(width+scrollbar_adjust, height+scrollbar_adjust) diff --git a/src/calibre/gui2/lrf_renderer/text.py b/src/calibre/gui2/lrf_renderer/text.py index 2724ca117b..2b9197daa2 100644 --- a/src/calibre/gui2/lrf_renderer/text.py +++ b/src/calibre/gui2/lrf_renderer/text.py @@ -2,8 +2,8 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' import sys, collections, operator, copy, re -from PyQt4.QtCore import Qt, QRectF, QString -from PyQt4.QtGui import QFont, QColor, QPixmap, QGraphicsPixmapItem, \ +from PyQt5.QtCore import Qt, QRectF, QString +from PyQt5.QtGui import QFont, QColor, QPixmap, QGraphicsPixmapItem, \ QGraphicsItem, QFontMetrics, QPen, QBrush, QGraphicsRectItem from calibre.ebooks.lrf.fonts import LIBERATION_FONT_MAP diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index cc311431d1..b1a3f7234e 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -5,7 +5,7 @@ import sys, os, time, socket, traceback from functools import partial import apsw -from PyQt4.Qt import (QCoreApplication, QIcon, QObject, QTimer, +from PyQt5.Qt import (QCoreApplication, QIcon, QObject, QTimer, QPixmap, QSplashScreen, QApplication) from calibre import prints, plugins, force_unicode @@ -130,7 +130,7 @@ def get_library_path(parent=None): if iswindows: base = winutil.special_folder_path(winutil.CSIDL_PERSONAL) if not base or not os.path.exists(base): - from PyQt4.Qt import QDir + from PyQt5.Qt import QDir base = unicode(QDir.homePath()).replace('/', os.sep) candidate = choose_dir(None, 'choose calibre library', _('Choose a location for your calibre e-book library'), @@ -480,7 +480,7 @@ if __name__ == '__main__': if not iswindows: raise tb = traceback.format_exc() - from PyQt4.QtGui import QErrorMessage + from PyQt5.QtGui import QErrorMessage logfile = os.path.join(os.path.expanduser('~'), 'calibre.log') if os.path.exists(logfile): log = open(logfile).read().decode('utf-8', 'ignore') diff --git a/src/calibre/gui2/main_window.py b/src/calibre/gui2/main_window.py index d73cb8d565..8bd466dede 100644 --- a/src/calibre/gui2/main_window.py +++ b/src/calibre/gui2/main_window.py @@ -7,7 +7,7 @@ __copyright__ = '2008, Kovid Goyal ' import StringIO, traceback, sys, gc -from PyQt4.Qt import (QMainWindow, QTimer, QAction, QMenu, QMenuBar, QIcon, +from PyQt5.Qt import (QMainWindow, QTimer, QAction, QMenu, QMenuBar, QIcon, pyqtSignal, QObject) from calibre.utils.config import OptionParser from calibre.gui2 import error_dialog diff --git a/src/calibre/gui2/metadata/basic_widgets.py b/src/calibre/gui2/metadata/basic_widgets.py index b7a0afe52a..bded17d40f 100644 --- a/src/calibre/gui2/metadata/basic_widgets.py +++ b/src/calibre/gui2/metadata/basic_widgets.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import textwrap, re, os, shutil -from PyQt4.Qt import ( +from PyQt5.Qt import ( Qt, QDateTimeEdit, pyqtSignal, QMessageBox, QIcon, QToolButton, QWidget, QLabel, QGridLayout, QApplication, QDoubleSpinBox, QListWidgetItem, QSize, QPixmap, QDialog, QMenu, QSpinBox, QLineEdit, QSizePolicy, diff --git a/src/calibre/gui2/metadata/bulk_download.py b/src/calibre/gui2/metadata/bulk_download.py index e3b0203e82..592072d8be 100644 --- a/src/calibre/gui2/metadata/bulk_download.py +++ b/src/calibre/gui2/metadata/bulk_download.py @@ -11,7 +11,7 @@ import os, time, shutil from functools import partial from threading import Thread -from PyQt4.Qt import (QIcon, QDialog, +from PyQt5.Qt import (QIcon, QDialog, QDialogButtonBox, QLabel, QGridLayout, QPixmap, Qt) from calibre.gui2.threaded_jobs import ThreadedJob diff --git a/src/calibre/gui2/metadata/config.py b/src/calibre/gui2/metadata/config.py index 6138f27090..eae4387fcb 100644 --- a/src/calibre/gui2/metadata/config.py +++ b/src/calibre/gui2/metadata/config.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import textwrap -from PyQt4.Qt import (QWidget, QGridLayout, QGroupBox, QListView, Qt, QSpinBox, +from PyQt5.Qt import (QWidget, QGridLayout, QGroupBox, QListView, Qt, QSpinBox, QDoubleSpinBox, QCheckBox, QLineEdit, QComboBox, QLabel, QVariant) from calibre.gui2.preferences.metadata_sources import FieldsModel as FM diff --git a/src/calibre/gui2/metadata/diff.py b/src/calibre/gui2/metadata/diff.py index 365f36354d..5ee2b421d8 100644 --- a/src/calibre/gui2/metadata/diff.py +++ b/src/calibre/gui2/metadata/diff.py @@ -11,7 +11,7 @@ from collections import OrderedDict, namedtuple from functools import partial from future_builtins import zip -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QWidget, QGridLayout, QLineEdit, QLabel, QToolButton, QIcon, QVBoxLayout, QDialogButtonBox, QApplication, pyqtSignal, QFont, QPixmap, QSize, QPainter, Qt, QColor, QPen, QSizePolicy, QScrollArea, QFrame) diff --git a/src/calibre/gui2/metadata/pdf_covers.py b/src/calibre/gui2/metadata/pdf_covers.py index e04a618103..839e157197 100644 --- a/src/calibre/gui2/metadata/pdf_covers.py +++ b/src/calibre/gui2/metadata/pdf_covers.py @@ -12,7 +12,7 @@ from threading import Thread from glob import glob import sip -from PyQt4.Qt import (QDialog, QApplication, QLabel, QGridLayout, +from PyQt5.Qt import (QDialog, QApplication, QLabel, QGridLayout, QDialogButtonBox, Qt, pyqtSignal, QListWidget, QListWidgetItem, QSize, QIcon) diff --git a/src/calibre/gui2/metadata/single.py b/src/calibre/gui2/metadata/single.py index 40a7b8d822..02d14c44be 100644 --- a/src/calibre/gui2/metadata/single.py +++ b/src/calibre/gui2/metadata/single.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' import os, errno from datetime import datetime -from PyQt4.Qt import (Qt, QVBoxLayout, QHBoxLayout, QWidget, QPushButton, +from PyQt5.Qt import (Qt, QVBoxLayout, QHBoxLayout, QWidget, QPushButton, QGridLayout, pyqtSignal, QDialogButtonBox, QScrollArea, QFont, QTabWidget, QIcon, QToolButton, QSplitter, QGroupBox, QSpacerItem, QSizePolicy, QFrame, QSize, QKeySequence, QMenu, QShortcut) diff --git a/src/calibre/gui2/metadata/single_download.py b/src/calibre/gui2/metadata/single_download.py index bf5593090d..f923db5964 100644 --- a/src/calibre/gui2/metadata/single_download.py +++ b/src/calibre/gui2/metadata/single_download.py @@ -16,13 +16,13 @@ from operator import attrgetter from Queue import Queue, Empty from io import BytesIO -from PyQt4.Qt import ( +from PyQt5.Qt import ( QStyledItemDelegate, QTextDocument, QRectF, QIcon, Qt, QApplication, QDialog, QVBoxLayout, QLabel, QDialogButtonBox, QStyle, QStackedWidget, QWidget, QTableView, QGridLayout, QFontInfo, QPalette, QTimer, pyqtSignal, QAbstractTableModel, QVariant, QSize, QListView, QPixmap, QModelIndex, QAbstractListModel, QColor, QRect, QTextBrowser, QStringListModel, QMenu, QCursor) -from PyQt4.QtWebKit import QWebView +from PyQt5.QtWebKit import QWebView from calibre.customize.ui import metadata_plugins from calibre.ebooks.metadata import authors_to_string diff --git a/src/calibre/gui2/notify.py b/src/calibre/gui2/notify.py index c3651b92c6..3bef5654cc 100644 --- a/src/calibre/gui2/notify.py +++ b/src/calibre/gui2/notify.py @@ -162,7 +162,7 @@ if __name__ == '__main__': n = FDONotifier() n('hello') ''' - from PyQt4.Qt import QApplication, QSystemTrayIcon, QIcon + from PyQt5.Qt import QApplication, QSystemTrayIcon, QIcon app = QApplication([]) ic = QIcon(I('notify.png')) tray = QSystemTrayIcon(ic) diff --git a/src/calibre/gui2/preferences/__init__.py b/src/calibre/gui2/preferences/__init__.py index 733d5b2255..71fd78bb4a 100644 --- a/src/calibre/gui2/preferences/__init__.py +++ b/src/calibre/gui2/preferences/__init__.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import textwrap -from PyQt4.Qt import (QWidget, pyqtSignal, QCheckBox, QAbstractSpinBox, +from PyQt5.Qt import (QWidget, pyqtSignal, QCheckBox, QAbstractSpinBox, QLineEdit, QComboBox, QVariant, Qt, QIcon, QDialog, QVBoxLayout, QDialogButtonBox) @@ -385,7 +385,7 @@ def test_widget(category, name, gui=None): show_config_widget(category, name, gui=gui, show_restart_msg=True) def test_all(): - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) app gui = init_gui() diff --git a/src/calibre/gui2/preferences/adding.py b/src/calibre/gui2/preferences/adding.py index 5bb19c8df7..24e93e9e38 100644 --- a/src/calibre/gui2/preferences/adding.py +++ b/src/calibre/gui2/preferences/adding.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import os -from PyQt4.Qt import Qt +from PyQt5.Qt import Qt from calibre.gui2.preferences import ConfigWidgetBase, test_widget, \ CommaSeparatedList, AbortCommit @@ -136,7 +136,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): return changed or ret if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Import/Export', 'Adding') diff --git a/src/calibre/gui2/preferences/behavior.py b/src/calibre/gui2/preferences/behavior.py index 820e93296b..30377cd7ff 100644 --- a/src/calibre/gui2/preferences/behavior.py +++ b/src/calibre/gui2/preferences/behavior.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import re -from PyQt4.Qt import Qt, QVariant, QListWidgetItem +from PyQt5.Qt import Qt, QVariant, QListWidgetItem from calibre.gui2.preferences import ConfigWidgetBase, test_widget, Setting from calibre.gui2.preferences.behavior_ui import Ui_Form @@ -170,7 +170,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): _('Confirmation dialogs have all been reset'), show=True) if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Interface', 'Behavior') diff --git a/src/calibre/gui2/preferences/coloring.py b/src/calibre/gui2/preferences/coloring.py index c5b88531b6..6c6f85c60f 100644 --- a/src/calibre/gui2/preferences/coloring.py +++ b/src/calibre/gui2/preferences/coloring.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' import os, textwrap from functools import partial -from PyQt4.Qt import (QWidget, QDialog, QLabel, QGridLayout, QComboBox, QSize, +from PyQt5.Qt import (QWidget, QDialog, QLabel, QGridLayout, QComboBox, QSize, QLineEdit, QIntValidator, QDoubleValidator, QFrame, Qt, QIcon, QScrollArea, QPushButton, QVBoxLayout, QDialogButtonBox, QToolButton, QListView, QAbstractListModel, pyqtSignal, QSizePolicy, QSpacerItem, diff --git a/src/calibre/gui2/preferences/columns.py b/src/calibre/gui2/preferences/columns.py index e82b292ffe..0f0068c72a 100644 --- a/src/calibre/gui2/preferences/columns.py +++ b/src/calibre/gui2/preferences/columns.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import copy, sys -from PyQt4.Qt import Qt, QVariant, QListWidgetItem, QIcon +from PyQt5.Qt import Qt, QVariant, QListWidgetItem, QIcon from calibre.gui2.preferences import ConfigWidgetBase, test_widget from calibre.gui2.preferences.columns_ui import Ui_Form @@ -174,7 +174,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Interface', 'Custom Columns') diff --git a/src/calibre/gui2/preferences/conversion.py b/src/calibre/gui2/preferences/conversion.py index 6c9e1f8f5b..ca7c9a7038 100644 --- a/src/calibre/gui2/preferences/conversion.py +++ b/src/calibre/gui2/preferences/conversion.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import importlib -from PyQt4.Qt import QIcon, Qt, QStringListModel, QVariant +from PyQt5.Qt import QIcon, Qt, QStringListModel, QVariant from calibre.gui2.preferences import ConfigWidgetBase, test_widget, AbortCommit from calibre.ebooks.conversion.plumber import Plumber @@ -116,7 +116,7 @@ class OutputOptions(Base): continue if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) #test_widget('Conversion', 'Input Options') #test_widget('Conversion', 'Common Options') diff --git a/src/calibre/gui2/preferences/create_custom_column.py b/src/calibre/gui2/preferences/create_custom_column.py index c2f21bd2bf..cd962b2fc8 100644 --- a/src/calibre/gui2/preferences/create_custom_column.py +++ b/src/calibre/gui2/preferences/create_custom_column.py @@ -6,7 +6,7 @@ __copyright__ = '2010, Kovid Goyal ' import re from functools import partial -from PyQt4.Qt import QDialog, Qt, QListWidgetItem, QVariant, QColor, QIcon +from PyQt5.Qt import QDialog, Qt, QListWidgetItem, QVariant, QColor, QIcon from calibre.gui2.preferences.create_custom_column_ui import Ui_QCreateCustomColumn from calibre.gui2 import error_dialog diff --git a/src/calibre/gui2/preferences/device_debug.py b/src/calibre/gui2/preferences/device_debug.py index 62cb5e4aaf..5fd36e0985 100644 --- a/src/calibre/gui2/preferences/device_debug.py +++ b/src/calibre/gui2/preferences/device_debug.py @@ -7,7 +7,7 @@ __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog, QVBoxLayout, QPlainTextEdit, QTimer, \ +from PyQt5.Qt import QDialog, QVBoxLayout, QPlainTextEdit, QTimer, \ QDialogButtonBox, QPushButton, QApplication, QIcon from calibre.gui2 import error_dialog diff --git a/src/calibre/gui2/preferences/device_user_defined.py b/src/calibre/gui2/preferences/device_user_defined.py index 1448d8c11b..96f1fb067c 100644 --- a/src/calibre/gui2/preferences/device_user_defined.py +++ b/src/calibre/gui2/preferences/device_user_defined.py @@ -7,7 +7,7 @@ __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog, QVBoxLayout, QPlainTextEdit, QTimer, \ +from PyQt5.Qt import QDialog, QVBoxLayout, QPlainTextEdit, QTimer, \ QDialogButtonBox, QPushButton, QApplication, QIcon, QMessageBox from calibre.constants import iswindows diff --git a/src/calibre/gui2/preferences/emailp.py b/src/calibre/gui2/preferences/emailp.py index 03d803509c..04ebbff42f 100644 --- a/src/calibre/gui2/preferences/emailp.py +++ b/src/calibre/gui2/preferences/emailp.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import textwrap -from PyQt4.Qt import QAbstractTableModel, QVariant, QFont, Qt +from PyQt5.Qt import QAbstractTableModel, QVariant, QFont, Qt from calibre.gui2.preferences import ConfigWidgetBase, test_widget, \ @@ -228,7 +228,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Sharing', 'Email') diff --git a/src/calibre/gui2/preferences/history.py b/src/calibre/gui2/preferences/history.py index c1c68642f6..798a275616 100644 --- a/src/calibre/gui2/preferences/history.py +++ b/src/calibre/gui2/preferences/history.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import textwrap -from PyQt4.Qt import QComboBox, QStringList, Qt +from PyQt5.Qt import QComboBox, QStringList, Qt from calibre.gui2 import config as gui_conf diff --git a/src/calibre/gui2/preferences/ignored_devices.py b/src/calibre/gui2/preferences/ignored_devices.py index e0c0ae1dc1..345740053e 100644 --- a/src/calibre/gui2/preferences/ignored_devices.py +++ b/src/calibre/gui2/preferences/ignored_devices.py @@ -7,7 +7,7 @@ __license__ = 'GPL v3' __copyright__ = '2012, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QLabel, QVBoxLayout, QListWidget, QListWidgetItem, Qt, +from PyQt5.Qt import (QLabel, QVBoxLayout, QListWidget, QListWidgetItem, Qt, QIcon) from calibre.customize.ui import enable_plugin @@ -97,7 +97,7 @@ class ConfigWidget(ConfigWidgetBase): return True # Restart required if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Sharing', 'Ignored Devices') diff --git a/src/calibre/gui2/preferences/keyboard.py b/src/calibre/gui2/preferences/keyboard.py index 24ef6cf195..c7f3cd7bdb 100644 --- a/src/calibre/gui2/preferences/keyboard.py +++ b/src/calibre/gui2/preferences/keyboard.py @@ -7,7 +7,7 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QVBoxLayout +from PyQt5.Qt import QVBoxLayout from calibre.gui2.preferences import (ConfigWidgetBase, test_widget) from calibre.gui2.keyboard import ShortcutConfig @@ -41,7 +41,7 @@ class ConfigWidget(ConfigWidgetBase): self.conf_widget.highlight_group(group_name) if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Advanced', 'Keyboard') diff --git a/src/calibre/gui2/preferences/look_feel.py b/src/calibre/gui2/preferences/look_feel.py index 8bb0da83b4..836d4ff141 100644 --- a/src/calibre/gui2/preferences/look_feel.py +++ b/src/calibre/gui2/preferences/look_feel.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' from threading import Thread from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( QApplication, QFont, QFontInfo, QFontDialog, QColorDialog, QPainter, QAbstractListModel, Qt, QIcon, QKeySequence, QColor, pyqtSignal, QWidget, QSizePolicy, QBrush, QPixmap, QSize, QPushButton, QVBoxLayout) diff --git a/src/calibre/gui2/preferences/main.py b/src/calibre/gui2/preferences/main.py index 5f437e71a1..e850ec2fa3 100644 --- a/src/calibre/gui2/preferences/main.py +++ b/src/calibre/gui2/preferences/main.py @@ -9,7 +9,7 @@ import textwrap from functools import partial from collections import OrderedDict -from PyQt4.Qt import (QMainWindow, Qt, QIcon, QStatusBar, QFont, QWidget, +from PyQt5.Qt import (QMainWindow, Qt, QIcon, QStatusBar, QFont, QWidget, QScrollArea, QStackedWidget, QVBoxLayout, QLabel, QFrame, QKeySequence, QToolBar, QSize, pyqtSignal, QPixmap, QToolButton, QAction, QDialogButtonBox, QHBoxLayout) diff --git a/src/calibre/gui2/preferences/metadata_sources.py b/src/calibre/gui2/preferences/metadata_sources.py index 189c34907d..f192622907 100644 --- a/src/calibre/gui2/preferences/metadata_sources.py +++ b/src/calibre/gui2/preferences/metadata_sources.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' from operator import attrgetter -from PyQt4.Qt import (QAbstractTableModel, Qt, QAbstractListModel, QWidget, +from PyQt5.Qt import (QAbstractTableModel, Qt, QAbstractListModel, QWidget, pyqtSignal, QVBoxLayout, QDialogButtonBox, QFrame, QLabel, QIcon) from calibre.gui2.preferences import ConfigWidgetBase, test_widget @@ -357,7 +357,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): return ConfigWidgetBase.commit(self) if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Sharing', 'Metadata download') diff --git a/src/calibre/gui2/preferences/misc.py b/src/calibre/gui2/preferences/misc.py index 1bf9db5a17..c4e8c92a43 100644 --- a/src/calibre/gui2/preferences/misc.py +++ b/src/calibre/gui2/preferences/misc.py @@ -80,7 +80,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Advanced', 'Misc') diff --git a/src/calibre/gui2/preferences/plugboard.py b/src/calibre/gui2/preferences/plugboard.py index de0f5e8f9f..0dc8e48f96 100644 --- a/src/calibre/gui2/preferences/plugboard.py +++ b/src/calibre/gui2/preferences/plugboard.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import copy -from PyQt4.Qt import Qt, QComboBox, QListWidgetItem +from PyQt5.Qt import Qt, QComboBox, QListWidgetItem from calibre.customize.ui import is_disabled from calibre.gui2 import error_dialog, question_dialog, warning_dialog @@ -371,7 +371,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Import/Export', 'Plugboard') diff --git a/src/calibre/gui2/preferences/plugins.py b/src/calibre/gui2/preferences/plugins.py index 53e29daa00..2bc07967e2 100644 --- a/src/calibre/gui2/preferences/plugins.py +++ b/src/calibre/gui2/preferences/plugins.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import textwrap, os from collections import OrderedDict -from PyQt4.Qt import (Qt, QModelIndex, QAbstractItemModel, QVariant, QIcon, +from PyQt5.Qt import (Qt, QModelIndex, QAbstractItemModel, QVariant, QIcon, QBrush) from calibre.gui2.preferences import ConfigWidgetBase, test_widget @@ -447,7 +447,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): install_plugin(plugin) if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Advanced', 'Plugins') diff --git a/src/calibre/gui2/preferences/save_template.py b/src/calibre/gui2/preferences/save_template.py index 145e014800..be19fa3be4 100644 --- a/src/calibre/gui2/preferences/save_template.py +++ b/src/calibre/gui2/preferences/save_template.py @@ -6,7 +6,7 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QWidget, pyqtSignal +from PyQt5.Qt import QWidget, pyqtSignal from calibre.gui2 import error_dialog, question_dialog from calibre.gui2.preferences.save_template_ui import Ui_Form diff --git a/src/calibre/gui2/preferences/saving.py b/src/calibre/gui2/preferences/saving.py index e1a235803d..5065fd4592 100644 --- a/src/calibre/gui2/preferences/saving.py +++ b/src/calibre/gui2/preferences/saving.py @@ -53,7 +53,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Import/Export', 'Saving') diff --git a/src/calibre/gui2/preferences/search.py b/src/calibre/gui2/preferences/search.py index fd68cc0e9d..8b52ac6f74 100644 --- a/src/calibre/gui2/preferences/search.py +++ b/src/calibre/gui2/preferences/search.py @@ -5,7 +5,7 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QApplication +from PyQt5.Qt import QApplication from calibre.gui2.preferences import ConfigWidgetBase, test_widget, \ CommaSeparatedList diff --git a/src/calibre/gui2/preferences/sending.py b/src/calibre/gui2/preferences/sending.py index 690962c024..7bf354d22e 100644 --- a/src/calibre/gui2/preferences/sending.py +++ b/src/calibre/gui2/preferences/sending.py @@ -57,7 +57,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): return ConfigWidgetBase.commit(self) if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Import/Export', 'Sending') diff --git a/src/calibre/gui2/preferences/server.py b/src/calibre/gui2/preferences/server.py index 269eec1a8a..28e7a3b6be 100644 --- a/src/calibre/gui2/preferences/server.py +++ b/src/calibre/gui2/preferences/server.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import time -from PyQt4.Qt import Qt, QUrl, QDialog, QSize, QVBoxLayout, QLabel, \ +from PyQt5.Qt import Qt, QUrl, QDialog, QSize, QVBoxLayout, QLabel, \ QPlainTextEdit, QDialogButtonBox, QTimer from calibre.gui2.preferences import ConfigWidgetBase, test_widget @@ -144,7 +144,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Sharing', 'Server') diff --git a/src/calibre/gui2/preferences/template_functions.py b/src/calibre/gui2/preferences/template_functions.py index 241d5eef8c..7c667cec1d 100644 --- a/src/calibre/gui2/preferences/template_functions.py +++ b/src/calibre/gui2/preferences/template_functions.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' import json, traceback -from PyQt4.Qt import QDialogButtonBox +from PyQt5.Qt import QDialogButtonBox from calibre.gui2 import error_dialog, warning_dialog from calibre.gui2.preferences import ConfigWidgetBase, test_widget @@ -229,7 +229,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Advanced', 'TemplateFunctions') diff --git a/src/calibre/gui2/preferences/texture_chooser.py b/src/calibre/gui2/preferences/texture_chooser.py index e10d7d7233..ac9464e940 100644 --- a/src/calibre/gui2/preferences/texture_chooser.py +++ b/src/calibre/gui2/preferences/texture_chooser.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' import glob, os, string, shutil from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QVBoxLayout, QListWidget, QListWidgetItem, Qt, QIcon, QApplication, QSize, QPixmap, QDialogButtonBox, QTimer, QLabel) diff --git a/src/calibre/gui2/preferences/toolbar.py b/src/calibre/gui2/preferences/toolbar.py index 8aa85af3d9..3b45805121 100644 --- a/src/calibre/gui2/preferences/toolbar.py +++ b/src/calibre/gui2/preferences/toolbar.py @@ -7,7 +7,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import QAbstractListModel, Qt, QIcon, \ +from PyQt5.Qt import QAbstractListModel, Qt, QIcon, \ QVariant, QItemSelectionModel from calibre.gui2.preferences.toolbar_ui import Ui_Form @@ -349,7 +349,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): if __name__ == '__main__': - from PyQt4.Qt import QApplication + from PyQt5.Qt import QApplication app = QApplication([]) test_widget('Interface', 'Toolbar') diff --git a/src/calibre/gui2/preferences/tweaks.py b/src/calibre/gui2/preferences/tweaks.py index 4b6faf2da8..eb57a64d70 100644 --- a/src/calibre/gui2/preferences/tweaks.py +++ b/src/calibre/gui2/preferences/tweaks.py @@ -19,7 +19,7 @@ from calibre.utils.icu import lower from calibre.utils.search_query_parser import (ParseException, SearchQueryParser) -from PyQt4.Qt import (QAbstractListModel, Qt, QStyledItemDelegate, QStyle, +from PyQt5.Qt import (QAbstractListModel, Qt, QStyledItemDelegate, QStyle, QStyleOptionViewItem, QFont, QDialogButtonBox, QDialog, QApplication, QVBoxLayout, QPlainTextEdit, QLabel, QModelIndex, QMenu, QIcon) diff --git a/src/calibre/gui2/proceed.py b/src/calibre/gui2/proceed.py index aeb26e6aac..07b9912cb3 100644 --- a/src/calibre/gui2/proceed.py +++ b/src/calibre/gui2/proceed.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' from collections import namedtuple -from PyQt4.Qt import (QDialog, Qt, QLabel, QGridLayout, QPixmap, +from PyQt5.Qt import (QDialog, Qt, QLabel, QGridLayout, QPixmap, QDialogButtonBox, QApplication, QSize, pyqtSignal, QIcon, QPlainTextEdit, QCheckBox) @@ -239,7 +239,7 @@ class ProceedQuestion(QDialog): def main(): from calibre.gui2 import Application - from PyQt4.QtGui import QMainWindow + from PyQt5.QtGui import QMainWindow app = Application([]) w = QMainWindow() w.show() diff --git a/src/calibre/gui2/search_box.py b/src/calibre/gui2/search_box.py index 5f50af0e19..4e9ebfaadb 100644 --- a/src/calibre/gui2/search_box.py +++ b/src/calibre/gui2/search_box.py @@ -10,7 +10,7 @@ import re, time from functools import partial -from PyQt4.Qt import QComboBox, Qt, QLineEdit, QStringList, pyqtSlot, QDialog, \ +from PyQt5.Qt import QComboBox, Qt, QLineEdit, QStringList, pyqtSlot, QDialog, \ pyqtSignal, QCompleter, QAction, QKeySequence, QTimer, \ QString, QIcon, QMenu diff --git a/src/calibre/gui2/search_restriction_mixin.py b/src/calibre/gui2/search_restriction_mixin.py index 4b6ef18853..a27a9cf7b4 100644 --- a/src/calibre/gui2/search_restriction_mixin.py +++ b/src/calibre/gui2/search_restriction_mixin.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( Qt, QMenu, QPoint, QIcon, QDialog, QGridLayout, QLabel, QLineEdit, QComboBox, QDialogButtonBox, QSize, QVBoxLayout, QListWidget, QStringList, QRadioButton, QAction) diff --git a/src/calibre/gui2/shortcuts.py b/src/calibre/gui2/shortcuts.py index a245db9f03..d05818cc27 100644 --- a/src/calibre/gui2/shortcuts.py +++ b/src/calibre/gui2/shortcuts.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import QAbstractListModel, Qt, QKeySequence, QListView, \ +from PyQt5.Qt import QAbstractListModel, Qt, QKeySequence, QListView, \ QHBoxLayout, QWidget, QApplication, QStyledItemDelegate, QStyle, \ QVariant, QTextDocument, QRectF, QFrame, QSize, QFont, QKeyEvent diff --git a/src/calibre/gui2/store/basic_config.py b/src/calibre/gui2/store/basic_config.py index 5e59b63694..6c9c01ca82 100644 --- a/src/calibre/gui2/store/basic_config.py +++ b/src/calibre/gui2/store/basic_config.py @@ -6,7 +6,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QWidget +from PyQt5.Qt import QWidget from calibre.gui2.store.basic_config_widget_ui import Ui_Form diff --git a/src/calibre/gui2/store/config/chooser/adv_search_builder.py b/src/calibre/gui2/store/config/chooser/adv_search_builder.py index d22554b111..2d4a2d798c 100644 --- a/src/calibre/gui2/store/config/chooser/adv_search_builder.py +++ b/src/calibre/gui2/store/config/chooser/adv_search_builder.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import re -from PyQt4.Qt import (QDialog, QDialogButtonBox) +from PyQt5.Qt import (QDialog, QDialogButtonBox) from calibre.gui2.store.config.chooser.adv_search_builder_ui import Ui_Dialog from calibre.library.caches import CONTAINS_MATCH, EQUALS_MATCH diff --git a/src/calibre/gui2/store/config/chooser/chooser_dialog.py b/src/calibre/gui2/store/config/chooser/chooser_dialog.py index c94796dc11..656e30990c 100644 --- a/src/calibre/gui2/store/config/chooser/chooser_dialog.py +++ b/src/calibre/gui2/store/config/chooser/chooser_dialog.py @@ -6,7 +6,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QDialog, QDialogButtonBox, QVBoxLayout) +from PyQt5.Qt import (QDialog, QDialogButtonBox, QVBoxLayout) from calibre.gui2.store.config.chooser.chooser_widget import StoreChooserWidget diff --git a/src/calibre/gui2/store/config/chooser/chooser_widget.py b/src/calibre/gui2/store/config/chooser/chooser_widget.py index 5e7eca8c66..0fb0ec0309 100644 --- a/src/calibre/gui2/store/config/chooser/chooser_widget.py +++ b/src/calibre/gui2/store/config/chooser/chooser_widget.py @@ -6,7 +6,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QWidget, QIcon, QDialog, QComboBox) +from PyQt5.Qt import (QWidget, QIcon, QDialog, QComboBox) from calibre.gui2.store.config.chooser.adv_search_builder import AdvSearchBuilderDialog from calibre.gui2.store.config.chooser.chooser_widget_ui import Ui_Form diff --git a/src/calibre/gui2/store/config/chooser/models.py b/src/calibre/gui2/store/config/chooser/models.py index ff8057d9d5..7be5b1e2c2 100644 --- a/src/calibre/gui2/store/config/chooser/models.py +++ b/src/calibre/gui2/store/config/chooser/models.py @@ -6,7 +6,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (Qt, QAbstractItemModel, QIcon, QVariant, QModelIndex, QSize) +from PyQt5.Qt import (Qt, QAbstractItemModel, QIcon, QVariant, QModelIndex, QSize) from calibre.gui2 import NONE from calibre.customize.ui import is_disabled, disable_plugin, enable_plugin diff --git a/src/calibre/gui2/store/config/chooser/results_view.py b/src/calibre/gui2/store/config/chooser/results_view.py index 10dff4bcdb..cf0360fb5f 100644 --- a/src/calibre/gui2/store/config/chooser/results_view.py +++ b/src/calibre/gui2/store/config/chooser/results_view.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import (Qt, QTreeView, QSize, QMenu) +from PyQt5.Qt import (Qt, QTreeView, QSize, QMenu) from calibre.customize.ui import store_plugins from calibre.gui2.metadata.single_download import RichTextDelegate diff --git a/src/calibre/gui2/store/config/search/search_widget.py b/src/calibre/gui2/store/config/search/search_widget.py index b2e55d2ad1..fe4a38a0d0 100644 --- a/src/calibre/gui2/store/config/search/search_widget.py +++ b/src/calibre/gui2/store/config/search/search_widget.py @@ -6,7 +6,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QWidget +from PyQt5.Qt import QWidget from calibre.gui2 import JSONConfig from calibre.gui2.store.config.search.search_widget_ui import Ui_Form diff --git a/src/calibre/gui2/store/opensearch_store.py b/src/calibre/gui2/store/opensearch_store.py index 5bd58d6ed0..bfff3e723f 100644 --- a/src/calibre/gui2/store/opensearch_store.py +++ b/src/calibre/gui2/store/opensearch_store.py @@ -10,7 +10,7 @@ from contextlib import closing from lxml import etree -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import (browser, guess_extension) from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/search/adv_search_builder.py b/src/calibre/gui2/store/search/adv_search_builder.py index e80d19aee4..4abba13433 100644 --- a/src/calibre/gui2/store/search/adv_search_builder.py +++ b/src/calibre/gui2/store/search/adv_search_builder.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import re -from PyQt4.Qt import (QDialog, QDialogButtonBox) +from PyQt5.Qt import (QDialog, QDialogButtonBox) from calibre.gui2.store.search.adv_search_builder_ui import Ui_Dialog from calibre.library.caches import CONTAINS_MATCH, EQUALS_MATCH diff --git a/src/calibre/gui2/store/search/models.py b/src/calibre/gui2/store/search/models.py index 026cb76d8d..6e693b1294 100644 --- a/src/calibre/gui2/store/search/models.py +++ b/src/calibre/gui2/store/search/models.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import re, string from operator import attrgetter -from PyQt4.Qt import (Qt, QAbstractItemModel, QVariant, QPixmap, QModelIndex, QSize, +from PyQt5.Qt import (Qt, QAbstractItemModel, QVariant, QPixmap, QModelIndex, QSize, pyqtSignal) from calibre.gui2 import NONE, FunctionDispatcher diff --git a/src/calibre/gui2/store/search/results_view.py b/src/calibre/gui2/store/search/results_view.py index 3957e18ef6..a18b7abb7d 100644 --- a/src/calibre/gui2/store/search/results_view.py +++ b/src/calibre/gui2/store/search/results_view.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import (pyqtSignal, QMenu, QTreeView) +from PyQt5.Qt import (pyqtSignal, QMenu, QTreeView) from calibre.gui2.metadata.single_download import RichTextDelegate from calibre.gui2.store.search.models import Matches diff --git a/src/calibre/gui2/store/search/search.py b/src/calibre/gui2/store/search/search.py index 7e39e5d513..9ec91aa1dc 100644 --- a/src/calibre/gui2/store/search/search.py +++ b/src/calibre/gui2/store/search/search.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import re from random import shuffle -from PyQt4.Qt import (Qt, QDialog, QDialogButtonBox, QTimer, QCheckBox, QLabel, +from PyQt5.Qt import (Qt, QDialog, QDialogButtonBox, QTimer, QCheckBox, QLabel, QVBoxLayout, QIcon, QWidget, QTabWidget, QGridLayout) from calibre.gui2 import JSONConfig, info_dialog, error_dialog diff --git a/src/calibre/gui2/store/stores/allegro_plugin.py b/src/calibre/gui2/store/stores/allegro_plugin.py index 61fc7dc409..32d744f95b 100644 --- a/src/calibre/gui2/store/stores/allegro_plugin.py +++ b/src/calibre/gui2/store/stores/allegro_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/amazon_ca_plugin.py b/src/calibre/gui2/store/stores/amazon_ca_plugin.py index 8c001c0b26..5f7554e361 100644 --- a/src/calibre/gui2/store/stores/amazon_ca_plugin.py +++ b/src/calibre/gui2/store/stores/amazon_ca_plugin.py @@ -11,7 +11,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/amazon_de_plugin.py b/src/calibre/gui2/store/stores/amazon_de_plugin.py index 5125b1cf51..cecb9176ee 100644 --- a/src/calibre/gui2/store/stores/amazon_de_plugin.py +++ b/src/calibre/gui2/store/stores/amazon_de_plugin.py @@ -11,7 +11,7 @@ import re from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre.gui2.store import StorePlugin from calibre import browser diff --git a/src/calibre/gui2/store/stores/amazon_es_plugin.py b/src/calibre/gui2/store/stores/amazon_es_plugin.py index b3464157e5..f4b170cbe3 100644 --- a/src/calibre/gui2/store/stores/amazon_es_plugin.py +++ b/src/calibre/gui2/store/stores/amazon_es_plugin.py @@ -11,7 +11,7 @@ import re from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre.gui2.store import StorePlugin from calibre import browser diff --git a/src/calibre/gui2/store/stores/amazon_fr_plugin.py b/src/calibre/gui2/store/stores/amazon_fr_plugin.py index ab0050d881..81c95b03c9 100644 --- a/src/calibre/gui2/store/stores/amazon_fr_plugin.py +++ b/src/calibre/gui2/store/stores/amazon_fr_plugin.py @@ -11,7 +11,7 @@ import re from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre.gui2.store import StorePlugin from calibre import browser diff --git a/src/calibre/gui2/store/stores/amazon_it_plugin.py b/src/calibre/gui2/store/stores/amazon_it_plugin.py index 3217e90710..99c738b40d 100644 --- a/src/calibre/gui2/store/stores/amazon_it_plugin.py +++ b/src/calibre/gui2/store/stores/amazon_it_plugin.py @@ -11,7 +11,7 @@ import re from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre.gui2.store import StorePlugin from calibre import browser diff --git a/src/calibre/gui2/store/stores/amazon_plugin.py b/src/calibre/gui2/store/stores/amazon_plugin.py index 9d2c5e1368..a7c7b8694f 100644 --- a/src/calibre/gui2/store/stores/amazon_plugin.py +++ b/src/calibre/gui2/store/stores/amazon_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/amazon_uk_plugin.py b/src/calibre/gui2/store/stores/amazon_uk_plugin.py index 4e24e86f3b..6908df6dd9 100644 --- a/src/calibre/gui2/store/stores/amazon_uk_plugin.py +++ b/src/calibre/gui2/store/stores/amazon_uk_plugin.py @@ -11,7 +11,7 @@ import re from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/baen_webscription_plugin.py b/src/calibre/gui2/store/stores/baen_webscription_plugin.py index 63203693a5..032893cdd6 100644 --- a/src/calibre/gui2/store/stores/baen_webscription_plugin.py +++ b/src/calibre/gui2/store/stores/baen_webscription_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/beam_ebooks_de_plugin.py b/src/calibre/gui2/store/stores/beam_ebooks_de_plugin.py index e8e320a88e..04024914ce 100644 --- a/src/calibre/gui2/store/stores/beam_ebooks_de_plugin.py +++ b/src/calibre/gui2/store/stores/beam_ebooks_de_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/bn_plugin.py b/src/calibre/gui2/store/stores/bn_plugin.py index b775ca21e2..cc29839d70 100644 --- a/src/calibre/gui2/store/stores/bn_plugin.py +++ b/src/calibre/gui2/store/stores/bn_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/cdp_plugin.py b/src/calibre/gui2/store/stores/cdp_plugin.py index 7796ad2321..caf7337c3d 100644 --- a/src/calibre/gui2/store/stores/cdp_plugin.py +++ b/src/calibre/gui2/store/stores/cdp_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/chitanka_plugin.py b/src/calibre/gui2/store/stores/chitanka_plugin.py index 30fc543849..5b966dc612 100644 --- a/src/calibre/gui2/store/stores/chitanka_plugin.py +++ b/src/calibre/gui2/store/stores/chitanka_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/ebook_nl_plugin.py b/src/calibre/gui2/store/stores/ebook_nl_plugin.py index 6f895f1325..8b89afb980 100644 --- a/src/calibre/gui2/store/stores/ebook_nl_plugin.py +++ b/src/calibre/gui2/store/stores/ebook_nl_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/ebookpoint_plugin.py b/src/calibre/gui2/store/stores/ebookpoint_plugin.py index 46d410dc41..a2c56abd12 100644 --- a/src/calibre/gui2/store/stores/ebookpoint_plugin.py +++ b/src/calibre/gui2/store/stores/ebookpoint_plugin.py @@ -14,7 +14,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/ebooks_com_plugin.py b/src/calibre/gui2/store/stores/ebooks_com_plugin.py index 5c901bd65e..e7f7762528 100644 --- a/src/calibre/gui2/store/stores/ebooks_com_plugin.py +++ b/src/calibre/gui2/store/stores/ebooks_com_plugin.py @@ -14,7 +14,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/ebookshoppe_uk_plugin.py b/src/calibre/gui2/store/stores/ebookshoppe_uk_plugin.py index 77801d8584..a693338352 100644 --- a/src/calibre/gui2/store/stores/ebookshoppe_uk_plugin.py +++ b/src/calibre/gui2/store/stores/ebookshoppe_uk_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/eknigi_plugin.py b/src/calibre/gui2/store/stores/eknigi_plugin.py index 7cafba421e..7700efa3f4 100644 --- a/src/calibre/gui2/store/stores/eknigi_plugin.py +++ b/src/calibre/gui2/store/stores/eknigi_plugin.py @@ -14,7 +14,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/empik_plugin.py b/src/calibre/gui2/store/stores/empik_plugin.py index 08519c1411..22f9fc2b75 100644 --- a/src/calibre/gui2/store/stores/empik_plugin.py +++ b/src/calibre/gui2/store/stores/empik_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/google_books_plugin.py b/src/calibre/gui2/store/stores/google_books_plugin.py index f5af8bd161..3561effc3c 100644 --- a/src/calibre/gui2/store/stores/google_books_plugin.py +++ b/src/calibre/gui2/store/stores/google_books_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/kobo_plugin.py b/src/calibre/gui2/store/stores/kobo_plugin.py index cfa5f514b4..7cb8947b4c 100644 --- a/src/calibre/gui2/store/stores/kobo_plugin.py +++ b/src/calibre/gui2/store/stores/kobo_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/koobe_plugin.py b/src/calibre/gui2/store/stores/koobe_plugin.py index d767a832cb..5d1ee983b4 100644 --- a/src/calibre/gui2/store/stores/koobe_plugin.py +++ b/src/calibre/gui2/store/stores/koobe_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/legimi_plugin.py b/src/calibre/gui2/store/stores/legimi_plugin.py index 35c3fba689..c1ce4d8ab8 100644 --- a/src/calibre/gui2/store/stores/legimi_plugin.py +++ b/src/calibre/gui2/store/stores/legimi_plugin.py @@ -14,7 +14,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/libri_de_plugin.py b/src/calibre/gui2/store/stores/libri_de_plugin.py index c45010c50b..623d52f9d4 100644 --- a/src/calibre/gui2/store/stores/libri_de_plugin.py +++ b/src/calibre/gui2/store/stores/libri_de_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/litres_plugin.py b/src/calibre/gui2/store/stores/litres_plugin.py index 5a1d2271fe..0c59b7e0de 100644 --- a/src/calibre/gui2/store/stores/litres_plugin.py +++ b/src/calibre/gui2/store/stores/litres_plugin.py @@ -13,7 +13,7 @@ import urllib2 from contextlib import closing from lxml import etree -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner, prints from calibre.ebooks.chardet import xml_to_unicode diff --git a/src/calibre/gui2/store/stores/mills_boon_uk_plugin.py b/src/calibre/gui2/store/stores/mills_boon_uk_plugin.py index 1b2f754f21..54441dfaf8 100644 --- a/src/calibre/gui2/store/stores/mills_boon_uk_plugin.py +++ b/src/calibre/gui2/store/stores/mills_boon_uk_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/mobileread/adv_search_builder.py b/src/calibre/gui2/store/stores/mobileread/adv_search_builder.py index 8bc7850b0f..6219258b46 100644 --- a/src/calibre/gui2/store/stores/mobileread/adv_search_builder.py +++ b/src/calibre/gui2/store/stores/mobileread/adv_search_builder.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import re -from PyQt4.Qt import (QDialog, QDialogButtonBox) +from PyQt5.Qt import (QDialog, QDialogButtonBox) from calibre.gui2.store.stores.mobileread.adv_search_builder_ui import Ui_Dialog from calibre.library.caches import CONTAINS_MATCH, EQUALS_MATCH diff --git a/src/calibre/gui2/store/stores/mobileread/cache_progress_dialog.py b/src/calibre/gui2/store/stores/mobileread/cache_progress_dialog.py index de2cf50f84..d659190769 100644 --- a/src/calibre/gui2/store/stores/mobileread/cache_progress_dialog.py +++ b/src/calibre/gui2/store/stores/mobileread/cache_progress_dialog.py @@ -6,7 +6,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog +from PyQt5.Qt import QDialog from calibre.gui2.store.stores.mobileread.cache_progress_dialog_ui import Ui_Dialog diff --git a/src/calibre/gui2/store/stores/mobileread/cache_update_thread.py b/src/calibre/gui2/store/stores/mobileread/cache_update_thread.py index 44a3c002db..ed62a175b3 100644 --- a/src/calibre/gui2/store/stores/mobileread/cache_update_thread.py +++ b/src/calibre/gui2/store/stores/mobileread/cache_update_thread.py @@ -12,7 +12,7 @@ from threading import Thread from lxml import html -from PyQt4.Qt import (pyqtSignal, QObject) +from PyQt5.Qt import (pyqtSignal, QObject) from calibre import browser from calibre.gui2.store.search_result import SearchResult diff --git a/src/calibre/gui2/store/stores/mobileread/mobileread_plugin.py b/src/calibre/gui2/store/stores/mobileread/mobileread_plugin.py index bf1b2013dd..53a1b11f21 100644 --- a/src/calibre/gui2/store/stores/mobileread/mobileread_plugin.py +++ b/src/calibre/gui2/store/stores/mobileread/mobileread_plugin.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import os from threading import Lock -from PyQt4.Qt import (QUrl, QCoreApplication) +from PyQt5.Qt import (QUrl, QCoreApplication) from calibre.constants import cache_dir from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/mobileread/models.py b/src/calibre/gui2/store/stores/mobileread/models.py index 60f038c4e2..be5cf5da87 100644 --- a/src/calibre/gui2/store/stores/mobileread/models.py +++ b/src/calibre/gui2/store/stores/mobileread/models.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' from operator import attrgetter -from PyQt4.Qt import (Qt, QAbstractItemModel, QModelIndex, QVariant, pyqtSignal) +from PyQt5.Qt import (Qt, QAbstractItemModel, QModelIndex, QVariant, pyqtSignal) from calibre.gui2 import NONE from calibre.db.search import _match, CONTAINS_MATCH, EQUALS_MATCH, REGEXP_MATCH diff --git a/src/calibre/gui2/store/stores/mobileread/store_dialog.py b/src/calibre/gui2/store/stores/mobileread/store_dialog.py index ff7fea090f..42f167e7f6 100644 --- a/src/calibre/gui2/store/stores/mobileread/store_dialog.py +++ b/src/calibre/gui2/store/stores/mobileread/store_dialog.py @@ -7,7 +7,7 @@ __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (Qt, QDialog, QIcon, QComboBox) +from PyQt5.Qt import (Qt, QDialog, QIcon, QComboBox) from calibre.gui2.store.stores.mobileread.adv_search_builder import AdvSearchBuilderDialog from calibre.gui2.store.stores.mobileread.models import BooksModel diff --git a/src/calibre/gui2/store/stores/nexto_plugin.py b/src/calibre/gui2/store/stores/nexto_plugin.py index 813a31b4c2..f726e6f4cd 100644 --- a/src/calibre/gui2/store/stores/nexto_plugin.py +++ b/src/calibre/gui2/store/stores/nexto_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/nook_uk_plugin.py b/src/calibre/gui2/store/stores/nook_uk_plugin.py index 2e2ed1c46b..35d5bacea5 100644 --- a/src/calibre/gui2/store/stores/nook_uk_plugin.py +++ b/src/calibre/gui2/store/stores/nook_uk_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/open_books_plugin.py b/src/calibre/gui2/store/stores/open_books_plugin.py index 66642ab679..e71625c235 100644 --- a/src/calibre/gui2/store/stores/open_books_plugin.py +++ b/src/calibre/gui2/store/stores/open_books_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/ozon_ru_plugin.py b/src/calibre/gui2/store/stores/ozon_ru_plugin.py index 5dd48230f8..1ff725b2d2 100644 --- a/src/calibre/gui2/store/stores/ozon_ru_plugin.py +++ b/src/calibre/gui2/store/stores/ozon_ru_plugin.py @@ -13,7 +13,7 @@ import urllib2 from contextlib import closing from lxml import etree, html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.ebooks.chardet import xml_to_unicode diff --git a/src/calibre/gui2/store/stores/publio_plugin.py b/src/calibre/gui2/store/stores/publio_plugin.py index 0ec8f45335..52ba2ecec8 100644 --- a/src/calibre/gui2/store/stores/publio_plugin.py +++ b/src/calibre/gui2/store/stores/publio_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/rw2010_plugin.py b/src/calibre/gui2/store/stores/rw2010_plugin.py index fc86ae4967..f1cab92f64 100644 --- a/src/calibre/gui2/store/stores/rw2010_plugin.py +++ b/src/calibre/gui2/store/stores/rw2010_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/smashwords_plugin.py b/src/calibre/gui2/store/stores/smashwords_plugin.py index c3e5b5d0ec..6afad19265 100644 --- a/src/calibre/gui2/store/stores/smashwords_plugin.py +++ b/src/calibre/gui2/store/stores/smashwords_plugin.py @@ -14,7 +14,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/sony_au_plugin.py b/src/calibre/gui2/store/stores/sony_au_plugin.py index 3eaf6e587b..5608e2714c 100644 --- a/src/calibre/gui2/store/stores/sony_au_plugin.py +++ b/src/calibre/gui2/store/stores/sony_au_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html, etree -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/sony_plugin.py b/src/calibre/gui2/store/stores/sony_plugin.py index 66dee924a4..5916e620d5 100644 --- a/src/calibre/gui2/store/stores/sony_plugin.py +++ b/src/calibre/gui2/store/stores/sony_plugin.py @@ -13,7 +13,7 @@ from contextlib import closing from lxml import html, etree -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/virtualo_plugin.py b/src/calibre/gui2/store/stores/virtualo_plugin.py index f36449f19a..d7e6761156 100644 --- a/src/calibre/gui2/store/stores/virtualo_plugin.py +++ b/src/calibre/gui2/store/stores/virtualo_plugin.py @@ -14,7 +14,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/waterstones_uk_plugin.py b/src/calibre/gui2/store/stores/waterstones_uk_plugin.py index 5875119401..f5085e8138 100644 --- a/src/calibre/gui2/store/stores/waterstones_uk_plugin.py +++ b/src/calibre/gui2/store/stores/waterstones_uk_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/weightless_books_plugin.py b/src/calibre/gui2/store/stores/weightless_books_plugin.py index cc18cf5807..b4cd3e2f12 100644 --- a/src/calibre/gui2/store/stores/weightless_books_plugin.py +++ b/src/calibre/gui2/store/stores/weightless_books_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/whsmith_uk_plugin.py b/src/calibre/gui2/store/stores/whsmith_uk_plugin.py index 8d075f21ba..bb3b96878b 100644 --- a/src/calibre/gui2/store/stores/whsmith_uk_plugin.py +++ b/src/calibre/gui2/store/stores/whsmith_uk_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/woblink_plugin.py b/src/calibre/gui2/store/stores/woblink_plugin.py index be3bf92c78..429993fc97 100644 --- a/src/calibre/gui2/store/stores/woblink_plugin.py +++ b/src/calibre/gui2/store/stores/woblink_plugin.py @@ -12,7 +12,7 @@ from base64 import b64encode from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/stores/wolnelektury_plugin.py b/src/calibre/gui2/store/stores/wolnelektury_plugin.py index 907ec01bff..06fcd4d60c 100644 --- a/src/calibre/gui2/store/stores/wolnelektury_plugin.py +++ b/src/calibre/gui2/store/stores/wolnelektury_plugin.py @@ -12,7 +12,7 @@ from contextlib import closing from lxml import html -from PyQt4.Qt import QUrl +from PyQt5.Qt import QUrl from calibre import browser, url_slash_cleaner from calibre.gui2 import open_url diff --git a/src/calibre/gui2/store/web_control.py b/src/calibre/gui2/store/web_control.py index 8318ae9078..696ab1265c 100644 --- a/src/calibre/gui2/store/web_control.py +++ b/src/calibre/gui2/store/web_control.py @@ -9,8 +9,8 @@ __docformat__ = 'restructuredtext en' import os from urlparse import urlparse -from PyQt4.Qt import QNetworkCookieJar, QFileDialog, QNetworkProxy -from PyQt4.QtWebKit import QWebView, QWebPage +from PyQt5.Qt import QNetworkCookieJar, QFileDialog, QNetworkProxy +from PyQt5.QtWebKit import QWebView, QWebPage from calibre import USER_AGENT, get_proxies, get_download_filename from calibre.ebooks import BOOK_EXTENSIONS diff --git a/src/calibre/gui2/store/web_store_dialog.py b/src/calibre/gui2/store/web_store_dialog.py index 20fb016b6b..1bcaecfd8c 100644 --- a/src/calibre/gui2/store/web_store_dialog.py +++ b/src/calibre/gui2/store/web_store_dialog.py @@ -6,7 +6,7 @@ __license__ = 'GPL 3' __copyright__ = '2011, John Schember ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QDialog, QUrl +from PyQt5.Qt import QDialog, QUrl from calibre import url_slash_cleaner from calibre.gui2.store.web_store_dialog_ui import Ui_Dialog diff --git a/src/calibre/gui2/tag_browser/model.py b/src/calibre/gui2/tag_browser/model.py index 2b5e7e6b9d..0672e4c110 100644 --- a/src/calibre/gui2/tag_browser/model.py +++ b/src/calibre/gui2/tag_browser/model.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' import traceback, cPickle, copy, os -from PyQt4.Qt import (QAbstractItemModel, QIcon, QVariant, QFont, Qt, +from PyQt5.Qt import (QAbstractItemModel, QIcon, QVariant, QFont, Qt, QMimeData, QModelIndex, pyqtSignal, QObject) from calibre.constants import config_dir diff --git a/src/calibre/gui2/tag_browser/ui.py b/src/calibre/gui2/tag_browser/ui.py index 3205b5fc63..ff20e4b92d 100644 --- a/src/calibre/gui2/tag_browser/ui.py +++ b/src/calibre/gui2/tag_browser/ui.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import (Qt, QIcon, QWidget, QHBoxLayout, QVBoxLayout, QShortcut, +from PyQt5.Qt import (Qt, QIcon, QWidget, QHBoxLayout, QVBoxLayout, QShortcut, QKeySequence, QToolButton, QString, QLabel, QFrame, QTimer, QMenu, QPushButton, QActionGroup) diff --git a/src/calibre/gui2/tag_browser/view.py b/src/calibre/gui2/tag_browser/view.py index a48cb502e4..8171bde2fa 100644 --- a/src/calibre/gui2/tag_browser/view.py +++ b/src/calibre/gui2/tag_browser/view.py @@ -11,7 +11,7 @@ import cPickle, os from functools import partial from itertools import izip -from PyQt4.Qt import (QStyledItemDelegate, Qt, QTreeView, pyqtSignal, QSize, +from PyQt5.Qt import (QStyledItemDelegate, Qt, QTreeView, pyqtSignal, QSize, QIcon, QApplication, QMenu, QPoint, QModelIndex, QToolTip, QCursor, QDrag) diff --git a/src/calibre/gui2/throbber.py b/src/calibre/gui2/throbber.py index 90c7466b14..d945354d32 100644 --- a/src/calibre/gui2/throbber.py +++ b/src/calibre/gui2/throbber.py @@ -6,7 +6,7 @@ __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QToolButton, QSize, QPropertyAnimation, Qt, \ +from PyQt5.Qt import QToolButton, QSize, QPropertyAnimation, Qt, \ QMetaObject, QLabel, QVBoxLayout, QWidget from calibre.constants import isosx @@ -72,7 +72,7 @@ def create_donate_widget(button): return w if __name__ == '__main__': - from PyQt4.Qt import QApplication, QHBoxLayout, QIcon + from PyQt5.Qt import QApplication, QHBoxLayout, QIcon app = QApplication([]) w = QWidget() w.setLayout(QHBoxLayout()) diff --git a/src/calibre/gui2/toc/location.py b/src/calibre/gui2/toc/location.py index c5f78a3d9c..0952274c0c 100644 --- a/src/calibre/gui2/toc/location.py +++ b/src/calibre/gui2/toc/location.py @@ -10,10 +10,10 @@ __docformat__ = 'restructuredtext en' import json from base64 import b64encode -from PyQt4.Qt import (QWidget, QGridLayout, QListWidget, QSize, Qt, QUrl, +from PyQt5.Qt import (QWidget, QGridLayout, QListWidget, QSize, Qt, QUrl, pyqtSlot, pyqtSignal, QVBoxLayout, QFrame, QLabel, QLineEdit, QTimer, QPushButton, QIcon, QSplitter) -from PyQt4.QtWebKit import QWebView, QWebPage, QWebElement +from PyQt5.QtWebKit import QWebView, QWebPage, QWebElement from calibre.ebooks.oeb.display.webview import load_html from calibre.gui2 import error_dialog, question_dialog, gprefs diff --git a/src/calibre/gui2/toc/main.py b/src/calibre/gui2/toc/main.py index 85526778e5..a3ba6852e2 100644 --- a/src/calibre/gui2/toc/main.py +++ b/src/calibre/gui2/toc/main.py @@ -11,7 +11,7 @@ import sys, os, textwrap from threading import Thread from functools import partial -from PyQt4.Qt import (QPushButton, QFrame, QVariant, QMenu, QInputDialog, +from PyQt5.Qt import (QPushButton, QFrame, QVariant, QMenu, QInputDialog, QDialog, QVBoxLayout, QDialogButtonBox, QSize, QStackedWidget, QWidget, QLabel, Qt, pyqtSignal, QIcon, QTreeWidget, QGridLayout, QTreeWidgetItem, QToolButton, QItemSelectionModel, QCursor, QKeySequence) diff --git a/src/calibre/gui2/tools.py b/src/calibre/gui2/tools.py index 021891b7ac..55c9a5a8e8 100644 --- a/src/calibre/gui2/tools.py +++ b/src/calibre/gui2/tools.py @@ -9,7 +9,7 @@ Logic for setting up conversion jobs import cPickle, os -from PyQt4.Qt import QDialog, QProgressDialog, QString, QTimer +from PyQt5.Qt import QDialog, QProgressDialog, QString, QTimer from calibre.ptempfile import PersistentTemporaryFile from calibre.gui2 import warning_dialog, question_dialog diff --git a/src/calibre/gui2/tweak_book/boss.py b/src/calibre/gui2/tweak_book/boss.py index a790462d62..3c88b8746b 100644 --- a/src/calibre/gui2/tweak_book/boss.py +++ b/src/calibre/gui2/tweak_book/boss.py @@ -10,7 +10,7 @@ import tempfile, shutil, sys, os from functools import partial, wraps from urlparse import urlparse -from PyQt4.Qt import ( +from PyQt5.Qt import ( QObject, QApplication, QDialog, QGridLayout, QLabel, QSize, Qt, QDialogButtonBox, QIcon, QTimer, QPixmap, QInputDialog, QUrl) diff --git a/src/calibre/gui2/tweak_book/char_select.py b/src/calibre/gui2/tweak_book/char_select.py index 46d1f4b254..d9f33f59a2 100644 --- a/src/calibre/gui2/tweak_book/char_select.py +++ b/src/calibre/gui2/tweak_book/char_select.py @@ -11,7 +11,7 @@ from bisect import bisect from functools import partial from collections import defaultdict -from PyQt4.Qt import ( +from PyQt5.Qt import ( QAbstractItemModel, QModelIndex, Qt, QVariant, pyqtSignal, QApplication, QTreeView, QSize, QGridLayout, QAbstractListModel, QListView, QPen, QMenu, QStyledItemDelegate, QSplitter, QLabel, QSizePolicy, QIcon, QMimeData, diff --git a/src/calibre/gui2/tweak_book/check.py b/src/calibre/gui2/tweak_book/check.py index f843390343..bd2f6cb408 100644 --- a/src/calibre/gui2/tweak_book/check.py +++ b/src/calibre/gui2/tweak_book/check.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' import sys -from PyQt4.Qt import ( +from PyQt5.Qt import ( QIcon, Qt, QSplitter, QListWidget, QTextBrowser, QPalette, QMenu, QListWidgetItem, pyqtSignal, QApplication, QStyledItemDelegate) @@ -96,7 +96,7 @@ class Check(QSplitter): items = [] for item in (self.items.item(i) for i in xrange(self.items.count())): msg = unicode(item.text()) - msg = prefix_for_level(item.data(Qt.UserRole).toPyObject().level) + msg + msg = prefix_for_level(item.data(Qt.UserRole).level) + msg items.append(msg) if items: QApplication.clipboard().setText('\n'.join(items)) diff --git a/src/calibre/gui2/tweak_book/diff/highlight.py b/src/calibre/gui2/tweak_book/diff/highlight.py index eeac053fb8..52325b3e72 100644 --- a/src/calibre/gui2/tweak_book/diff/highlight.py +++ b/src/calibre/gui2/tweak_book/diff/highlight.py @@ -8,7 +8,7 @@ __copyright__ = '2014, Kovid Goyal ' import os -from PyQt4.Qt import QTextDocument, QTextCursor, QTextCharFormat, QPlainTextDocumentLayout +from PyQt5.Qt import QTextDocument, QTextCursor, QTextCharFormat, QPlainTextDocumentLayout from calibre.gui2.tweak_book import tprefs from calibre.gui2.tweak_book.editor.text import get_highlighter as calibre_highlighter, SyntaxHighlighter diff --git a/src/calibre/gui2/tweak_book/diff/main.py b/src/calibre/gui2/tweak_book/diff/main.py index d701b208c9..805e89ed20 100644 --- a/src/calibre/gui2/tweak_book/diff/main.py +++ b/src/calibre/gui2/tweak_book/diff/main.py @@ -9,7 +9,7 @@ __copyright__ = '2014, Kovid Goyal ' import sys, os, re from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( QGridLayout, QToolButton, QIcon, QRadioButton, QMenu, QApplication, Qt, QSize, QWidget, QLabel, QStackedLayout, QPainter, QRect, QVBoxLayout, QCursor, QEventLoop, QKeySequence, pyqtSignal, QTimer, QHBoxLayout) diff --git a/src/calibre/gui2/tweak_book/diff/view.py b/src/calibre/gui2/tweak_book/diff/view.py index 1b705a2abd..4004afe30b 100644 --- a/src/calibre/gui2/tweak_book/diff/view.py +++ b/src/calibre/gui2/tweak_book/diff/view.py @@ -15,7 +15,7 @@ from difflib import SequenceMatcher from future_builtins import zip import regex -from PyQt4.Qt import ( +from PyQt5.Qt import ( QSplitter, QApplication, QTimer, QTextCursor, QTextCharFormat, Qt, QRect, QPainter, QPalette, QPen, QBrush, QColor, QTextLayout, QCursor, QFont, QSplitterHandle, QPainterPath, diff --git a/src/calibre/gui2/tweak_book/editor/canvas.py b/src/calibre/gui2/tweak_book/editor/canvas.py index f51f9a3b86..c3181cb99e 100644 --- a/src/calibre/gui2/tweak_book/editor/canvas.py +++ b/src/calibre/gui2/tweak_book/editor/canvas.py @@ -9,7 +9,7 @@ __copyright__ = '2013, Kovid Goyal ' import sys, weakref from functools import wraps -from PyQt4.Qt import ( +from PyQt5.Qt import ( QWidget, QPainter, QColor, QApplication, Qt, QPixmap, QRectF, QMatrix, QPointF, QPen, pyqtSignal, QUndoCommand, QUndoStack, QIcon, QImage, QByteArray) diff --git a/src/calibre/gui2/tweak_book/editor/image.py b/src/calibre/gui2/tweak_book/editor/image.py index 537e5498cd..00a93f79b9 100644 --- a/src/calibre/gui2/tweak_book/editor/image.py +++ b/src/calibre/gui2/tweak_book/editor/image.py @@ -9,7 +9,7 @@ __copyright__ = '2013, Kovid Goyal ' import sys from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( QMainWindow, Qt, QApplication, pyqtSignal, QLabel, QIcon, QFormLayout, QDialog, QSpinBox, QCheckBox, QDialogButtonBox, QToolButton, QMenu, QInputDialog) diff --git a/src/calibre/gui2/tweak_book/editor/insert_resource.py b/src/calibre/gui2/tweak_book/editor/insert_resource.py index 4157183793..1690aca65f 100644 --- a/src/calibre/gui2/tweak_book/editor/insert_resource.py +++ b/src/calibre/gui2/tweak_book/editor/insert_resource.py @@ -9,7 +9,7 @@ __copyright__ = '2013, Kovid Goyal ' import sys, os from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( QGridLayout, QSize, QListView, QStyledItemDelegate, QLabel, QPixmap, QApplication, QSizePolicy, QAbstractListModel, QVariant, Qt, QRect, QPainter, QModelIndex, QSortFilterProxyModel, QLineEdit, QToolButton, diff --git a/src/calibre/gui2/tweak_book/editor/smart/html.py b/src/calibre/gui2/tweak_book/editor/smart/html.py index 258b9040b5..838d076e9a 100644 --- a/src/calibre/gui2/tweak_book/editor/smart/html.py +++ b/src/calibre/gui2/tweak_book/editor/smart/html.py @@ -10,7 +10,7 @@ import sys, re from operator import itemgetter from cssutils import parseStyle -from PyQt4.Qt import QTextEdit +from PyQt5.Qt import QTextEdit from calibre import prepare_string_for_xml from calibre.gui2 import error_dialog diff --git a/src/calibre/gui2/tweak_book/editor/syntax/base.py b/src/calibre/gui2/tweak_book/editor/syntax/base.py index 775845538c..b0043815ae 100644 --- a/src/calibre/gui2/tweak_book/editor/syntax/base.py +++ b/src/calibre/gui2/tweak_book/editor/syntax/base.py @@ -9,7 +9,7 @@ __copyright__ = '2013, Kovid Goyal ' import sys from collections import defaultdict, deque -from PyQt4.Qt import ( +from PyQt5.Qt import ( QTextCursor, pyqtSlot, QTextBlockUserData, QTextLayout, QTimer) from ..themes import highlight_to_char_format diff --git a/src/calibre/gui2/tweak_book/editor/syntax/html.py b/src/calibre/gui2/tweak_book/editor/syntax/html.py index cc340b4572..cca17bd0b3 100644 --- a/src/calibre/gui2/tweak_book/editor/syntax/html.py +++ b/src/calibre/gui2/tweak_book/editor/syntax/html.py @@ -10,7 +10,7 @@ import re from functools import partial from collections import namedtuple -from PyQt4.Qt import QFont, QTextBlockUserData, QTextCharFormat +from PyQt5.Qt import QFont, QTextBlockUserData, QTextCharFormat from calibre.ebooks.oeb.polish.spell import html_spell_tags, xml_spell_tags from calibre.spell.dictionary import parse_lang_code diff --git a/src/calibre/gui2/tweak_book/editor/text.py b/src/calibre/gui2/tweak_book/editor/text.py index 44094260a8..af4a6c2294 100644 --- a/src/calibre/gui2/tweak_book/editor/text.py +++ b/src/calibre/gui2/tweak_book/editor/text.py @@ -11,7 +11,7 @@ import textwrap, unicodedata from future_builtins import map import regex -from PyQt4.Qt import ( +from PyQt5.Qt import ( QPlainTextEdit, QFontDatabase, QToolTip, QPalette, QFont, QKeySequence, QTextEdit, QTextFormat, QWidget, QSize, QPainter, Qt, QRect, pyqtSlot, QApplication, QMimeData, QColor, QColorDialog, QTimer, pyqtSignal) diff --git a/src/calibre/gui2/tweak_book/editor/themes.py b/src/calibre/gui2/tweak_book/editor/themes.py index 4733303462..68cd76c709 100644 --- a/src/calibre/gui2/tweak_book/editor/themes.py +++ b/src/calibre/gui2/tweak_book/editor/themes.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' from collections import namedtuple -from PyQt4.Qt import ( +from PyQt5.Qt import ( QColor, QBrush, QFont, QApplication, QPalette, QComboBox, QPushButton, QIcon, QFormLayout, QLineEdit, QWidget, QScrollArea, QVBoxLayout, Qt, QHBoxLayout, pyqtSignal, QPixmap, QColorDialog, diff --git a/src/calibre/gui2/tweak_book/editor/widget.py b/src/calibre/gui2/tweak_book/editor/widget.py index 9f633f94bb..b79b02b908 100644 --- a/src/calibre/gui2/tweak_book/editor/widget.py +++ b/src/calibre/gui2/tweak_book/editor/widget.py @@ -9,7 +9,7 @@ __copyright__ = '2013, Kovid Goyal ' import unicodedata from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( QMainWindow, Qt, QApplication, pyqtSignal, QMenu, qDrawShadeRect, QPainter, QImage, QColor, QIcon, QPixmap, QToolButton, QAction, QTextCursor) diff --git a/src/calibre/gui2/tweak_book/file_list.py b/src/calibre/gui2/tweak_book/file_list.py index e7ab9aced0..492405ce1f 100644 --- a/src/calibre/gui2/tweak_book/file_list.py +++ b/src/calibre/gui2/tweak_book/file_list.py @@ -12,7 +12,7 @@ from collections import OrderedDict, defaultdict from functools import partial import sip -from PyQt4.Qt import ( +from PyQt5.Qt import ( QWidget, QTreeWidget, QGridLayout, QSize, Qt, QTreeWidgetItem, QIcon, QFont, QStyledItemDelegate, QStyle, QPixmap, QPainter, pyqtSignal, QMenu, QTimer, QDialogButtonBox, QDialog, QLabel, QLineEdit, QVBoxLayout, QScrollArea, diff --git a/src/calibre/gui2/tweak_book/job.py b/src/calibre/gui2/tweak_book/job.py index ccb303d09c..c54a4d5cbc 100644 --- a/src/calibre/gui2/tweak_book/job.py +++ b/src/calibre/gui2/tweak_book/job.py @@ -10,7 +10,7 @@ import time from threading import Thread from functools import partial -from PyQt4.Qt import (QWidget, QVBoxLayout, QLabel, Qt, QPainter, QBrush, QRect, QApplication, QCursor) +from PyQt5.Qt import (QWidget, QVBoxLayout, QLabel, Qt, QPainter, QBrush, QRect, QApplication, QCursor) from calibre.gui2 import Dispatcher from calibre.gui2.progress_indicator import ProgressIndicator diff --git a/src/calibre/gui2/tweak_book/main.py b/src/calibre/gui2/tweak_book/main.py index 5377de7464..a3755dd49c 100644 --- a/src/calibre/gui2/tweak_book/main.py +++ b/src/calibre/gui2/tweak_book/main.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' import sys, os, importlib, time -from PyQt4.Qt import QIcon +from PyQt5.Qt import QIcon from calibre.constants import islinux, iswindows from calibre.gui2 import Application, ORG_NAME, APP_UID, setup_gui_option_parser, detach_gui, decouple diff --git a/src/calibre/gui2/tweak_book/preferences.py b/src/calibre/gui2/tweak_book/preferences.py index a383ca62d8..1f9262d71c 100644 --- a/src/calibre/gui2/tweak_book/preferences.py +++ b/src/calibre/gui2/tweak_book/preferences.py @@ -13,7 +13,7 @@ from itertools import product from functools import partial from copy import copy, deepcopy -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QGridLayout, QStackedWidget, QDialogButtonBox, QListWidget, QListWidgetItem, QIcon, QWidget, QSize, QFormLayout, Qt, QSpinBox, QCheckBox, pyqtSignal, QDoubleSpinBox, QComboBox, QLabel, QFont, diff --git a/src/calibre/gui2/tweak_book/preview.py b/src/calibre/gui2/tweak_book/preview.py index baf7abd927..2d711c8532 100644 --- a/src/calibre/gui2/tweak_book/preview.py +++ b/src/calibre/gui2/tweak_book/preview.py @@ -16,11 +16,11 @@ from collections import namedtuple from functools import partial from urlparse import urlparse -from PyQt4.Qt import ( +from PyQt5.Qt import ( QWidget, QVBoxLayout, QApplication, QSize, QNetworkAccessManager, QMenu, QIcon, QNetworkReply, QTimer, QNetworkRequest, QUrl, Qt, QNetworkDiskCache, QToolBar, pyqtSlot, pyqtSignal, QFontDatabase) -from PyQt4.QtWebKit import QWebView, QWebInspector, QWebPage +from PyQt5.QtWebKit import QWebView, QWebInspector, QWebPage from calibre import prints from calibre.constants import iswindows diff --git a/src/calibre/gui2/tweak_book/save.py b/src/calibre/gui2/tweak_book/save.py index dfe3380d3d..a20d637341 100644 --- a/src/calibre/gui2/tweak_book/save.py +++ b/src/calibre/gui2/tweak_book/save.py @@ -10,7 +10,7 @@ import shutil, os, errno from threading import Thread from Queue import LifoQueue, Empty -from PyQt4.Qt import (QObject, pyqtSignal, QLabel, QWidget, QHBoxLayout, Qt) +from PyQt5.Qt import (QObject, pyqtSignal, QLabel, QWidget, QHBoxLayout, Qt) from calibre.constants import iswindows from calibre.ptempfile import PersistentTemporaryFile diff --git a/src/calibre/gui2/tweak_book/search.py b/src/calibre/gui2/tweak_book/search.py index 082b5c4240..f4cdc989c9 100644 --- a/src/calibre/gui2/tweak_book/search.py +++ b/src/calibre/gui2/tweak_book/search.py @@ -10,7 +10,7 @@ import json, copy from functools import partial from collections import OrderedDict -from PyQt4.Qt import ( +from PyQt5.Qt import ( QWidget, QToolBar, Qt, QHBoxLayout, QSize, QIcon, QGridLayout, QLabel, QTimer, QPushButton, pyqtSignal, QComboBox, QCheckBox, QSizePolicy, QVBoxLayout, QFont, QLineEdit, QToolButton, QListView, QFrame, QApplication, QStyledItemDelegate, diff --git a/src/calibre/gui2/tweak_book/toc.py b/src/calibre/gui2/tweak_book/toc.py index 1a8e91f02b..434ac542cf 100644 --- a/src/calibre/gui2/tweak_book/toc.py +++ b/src/calibre/gui2/tweak_book/toc.py @@ -6,7 +6,7 @@ from __future__ import (unicode_literals, division, absolute_import, __license__ = 'GPL v3' __copyright__ = '2013, Kovid Goyal ' -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, pyqtSignal, QIcon, QVBoxLayout, QDialogButtonBox, QStackedWidget, QAction, QMenu, QTreeWidget, QTreeWidgetItem, QGridLayout, QWidget, Qt, QSize, QStyledItemDelegate, QApplication, QTimer) diff --git a/src/calibre/gui2/tweak_book/ui.py b/src/calibre/gui2/tweak_book/ui.py index fb4ae3d819..c0c2b1637c 100644 --- a/src/calibre/gui2/tweak_book/ui.py +++ b/src/calibre/gui2/tweak_book/ui.py @@ -11,7 +11,7 @@ from functools import partial from itertools import product from future_builtins import map -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDockWidget, Qt, QLabel, QIcon, QAction, QApplication, QWidget, QEvent, QVBoxLayout, QStackedWidget, QTabWidget, QImage, QPixmap, pyqtSignal, QMenu, QHBoxLayout, QTimer, QUrl) diff --git a/src/calibre/gui2/tweak_book/undo.py b/src/calibre/gui2/tweak_book/undo.py index f568b30850..b21f363182 100644 --- a/src/calibre/gui2/tweak_book/undo.py +++ b/src/calibre/gui2/tweak_book/undo.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' import shutil -from PyQt4.Qt import ( +from PyQt5.Qt import ( QAbstractListModel, Qt, QModelIndex, QVariant, QApplication, QWidget, QGridLayout, QListView, QStyledItemDelegate, pyqtSignal, QPushButton, QIcon) diff --git a/src/calibre/gui2/tweak_book/widgets.py b/src/calibre/gui2/tweak_book/widgets.py index 1809dbbc88..b1c9a619f7 100644 --- a/src/calibre/gui2/tweak_book/widgets.py +++ b/src/calibre/gui2/tweak_book/widgets.py @@ -10,7 +10,7 @@ import os, textwrap from itertools import izip from collections import OrderedDict -from PyQt4.Qt import ( +from PyQt5.Qt import ( QDialog, QDialogButtonBox, QGridLayout, QLabel, QLineEdit, QVBoxLayout, QFormLayout, QHBoxLayout, QToolButton, QIcon, QApplication, Qt, QWidget, QPoint, QSizePolicy, QPainter, QStaticText, pyqtSignal, QTextOption, diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index 854b56c85f..ce0c31ab1e 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -16,7 +16,7 @@ from collections import OrderedDict from io import BytesIO import apsw -from PyQt4.Qt import (Qt, QTimer, QHelpEvent, QAction, +from PyQt5.Qt import (Qt, QTimer, QHelpEvent, QAction, QMenu, QIcon, pyqtSignal, QUrl, QFont, QDialog, QSystemTrayIcon, QApplication) diff --git a/src/calibre/gui2/update.py b/src/calibre/gui2/update.py index 338888d54e..3f43457c5f 100644 --- a/src/calibre/gui2/update.py +++ b/src/calibre/gui2/update.py @@ -4,7 +4,7 @@ __copyright__ = '2008, Kovid Goyal ' import re, binascii, cPickle from future_builtins import map -from PyQt4.Qt import (QThread, pyqtSignal, Qt, QUrl, QDialog, QGridLayout, +from PyQt5.Qt import (QThread, pyqtSignal, Qt, QUrl, QDialog, QGridLayout, QLabel, QCheckBox, QDialogButtonBox, QIcon, QPixmap) import mechanize diff --git a/src/calibre/gui2/viewer/bookmarkmanager.py b/src/calibre/gui2/viewer/bookmarkmanager.py index 673e64bead..c78dcebaa5 100644 --- a/src/calibre/gui2/viewer/bookmarkmanager.py +++ b/src/calibre/gui2/viewer/bookmarkmanager.py @@ -8,7 +8,7 @@ __copyright__ = '2013, Kovid Goyal ' import cPickle -from PyQt4.Qt import ( +from PyQt5.Qt import ( Qt, QListWidget, QListWidgetItem, QItemSelectionModel, QAction, QGridLayout, QPushButton, QIcon, QWidget, pyqtSignal, QLabel) diff --git a/src/calibre/gui2/viewer/config.py b/src/calibre/gui2/viewer/config.py index f8544cb0da..bec9718bb0 100644 --- a/src/calibre/gui2/viewer/config.py +++ b/src/calibre/gui2/viewer/config.py @@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en' import zipfile from functools import partial -from PyQt4.Qt import (QFont, QVariant, QDialog, Qt, QColor, QColorDialog, +from PyQt5.Qt import (QFont, QVariant, QDialog, Qt, QColor, QColorDialog, QMenu, QInputDialog) from calibre.constants import iswindows, isxp diff --git a/src/calibre/gui2/viewer/documentview.py b/src/calibre/gui2/viewer/documentview.py index 0ac1b32e21..668c580310 100644 --- a/src/calibre/gui2/viewer/documentview.py +++ b/src/calibre/gui2/viewer/documentview.py @@ -8,10 +8,10 @@ import os, math, json from base64 import b64encode from functools import partial -from PyQt4.Qt import (QSize, QSizePolicy, QUrl, Qt, pyqtProperty, +from PyQt5.Qt import (QSize, QSizePolicy, QUrl, Qt, pyqtProperty, QPainter, QPalette, QBrush, QDialog, QColor, QPoint, QImage, QRegion, QIcon, QAction, QMenu, QString, pyqtSignal, QApplication, pyqtSlot) -from PyQt4.QtWebKit import QWebPage, QWebView, QWebSettings, QWebElement +from PyQt5.QtWebKit import QWebPage, QWebView, QWebSettings, QWebElement from calibre.gui2.viewer.flip import SlideFlip from calibre.gui2.shortcuts import Shortcuts diff --git a/src/calibre/gui2/viewer/flip.py b/src/calibre/gui2/viewer/flip.py index 5432909b2b..b5094fe0d3 100644 --- a/src/calibre/gui2/viewer/flip.py +++ b/src/calibre/gui2/viewer/flip.py @@ -5,7 +5,7 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QWidget, QPainter, QPropertyAnimation, QEasingCurve, \ +from PyQt5.Qt import QWidget, QPainter, QPropertyAnimation, QEasingCurve, \ QRect, QPixmap, Qt, pyqtProperty class SlideFlip(QWidget): diff --git a/src/calibre/gui2/viewer/gestures.py b/src/calibre/gui2/viewer/gestures.py index 55fa249960..66d91eeb47 100644 --- a/src/calibre/gui2/viewer/gestures.py +++ b/src/calibre/gui2/viewer/gestures.py @@ -8,7 +8,7 @@ __copyright__ = '2014, Kovid Goyal ' import time, ctypes, sys from functools import partial -from PyQt4.Qt import ( +from PyQt5.Qt import ( QObject, QPointF, pyqtSignal, QEvent, QApplication, QMouseEvent, Qt, QContextMenuEvent, QDialog, QDialogButtonBox, QLabel, QVBoxLayout) diff --git a/src/calibre/gui2/viewer/image_popup.py b/src/calibre/gui2/viewer/image_popup.py index 1b616a12b3..6219852f81 100644 --- a/src/calibre/gui2/viewer/image_popup.py +++ b/src/calibre/gui2/viewer/image_popup.py @@ -7,7 +7,7 @@ __license__ = 'GPL v3' __copyright__ = '2012, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QDialog, QPixmap, QUrl, QScrollArea, QLabel, QSizePolicy, +from PyQt5.Qt import (QDialog, QPixmap, QUrl, QScrollArea, QLabel, QSizePolicy, QDialogButtonBox, QVBoxLayout, QPalette, QApplication, QSize, QIcon, Qt, QTransform) diff --git a/src/calibre/gui2/viewer/inspector.py b/src/calibre/gui2/viewer/inspector.py index 4d97dd4526..b660ba4aec 100644 --- a/src/calibre/gui2/viewer/inspector.py +++ b/src/calibre/gui2/viewer/inspector.py @@ -6,8 +6,8 @@ from __future__ import (unicode_literals, division, absolute_import, __license__ = 'GPL v3' __copyright__ = '2013, Kovid Goyal ' -from PyQt4.Qt import QDialog, QDialogButtonBox, QVBoxLayout, QIcon -from PyQt4.QtWebKit import QWebInspector +from PyQt5.Qt import QDialog, QDialogButtonBox, QVBoxLayout, QIcon +from PyQt5.QtWebKit import QWebInspector from calibre.gui2 import gprefs diff --git a/src/calibre/gui2/viewer/main.py b/src/calibre/gui2/viewer/main.py index 1ea6c6613a..180a1863ec 100644 --- a/src/calibre/gui2/viewer/main.py +++ b/src/calibre/gui2/viewer/main.py @@ -5,7 +5,7 @@ import traceback, os, sys, functools from functools import partial from threading import Thread -from PyQt4.Qt import ( +from PyQt5.Qt import ( QApplication, Qt, QIcon, QTimer, QByteArray, QSize, QTime, QPropertyAnimation, QUrl, QInputDialog, QAction, QModelIndex) diff --git a/src/calibre/gui2/viewer/printing.py b/src/calibre/gui2/viewer/printing.py index 95a2fcdce5..462b49ce48 100644 --- a/src/calibre/gui2/viewer/printing.py +++ b/src/calibre/gui2/viewer/printing.py @@ -7,9 +7,9 @@ __license__ = 'GPL v3' __copyright__ = '2012, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QObject, QEventLoop, Qt, QPrintDialog, QPainter, QSize, +from PyQt5.Qt import (QObject, QEventLoop, Qt, QPrintDialog, QPainter, QSize, QPrintPreviewDialog) -from PyQt4.QtWebKit import QWebView +from PyQt5.QtWebKit import QWebView from calibre.gui2 import error_dialog from calibre.ebooks.oeb.display.webview import load_html @@ -91,7 +91,7 @@ class Printing(QObject): if __name__ == '__main__': from calibre.gui2 import Application from calibre.ebooks.oeb.iterator.book import EbookIterator - from PyQt4.Qt import QPrinter, QTimer + from PyQt5.Qt import QPrinter, QTimer import sys app = Application([]) diff --git a/src/calibre/gui2/viewer/table_popup.py b/src/calibre/gui2/viewer/table_popup.py index d466d63def..f3a3de81cd 100644 --- a/src/calibre/gui2/viewer/table_popup.py +++ b/src/calibre/gui2/viewer/table_popup.py @@ -7,9 +7,9 @@ __license__ = 'GPL v3' __copyright__ = '2012, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import (QDialog, QDialogButtonBox, QVBoxLayout, QApplication, +from PyQt5.Qt import (QDialog, QDialogButtonBox, QVBoxLayout, QApplication, QSize, QIcon, Qt) -from PyQt4.QtWebKit import QWebView +from PyQt5.QtWebKit import QWebView from calibre.gui2 import gprefs, error_dialog diff --git a/src/calibre/gui2/viewer/toc.py b/src/calibre/gui2/viewer/toc.py index e2f770b3d9..b36b20107e 100644 --- a/src/calibre/gui2/viewer/toc.py +++ b/src/calibre/gui2/viewer/toc.py @@ -8,7 +8,7 @@ __copyright__ = '2012, Kovid Goyal ' __docformat__ = 'restructuredtext en' import re -from PyQt4.Qt import (QStandardItem, QStandardItemModel, Qt, QFont, +from PyQt5.Qt import (QStandardItem, QStandardItemModel, Qt, QFont, QTreeView) from calibre.ebooks.metadata.toc import TOC as MTOC diff --git a/src/calibre/gui2/widgets.py b/src/calibre/gui2/widgets.py index dd45d5733e..7fe067d494 100644 --- a/src/calibre/gui2/widgets.py +++ b/src/calibre/gui2/widgets.py @@ -5,7 +5,7 @@ Miscellaneous widgets used in the GUI ''' import re, os -from PyQt4.Qt import (QIcon, QFont, QLabel, QListWidget, QAction, +from PyQt5.Qt import (QIcon, QFont, QLabel, QListWidget, QAction, QListWidgetItem, QTextCharFormat, QApplication, QSyntaxHighlighter, QCursor, QColor, QWidget, QPixmap, QSplitterHandle, QToolButton, QVariant, Qt, pyqtSignal, QRegExp, QSize, QSplitter, QPainter, diff --git a/src/calibre/gui2/widgets2.py b/src/calibre/gui2/widgets2.py index aa5a911e57..324087d2f8 100644 --- a/src/calibre/gui2/widgets2.py +++ b/src/calibre/gui2/widgets2.py @@ -6,7 +6,7 @@ from __future__ import (unicode_literals, division, absolute_import, __license__ = 'GPL v3' __copyright__ = '2013, Kovid Goyal ' -from PyQt4.Qt import QPushButton, QPixmap, QIcon, QColor, Qt, QColorDialog, pyqtSignal +from PyQt5.Qt import QPushButton, QPixmap, QIcon, QColor, Qt, QColorDialog, pyqtSignal from calibre.gui2.complete2 import LineEdit, EditWithComplete from calibre.gui2.widgets import history diff --git a/src/calibre/gui2/wizard/__init__.py b/src/calibre/gui2/wizard/__init__.py index b62aec5fdd..adcffa39ff 100644 --- a/src/calibre/gui2/wizard/__init__.py +++ b/src/calibre/gui2/wizard/__init__.py @@ -11,7 +11,7 @@ from Queue import Empty, Queue from contextlib import closing -from PyQt4.Qt import (QWizard, QWizardPage, QPixmap, Qt, QAbstractListModel, +from PyQt5.Qt import (QWizard, QWizardPage, QPixmap, Qt, QAbstractListModel, QVariant, QItemSelectionModel, QObject, QTimer, pyqtSignal, QItemSelection) from calibre import __appname__, patheq from calibre.library.move import MoveLibrary diff --git a/src/calibre/gui2/wizard/send_email.py b/src/calibre/gui2/wizard/send_email.py index b183af1744..2c00565fd4 100644 --- a/src/calibre/gui2/wizard/send_email.py +++ b/src/calibre/gui2/wizard/send_email.py @@ -10,7 +10,7 @@ import cStringIO, sys from binascii import hexlify, unhexlify from functools import partial -from PyQt4.Qt import QWidget, pyqtSignal, QDialog, Qt, QLabel, \ +from PyQt5.Qt import QWidget, pyqtSignal, QDialog, Qt, QLabel, \ QLineEdit, QDialogButtonBox, QGridLayout, QCheckBox from calibre.gui2.wizard.send_email_ui import Ui_Form diff --git a/src/calibre/library/database2.py b/src/calibre/library/database2.py index 248f958288..7355f2cfa5 100644 --- a/src/calibre/library/database2.py +++ b/src/calibre/library/database2.py @@ -763,7 +763,7 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): else: ret = f.read() if as_image: - from PyQt4.Qt import QImage + from PyQt5.Qt import QImage i = QImage() i.loadFromData(ret) ret = i @@ -3646,7 +3646,7 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): yield i[x] def migrate_old(self, db, progress): - from PyQt4.QtCore import QCoreApplication + from PyQt5.QtCore import QCoreApplication header = _(u'

Migrating old database to ebook library in %s

')%self.library_path progress.setValue(0) progress.setLabelText(header) diff --git a/src/calibre/linux.py b/src/calibre/linux.py index 4e66676546..95d9aefd5d 100644 --- a/src/calibre/linux.py +++ b/src/calibre/linux.py @@ -1090,7 +1090,7 @@ def write_appdata(key, entry, base, translators): def render_img(image, dest, width=128, height=128): - from PyQt4.Qt import QImage, Qt + from PyQt5.Qt import QImage, Qt img = QImage(I(image)).scaled(width, height, Qt.IgnoreAspectRatio, Qt.SmoothTransformation) img.save(dest) diff --git a/src/calibre/test_build.py b/src/calibre/test_build.py index 7b9723aeb9..b7a6b67d68 100644 --- a/src/calibre/test_build.py +++ b/src/calibre/test_build.py @@ -76,8 +76,8 @@ def test_apsw(): print ('apsw OK!') def test_qt(): - from PyQt4.Qt import (QDialog, QImageReader, QNetworkAccessManager) - from PyQt4.QtWebKit import QWebView + from PyQt5.Qt import (QDialog, QImageReader, QNetworkAccessManager) + from PyQt5.QtWebKit import QWebView fmts = set(map(unicode, QImageReader.supportedImageFormats())) testf = set(['jpg', 'png', 'mng', 'svg', 'ico', 'gif']) if testf.intersection(fmts) != testf: diff --git a/src/calibre/utils/pyconsole/console.py b/src/calibre/utils/pyconsole/console.py index 2d0dfbf856..92d49e8188 100644 --- a/src/calibre/utils/pyconsole/console.py +++ b/src/calibre/utils/pyconsole/console.py @@ -9,7 +9,7 @@ import sys, textwrap, traceback, StringIO from functools import partial from codeop import CommandCompiler -from PyQt4.Qt import QTextEdit, Qt, QTextFrameFormat, pyqtSignal, \ +from PyQt5.Qt import QTextEdit, Qt, QTextFrameFormat, pyqtSignal, \ QApplication, QColor, QPalette, QMenu, QActionGroup, QTimer from pygments.lexers import PythonLexer, PythonTracebackLexer diff --git a/src/calibre/utils/pyconsole/controller.py b/src/calibre/utils/pyconsole/controller.py index 59f13a7022..075b275fde 100644 --- a/src/calibre/utils/pyconsole/controller.py +++ b/src/calibre/utils/pyconsole/controller.py @@ -10,7 +10,7 @@ from Queue import Queue, Empty from multiprocessing.connection import Listener, arbitrary_address from binascii import hexlify -from PyQt4.Qt import QThread, pyqtSignal +from PyQt5.Qt import QThread, pyqtSignal from calibre.utils.pyconsole import Process, iswindows, POLL_TIMEOUT diff --git a/src/calibre/utils/pyconsole/formatter.py b/src/calibre/utils/pyconsole/formatter.py index 17360fecb3..ef842a04d5 100644 --- a/src/calibre/utils/pyconsole/formatter.py +++ b/src/calibre/utils/pyconsole/formatter.py @@ -5,7 +5,7 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -from PyQt4.Qt import QTextCharFormat, QFont, QBrush, QColor +from PyQt5.Qt import QTextCharFormat, QFont, QBrush, QColor from pygments.formatter import Formatter as PF from pygments.token import Token, Generic, string_to_tokentype diff --git a/src/calibre/utils/pyconsole/main.py b/src/calibre/utils/pyconsole/main.py index 664f41ef2e..ec89d5ea88 100644 --- a/src/calibre/utils/pyconsole/main.py +++ b/src/calibre/utils/pyconsole/main.py @@ -8,7 +8,7 @@ __version__ = '0.1.0' from functools import partial -from PyQt4.Qt import QDialog, QToolBar, QStatusBar, QLabel, QFont, Qt, \ +from PyQt5.Qt import QDialog, QToolBar, QStatusBar, QLabel, QFont, Qt, \ QApplication, QIcon, QVBoxLayout, QAction from calibre.utils.pyconsole import dynamic, __appname__, __version__ diff --git a/src/calibre/utils/serve_coffee.py b/src/calibre/utils/serve_coffee.py index fd50dfd35c..35ce82a26c 100644 --- a/src/calibre/utils/serve_coffee.py +++ b/src/calibre/utils/serve_coffee.py @@ -22,11 +22,11 @@ import time, BaseHTTPServer, os, sys, re, SocketServer from threading import Lock from SimpleHTTPServer import SimpleHTTPRequestHandler -from PyQt4.Qt import QCoreApplication +from PyQt5.Qt import QCoreApplication # Compiler {{{ try: - from PyQt4.QtScript import QScriptEngine, QScriptValue + from PyQt5.QtScript import QScriptEngine, QScriptValue class Compiler(QScriptEngine): @@ -65,8 +65,8 @@ try: except ImportError: def do_compile(raw): - from PyQt4.QtWebKit import QWebPage - from PyQt4.Qt import QApplication + from PyQt5.QtWebKit import QWebPage + from PyQt5.Qt import QApplication import json app = QApplication([]) diff --git a/src/calibre/utils/wmf/__init__.py b/src/calibre/utils/wmf/__init__.py index c1304c50be..436c4ff68e 100644 --- a/src/calibre/utils/wmf/__init__.py +++ b/src/calibre/utils/wmf/__init__.py @@ -62,7 +62,7 @@ def to_png(bmp): # https://bugs.launchpad.net/calibre/+bug/934167 # ImageMagick bug report: # http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=20350 - from PyQt4.Qt import QImage, QByteArray, QBuffer + from PyQt5.Qt import QImage, QByteArray, QBuffer i = QImage() if i.loadFromData(bmp): ba = QByteArray() diff --git a/src/calibre/web/feeds/recipes/model.py b/src/calibre/web/feeds/recipes/model.py index f1a1213c72..e113e5c10a 100644 --- a/src/calibre/web/feeds/recipes/model.py +++ b/src/calibre/web/feeds/recipes/model.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import copy, zipfile -from PyQt4.Qt import QAbstractItemModel, QVariant, Qt, QColor, QFont, QIcon, \ +from PyQt5.Qt import QAbstractItemModel, QVariant, Qt, QColor, QFont, QIcon, \ QModelIndex, pyqtSignal, QPixmap from calibre.utils.search_query_parser import SearchQueryParser diff --git a/src/calibre/web/jsbrowser/browser.py b/src/calibre/web/jsbrowser/browser.py index 4f4fd1a9b5..721a483686 100644 --- a/src/calibre/web/jsbrowser/browser.py +++ b/src/calibre/web/jsbrowser/browser.py @@ -11,10 +11,10 @@ import os, pprint, time, uuid, re from cookielib import Cookie from threading import current_thread -from PyQt4.Qt import (QObject, QNetworkAccessManager, QNetworkDiskCache, +from PyQt5.Qt import (QObject, QNetworkAccessManager, QNetworkDiskCache, QNetworkProxy, QNetworkProxyFactory, QEventLoop, QUrl, pyqtSignal, QDialog, QVBoxLayout, QSize, QNetworkCookieJar, Qt, pyqtSlot, QPixmap) -from PyQt4.QtWebKit import QWebPage, QWebSettings, QWebView, QWebElement +from PyQt5.QtWebKit import QWebPage, QWebSettings, QWebView, QWebElement from calibre import USER_AGENT, prints, get_proxies, get_proxy_info, prepare_string_for_xml from calibre.constants import ispy3, cache_dir