diff --git a/lector/__main__.py b/lector/__main__.py index e116ba8..2d5028e 100755 --- a/lector/__main__.py +++ b/lector/__main__.py @@ -21,7 +21,6 @@ import gc import sys import hashlib import pathlib -from PyQt5 import QtWidgets, QtGui, QtCore # This allows for the program to be launched from the # dir where it's been copied instead of needing to be @@ -30,6 +29,8 @@ install_dir = os.path.realpath(__file__) install_dir = pathlib.Path(install_dir).parents[1] sys.path.append(str(install_dir)) +from PyQt5 import QtWidgets, QtGui, QtCore + from lector import database from lector import sorter from lector.toolbars import LibraryToolBar, BookToolBar @@ -42,7 +43,6 @@ from lector.settings import Settings from lector.settingsdialog import SettingsUI from lector.metadatadialog import MetadataUI from lector.definitionsdialog import DefinitionsUI - from lector.resources import mainwindow, resources diff --git a/lector/database.py b/lector/database.py index 0a52a9f..4e49aa7 100644 --- a/lector/database.py +++ b/lector/database.py @@ -19,6 +19,7 @@ import os import pickle import sqlite3 + from PyQt5 import QtCore diff --git a/lector/definitionsdialog.py b/lector/definitionsdialog.py index 273fd2e..268cc9c 100644 --- a/lector/definitionsdialog.py +++ b/lector/definitionsdialog.py @@ -18,7 +18,9 @@ import json import urllib.request + from PyQt5 import QtWidgets, QtCore, QtGui, QtMultimedia + from lector.resources import definitions diff --git a/lector/guifunctions.py b/lector/guifunctions.py index 206696e..8019d10 100644 --- a/lector/guifunctions.py +++ b/lector/guifunctions.py @@ -17,6 +17,7 @@ # along with this program. If not, see . from PyQt5 import QtCore, QtGui, QtWidgets + from lector import database from lector.settings import Settings from lector.resources import resources diff --git a/lector/library.py b/lector/library.py index d8d71c4..cc155b7 100644 --- a/lector/library.py +++ b/lector/library.py @@ -19,7 +19,9 @@ import os import pickle import pathlib + from PyQt5 import QtGui, QtCore + from lector import database from lector.models import TableProxyModel, ItemProxyModel diff --git a/lector/parsers/comicbooks.py b/lector/parsers/comicbooks.py index b37e2c0..17c5e48 100644 --- a/lector/parsers/comicbooks.py +++ b/lector/parsers/comicbooks.py @@ -22,6 +22,7 @@ import os import time import zipfile + from lector.rarfile import rarfile diff --git a/lector/parsers/pdf.py b/lector/parsers/pdf.py index ab503f1..b5aeb60 100644 --- a/lector/parsers/pdf.py +++ b/lector/parsers/pdf.py @@ -18,6 +18,7 @@ import io import os + from PyQt5 import QtCore from bs4 import BeautifulSoup @@ -28,6 +29,7 @@ except ImportError: print('python-poppler-qt5 is not installed. Pdf files will not work.') proceed = False + class ParsePDF: def __init__(self, filename, *args): self.filename = filename diff --git a/lector/settings.py b/lector/settings.py index dd9f158..b57c78d 100644 --- a/lector/settings.py +++ b/lector/settings.py @@ -2,6 +2,7 @@ # Keep in mind that all integer / boolean settings are returned as strings import os + from ast import literal_eval from PyQt5 import QtCore, QtGui diff --git a/lector/settingsdialog.py b/lector/settingsdialog.py index e402042..c9f2e1a 100644 --- a/lector/settingsdialog.py +++ b/lector/settingsdialog.py @@ -22,6 +22,7 @@ import os import copy import pathlib + from PyQt5 import QtWidgets, QtCore, QtGui from lector import database diff --git a/lector/sorter.py b/lector/sorter.py index 9155964..aeed23c 100644 --- a/lector/sorter.py +++ b/lector/sorter.py @@ -39,9 +39,9 @@ import time import pickle import hashlib import threading + from multiprocessing import Pool, Manager from PyQt5 import QtCore, QtGui - from lector import database from lector.parsers.pdf import ParsePDF diff --git a/lector/threaded.py b/lector/threaded.py index c0fa2e1..4ec566c 100644 --- a/lector/threaded.py +++ b/lector/threaded.py @@ -18,6 +18,7 @@ import os import pathlib + from multiprocessing.dummy import Pool from PyQt5 import QtCore, QtGui diff --git a/lector/widgets.py b/lector/widgets.py index 2aa7389..f79e97d 100644 --- a/lector/widgets.py +++ b/lector/widgets.py @@ -24,15 +24,15 @@ import os import uuid import zipfile -from PyQt5 import QtWidgets, QtGui, QtCore try: import popplerqt5 except ImportError: pass -from lector.rarfile import rarfile +from PyQt5 import QtWidgets, QtGui, QtCore +from lector.rarfile import rarfile from lector.models import BookmarkProxyModel from lector.delegates import BookmarkDelegate from lector.threaded import BackGroundCacheRefill @@ -696,8 +696,8 @@ class PliantQGraphicsView(QtWidgets.QGraphicsView): self.main_window.QImageFactory.get_image('filesaveas'), self._translate('PliantQGraphicsView', 'Save page as...')) - fsToggleAction = None - dfToggleAction = None + fsToggleAction = dfToggleAction = 'Caesar si viveret, ad remum dareris' + if self.parent.is_fullscreen: fsToggleAction = contextMenu.addAction( self.main_window.QImageFactory.get_image('view-fullscreen'), @@ -842,7 +842,10 @@ class PliantQTextBrowser(QtWidgets.QTextBrowser): contextMenu = QtWidgets.QMenu() - defineAction = 'Caesar si viveret, ad remum dareris' + # The following cannot be None because a click + # outside the menu means that the action variable is None. + defineAction = fsToggleAction = dfToggleAction = 'Caesar si viveret, ad remum dareris' + if selected_word and selected_word != '': selected_word = selected_word.split()[0] define_string = self._translate('PliantQTextBrowser', 'Define') @@ -854,8 +857,6 @@ class PliantQTextBrowser(QtWidgets.QTextBrowser): self.main_window.QImageFactory.get_image('search'), self._translate('PliantQTextBrowser', 'Search')) - fsToggleAction = None - dfToggleAction = None if self.parent.is_fullscreen: fsToggleAction = contextMenu.addAction( self.main_window.QImageFactory.get_image('view-fullscreen'),