about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--kcc-c2e.py28
-rw-r--r--kcc-c2p.py18
-rw-r--r--kcc.py41
-rw-r--r--kcc/KCC_gui.py22
-rw-r--r--kcc/cbxarchive.py16
-rwxr-xr-xkcc/comic2ebook.py22
-rw-r--r--kcc/comic2panel.py22
-rwxr-xr-xkcc/image.py23
-rw-r--r--requirements.txt4
9 files changed, 87 insertions, 109 deletions
diff --git a/kcc-c2e.py b/kcc-c2e.py
index cfd6766..76dcf81 100644
--- a/kcc-c2e.py
+++ b/kcc-c2e.py
@@ -23,6 +23,34 @@ __license__ = 'ISC'
 __copyright__ = '2012-2013, Ciro Mattia Gonano <ciromattia@gmail.com>, Pawel Jastrzebski <pawelj@vulturis.eu>'
 __docformat__ = 'restructuredtext en'
 
+# Dependiences check
+missing = []
+try:
+    # noinspection PyUnresolvedReferences
+    from psutil import TOTAL_PHYMEM, Popen
+except ImportError:
+    missing.append('psutil')
+try:
+    # noinspection PyUnresolvedReferences
+    from slugify import slugify
+except ImportError:
+    missing.append('python-slugify')
+try:
+    # noinspection PyUnresolvedReferences
+    from PIL import Image, ImageOps, ImageStat, ImageChops
+    if tuple(map(int, ('2.3.0'.split(".")))) > tuple(map(int, (Image.PILLOW_VERSION.split(".")))):
+        missing.append('Pillow 2.3.0+')
+except ImportError:
+    missing.append('Pillow 2.3.0+')
+if len(missing) > 0:
+    print('ERROR: ' + ', '.join(missing) + ' is not installed!')
+    import tkinter
+    import tkinter.messagebox
+    importRoot = tkinter.Tk()
+    importRoot.withdraw()
+    tkinter.messagebox.showerror('KCC - Error', 'ERROR: ' + ', '.join(missing) + ' is not installed!')
+    exit(1)
+
 import sys
 from multiprocessing import freeze_support
 from kcc.comic2ebook import main, Copyright
diff --git a/kcc-c2p.py b/kcc-c2p.py
index d112569..a8463d4 100644
--- a/kcc-c2p.py
+++ b/kcc-c2p.py
@@ -23,6 +23,24 @@ __license__ = 'ISC'
 __copyright__ = '2012-2013, Ciro Mattia Gonano <ciromattia@gmail.com>, Pawel Jastrzebski <pawelj@vulturis.eu>'
 __docformat__ = 'restructuredtext en'
 
+# Dependiences check
+missing = []
+try:
+    # noinspection PyUnresolvedReferences
+    from PIL import Image, ImageOps, ImageStat, ImageChops
+    if tuple(map(int, ('2.3.0'.split(".")))) > tuple(map(int, (Image.PILLOW_VERSION.split(".")))):
+        missing.append('Pillow 2.3.0+')
+except ImportError:
+    missing.append('Pillow 2.3.0+')
+if len(missing) > 0:
+    print('ERROR: ' + ', '.join(missing) + ' is not installed!')
+    import tkinter
+    import tkinter.messagebox
+    importRoot = tkinter.Tk()
+    importRoot.withdraw()
+    tkinter.messagebox.showerror('KCC - Error', 'ERROR: ' + ', '.join(missing) + ' is not installed!')
+    exit(1)
+
 import sys
 from multiprocessing import freeze_support
 from kcc.comic2panel import main, Copyright
diff --git a/kcc.py b/kcc.py
index 2f06a09..ba23c4d 100644
--- a/kcc.py
+++ b/kcc.py
@@ -23,22 +23,43 @@ __license__ = 'ISC'
 __copyright__ = '2012-2013, Ciro Mattia Gonano <ciromattia@gmail.com>, Pawel Jastrzebski <pawelj@vulturis.eu>'
 __docformat__ = 'restructuredtext en'
 
-import sys
-import os
+# Dependiences check
+missing = []
 try:
     # noinspection PyUnresolvedReferences
     from PyQt5 import QtCore, QtGui, QtNetwork, QtWidgets
 except ImportError:
-    print("ERROR: PyQT5 is not installed!")
-    if sys.platform.startswith('linux'):
-        import tkinter
-        import tkinter.messagebox
-        importRoot = tkinter.Tk()
-        importRoot.withdraw()
-        tkinter.messagebox.showerror("KCC - Error", "PyQT5 is not installed!")
+    missing.append('PyQt5')
+try:
+    # noinspection PyUnresolvedReferences
+    from psutil import TOTAL_PHYMEM, Popen
+except ImportError:
+    missing.append('psutil')
+try:
+    # noinspection PyUnresolvedReferences
+    from slugify import slugify
+except ImportError:
+    missing.append('python-slugify')
+try:
+    # noinspection PyUnresolvedReferences
+    from PIL import Image, ImageOps, ImageStat, ImageChops
+    if tuple(map(int, ('2.3.0'.split(".")))) > tuple(map(int, (Image.PILLOW_VERSION.split(".")))):
+        missing.append('Pillow 2.3.0+')
+except ImportError:
+    missing.append('Pillow 2.3.0+')
+if len(missing) > 0:
+    print('ERROR: ' + ', '.join(missing) + ' is not installed!')
+    import tkinter
+    import tkinter.messagebox
+    importRoot = tkinter.Tk()
+    importRoot.withdraw()
+    tkinter.messagebox.showerror('KCC - Error', 'ERROR: ' + ', '.join(missing) + ' is not installed!')
     exit(1)
-from kcc import KCC_gui
+
+import sys
+import os
 from multiprocessing import freeze_support
+from kcc import KCC_gui
 
 # OS specific PATH variable workarounds
 if sys.platform.startswith('darwin'):
diff --git a/kcc/KCC_gui.py b/kcc/KCC_gui.py
index 64ece41..905c41f 100644
--- a/kcc/KCC_gui.py
+++ b/kcc/KCC_gui.py
@@ -26,11 +26,8 @@ import os
 import sys
 import traceback
 import urllib.request
-import urllib.error
 import urllib.parse
 import socket
-from . import comic2ebook
-from . import kindlesplit
 from time import sleep
 from shutil import move
 from http.server import BaseHTTPRequestHandler, HTTPServer
@@ -39,19 +36,10 @@ from subprocess import STDOUT, PIPE
 from PyQt5 import QtGui, QtCore, QtWidgets
 from xml.dom.minidom import parse
 from html.parser import HTMLParser
-from .KCC_rc_web import WebContent
-try:
-    # noinspection PyUnresolvedReferences
-    from psutil import TOTAL_PHYMEM, Popen
-except ImportError:
-    print("ERROR: Psutil is not installed!")
-    if sys.platform.startswith('linux'):
-        import tkinter
-        import tkinter.messagebox
-        importRoot = tkinter.Tk()
-        importRoot.withdraw()
-        tkinter.messagebox.showerror("KCC - Error", "Psutil is not installed!")
-    exit(1)
+from psutil import TOTAL_PHYMEM, Popen
+from . import comic2ebook
+from . import kindlesplit
+from . import KCC_rc_web
 if sys.platform.startswith('darwin'):
     from . import KCC_ui_osx as KCC_ui
 elif sys.platform.startswith('linux'):
@@ -993,7 +981,7 @@ class KCCGUI(KCC_ui.Ui_KCC):
         # Empty string cover all versions before this system was implemented
         purgeSettingsVersions = ['']
         self.icons = Icons()
-        self.webContent = WebContent()
+        self.webContent = KCC_rc_web.WebContent()
         self.tray = SystemTrayIcon()
         self.settings = QtCore.QSettings('KindleComicConverter', 'KindleComicConverter')
         self.settingsVersion = self.settings.value('settingsVersion', '', type=str)
diff --git a/kcc/cbxarchive.py b/kcc/cbxarchive.py
index baa3036..1e288cd 100644
--- a/kcc/cbxarchive.py
+++ b/kcc/cbxarchive.py
@@ -21,23 +21,11 @@ __docformat__ = 'restructuredtext en'
 
 import os
 import zipfile
-from . import rarfile
 import locale
-from sys import platform
 from subprocess import STDOUT, PIPE
-try:
-    # noinspection PyUnresolvedReferences
-    from psutil import Popen
-except ImportError:
-    print("ERROR: Psutil is not installed!")
-    if platform.startswith('linux'):
-        import tkinter
-        import tkinter.messagebox
-        importRoot = tkinter.Tk()
-        importRoot.withdraw()
-        tkinter.messagebox.showerror("KCC - Error", "Psutil is not installed!")
-    exit(1)
+from psutil import Popen
 from shutil import move
+from . import rarfile
 
 
 class CBxArchive:
diff --git a/kcc/comic2ebook.py b/kcc/comic2ebook.py
index 0a154de..1c88ed1 100755
--- a/kcc/comic2ebook.py
+++ b/kcc/comic2ebook.py
@@ -34,27 +34,7 @@ from multiprocessing import Pool
 from xml.dom.minidom import parse
 from uuid import uuid4
 from slugify import slugify
-try:
-    # noinspection PyUnresolvedReferences
-    from PIL import Image
-    if tuple(map(int, ('2.3.0'.split(".")))) > tuple(map(int, (Image.PILLOW_VERSION.split(".")))):
-        print("ERROR: Pillow 2.3.0 or newer is required!")
-        if sys.platform.startswith('linux'):
-            import tkinter
-            import tkinter.messagebox
-            importRoot = tkinter.Tk()
-            importRoot.withdraw()
-            tkinter.messagebox.showerror("KCC - Error", "Pillow 2.3.0 or newer is required!")
-        exit(1)
-except ImportError:
-    print("ERROR: Pillow is not installed!")
-    if sys.platform.startswith('linux'):
-        import tkinter
-        import tkinter.messagebox
-        importRoot = tkinter.Tk()
-        importRoot.withdraw()
-        tkinter.messagebox.showerror("KCC - Error", "Pillow 2.3.0 or newer is required!")
-    exit(1)
+from PIL import Image
 try:
     from PyQt5 import QtCore
 except ImportError:
diff --git a/kcc/comic2panel.py b/kcc/comic2panel.py
index 3c4cdd3..34c405f 100644
--- a/kcc/comic2panel.py
+++ b/kcc/comic2panel.py
@@ -27,27 +27,7 @@ import sys
 from shutil import rmtree, copytree, move
 from optparse import OptionParser, OptionGroup
 from multiprocessing import Pool
-try:
-    # noinspection PyUnresolvedReferences
-    from PIL import Image, ImageStat
-    if tuple(map(int, ('2.3.0'.split(".")))) > tuple(map(int, (Image.PILLOW_VERSION.split(".")))):
-        print("ERROR: Pillow 2.3.0 or newer is required!")
-        if sys.platform.startswith('linux'):
-            import tkinter
-            import tkinter.messagebox
-            importRoot = tkinter.Tk()
-            importRoot.withdraw()
-            tkinter.messagebox.showerror("KCC - Error", "Pillow 2.3.0 or newer is required!")
-        exit(1)
-except ImportError:
-    print("ERROR: Pillow is not installed!")
-    if sys.platform.startswith('linux'):
-        import tkinter
-        import tkinter.messagebox
-        importRoot = tkinter.Tk()
-        importRoot.withdraw()
-        tkinter.messagebox.showerror("KCC - Error", "Pillow 2.3.0 or newer is required!")
-    exit(1)
+from PIL import Image, ImageStat
 try:
     from PyQt5 import QtCore
 except ImportError:
diff --git a/kcc/image.py b/kcc/image.py
index 7a53a0a..f6d14a8 100755
--- a/kcc/image.py
+++ b/kcc/image.py
@@ -21,29 +21,8 @@ __copyright__ = '2012-2013, Ciro Mattia Gonano <ciromattia@gmail.com>, Pawel Jas
 __docformat__ = 'restructuredtext en'
 
 import os
-from sys import platform
 from functools import reduce
-try:
-    # noinspection PyUnresolvedReferences
-    from PIL import Image, ImageOps, ImageStat, ImageChops
-    if tuple(map(int, ('2.3.0'.split(".")))) > tuple(map(int, (Image.PILLOW_VERSION.split(".")))):
-        print("ERROR: Pillow 2.3.0 or newer is required!")
-        if platform.startswith('linux'):
-            import tkinter
-            import tkinter.messagebox
-            importRoot = tkinter.Tk()
-            importRoot.withdraw()
-            tkinter.messagebox.showerror("KCC - Error", "Pillow 2.3.0 or newer is required!")
-        exit(1)
-except ImportError:
-    print("ERROR: Pillow is not installed!")
-    if platform.startswith('linux'):
-        import tkinter
-        import tkinter.messagebox
-        importRoot = tkinter.Tk()
-        importRoot.withdraw()
-        tkinter.messagebox.showerror("KCC - Error", "Pillow 2.3.0 or newer is required!")
-    exit(1)
+from PIL import Image, ImageOps, ImageStat, ImageChops
 
 
 class ProfileData:
diff --git a/requirements.txt b/requirements.txt
deleted file mode 100644
index 264dcd4..0000000
--- a/requirements.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-Pillow==2.2.1
-Unidecode==0.04.14
-psutil==1.1.3
-python-slugify==0.0.6