1
0
mirror of https://github.com/ciromattia/kcc synced 2026-01-10 15:29:39 +00:00

Implemented version check

This commit is contained in:
Paweł Jastrzębski
2013-06-15 13:21:51 +02:00
parent ab209c6f39
commit 92df52867d

View File

@@ -26,11 +26,13 @@ import os
import sys
import shutil
import traceback
import urllib2
import comic2ebook
import kindlestrip
from image import ProfileData
from subprocess import call, STDOUT, PIPE
from PyQt4 import QtGui, QtCore
from xml.dom.minidom import parse
class Icons:
@@ -53,6 +55,26 @@ class Icons:
self.error.addPixmap(QtGui.QPixmap(":/Status/icons/error.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
# noinspection PyBroadException
class VersionThread(QtCore.QThread):
def __init__(self, parent):
QtCore.QThread.__init__(self)
self.parent = parent
def __del__(self):
self.wait()
def run(self):
try:
XML = urllib2.urlopen('http://kcc.vulturis.eu/Version.xml')
XML = parse(XML)
except Exception:
return
latestVersion = XML.childNodes[0].getElementsByTagName('latest')[0].childNodes[0].toxml()
if latestVersion != __version__:
self.emit(QtCore.SIGNAL("addMessage"), 'New version is available!', 'warning')
# noinspection PyBroadException
class WorkerThread(QtCore.QThread):
def __init__(self, parent):
@@ -332,7 +354,7 @@ class Ui_KCC(object):
self.addMessage('No files selected! Please choose files to convert.', 'error')
self.needClean = True
return
self.thread.start()
self.worker.start()
def hideProgressBar(self):
GUI.ProgressBar.hide()
@@ -352,7 +374,8 @@ class Ui_KCC(object):
self.settings = QtCore.QSettings('KindleComicConverter', 'KindleComicConverter')
self.lastPath = self.settings.value('lastPath', '', type=str)
self.lastDevice = self.settings.value('lastDevice', 10, type=int)
self.thread = WorkerThread(self)
self.worker = WorkerThread(self)
self.versionCheck = VersionThread(self)
self.needClean = True
self.GammaValue = 0
@@ -379,10 +402,11 @@ class Ui_KCC(object):
GUI.FileButton.clicked.connect(self.selectFile)
GUI.ConvertButton.clicked.connect(self.convertStart)
GUI.GammaSlider.valueChanged.connect(self.changeGamma)
KCC.connect(self.thread, QtCore.SIGNAL("progressBarTick"), self.updateProgressbar)
KCC.connect(self.thread, QtCore.SIGNAL("modeConvert"), self.modeConvert)
KCC.connect(self.thread, QtCore.SIGNAL("addMessage"), self.addMessage)
KCC.connect(self.thread, QtCore.SIGNAL("hideProgressBar"), self.hideProgressBar)
KCC.connect(self.worker, QtCore.SIGNAL("progressBarTick"), self.updateProgressbar)
KCC.connect(self.worker, QtCore.SIGNAL("modeConvert"), self.modeConvert)
KCC.connect(self.worker, QtCore.SIGNAL("addMessage"), self.addMessage)
KCC.connect(self.worker, QtCore.SIGNAL("hideProgressBar"), self.hideProgressBar)
KCC.connect(self.versionCheck, QtCore.SIGNAL("addMessage"), self.addMessage)
KCC.closeEvent = self.saveSettings
for profile in profiles:
@@ -393,4 +417,5 @@ class Ui_KCC(object):
GUI.FormatBox.setCurrentIndex(0)
self.modeBasic()
GUI.ProgressBar.hide()
self.versionCheck.start()
self.hideProgressBar()