Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #! /usr/bin/env python
- # *-* coding: utf8 *-*
- import sys
- import threading
- import time
- from PyQt4.QtCore import *
- from PyQt4.QtGui import *
- from main_interface import *
- from profil_dialog import *
- from error_dialog import *
- from step1_frame import *
- from step2_frame import *
- from dev_api import *
- from fonction_api import *
- from otherclass import *
- class EasyPicture(QMainWindow, Ui_easypicture):
- global gestimage
- def __init__(self):
- self.gestimage = GestImage()
- QMainWindow.__init__(self)
- Ui_easypicture.__init__(self)
- self.setupUi(self)
- self.connect(self.pushButton, SIGNAL("clicked()"), self.gesture_profile)
- self.connect(self.ui1.pushButton_1, SIGNAL("clicked()"), self.dirbrowseA)
- self.connect(self.ui2.pushButton_1, SIGNAL("clicked()"), self.dirbrowseB)
- self.connect(self.ui4.pushButton, SIGNAL("clicked()"), self.gobrowser)
- self.connect(self.pushButton_2, SIGNAL("clicked()"), self.step1_resizing)
- self.connect(self.pushButton_3, SIGNAL("clicked()"), self.closeapp)
- self.connect(self.pushButton_4, SIGNAL("clicked()"), self.backstep)
- self.connect(self.ui1.radioButton_2, SIGNAL("clicked()"), self.disablewatermark)
- self.connect(self.ui1.radioButton_3, SIGNAL("clicked()"), self.disablethumbnail)
- self.connect(self.ui1.radioButton, SIGNAL("clicked()"), self.enablewatermark)
- self.connect(self.ui1.radioButton_4, SIGNAL("clicked()"), self.enablethumbnail)
- self.connect(self.ui1.pushButton_5, SIGNAL("clicked()"), self.waterbrowse)
- self.connect(self.ui1.checkBox, SIGNAL("clicked()"), self.keepdim)
- self.connect(self.ui1.checkBox_2, SIGNAL("clicked()"), self.keeplarg)
- self.connect(self.ui1.checkBox_3, SIGNAL("clicked()"), self.keeplong)
- self.a = A()
- self.b = A()
- self.a.start()
- self.connect(self.a, SIGNAL("asignal"), self.ChangeFrameA, Qt.QueuedConnection)
- self.connect(self.b, SIGNAL("asignal"), self.ChangeFrameB, Qt.QueuedConnection)
- self.ui1.textBrowser.setPlainText(unicode("Cliquer sur Parcourir pour sélectionner un dossier...","utf-8"))
- self.ui1.textBrowser_2.setPlainText(unicode("Cliquer sur Parcourir pour sélectionner votre watermark...","utf-8"))
- self.ui1.radioButton_2.setChecked(True)
- self.disablewatermark()
- self.ui1.radioButton_3.setChecked(True)
- self.disablethumbnail()
- self.ui1.checkBox_3.setChecked(True)
- self.ui1.checkBox_2.setChecked(True)
- def gesture_profile(self):
- self.EasyPicture_profil = QtGui.QDialog()
- self.ui3 = Ui_EasyPicture_profil()
- self.ui3.setupUi(self.EasyPicture_profil)
- self.connect(self.ui3.pushButton_4, SIGNAL("clicked()"), self.generate_action)
- self.connect(self.ui3.pushButton_5, SIGNAL("clicked()"), self.load_action)
- self.EasyPicture_profil.exec_()
- def generate_action(self):
- tmp = QFileDialog.getSaveFileName(self, unicode("Sélectionner un profil :", "utf-8"), "c:/", ("Profil (*.xml)"))
- if tmp:
- profile = unicode(convertQt.qstr2str(tmp),"utf-8")
- generate_profile(self, profile)
- self.EasyPicture_profil.close()
- def load_action(self):
- tmp = QFileDialog.getOpenFileName(self, unicode("Sélectionner un profil :", "utf-8"), "c:/", ("Profil (*.xml)"))
- if tmp:
- profile = unicode(convertQt.qstr2str(tmp),"utf-8")
- load_profile(self, profile)
- self.EasyPicture_profil.close()
- def ChangeFrameA(self):
- self.label_2.setText(unicode("> Upload d'images (Etape 2/2) :","utf-8"))
- self.ui2.textBrowser.setPlainText(self.gestimage.scandir)
- self.pushButton_4.setEnabled(True)
- self.frame_2.hide()
- self.frame_3.show()
- self.frame_4.hide()
- pass
- def ChangeFrameB(self):
- self.pushButton_2.setEnabled(False)
- self.frame_2.hide()
- self.frame_3.hide()
- self.frame_4.show()
- def backstep(self):
- self.frame_4.hide()
- self.frame_3.hide()
- self.pushButton_2.setEnabled(True)
- self.label_2.setText(QtGui.QApplication.translate("easypicture", "> Redimentionnement d\'images (Etape 1/2) :", None, QtGui.QApplication.UnicodeUTF8))
- if self.gestimage.scandir:
- if self.gestimage.scandir[-1] != "/" :
- self.gestimage.scandir += "/"
- self.ui1.textBrowser.setPlainText(self.gestimage.scandir)
- else:
- self.ui1.textBrowser.setPlainText(unicode("Cliquer sur Parcourir pour sélectionner un dossier...","utf-8"))
- self.pushButton_4.setEnabled(False)
- self.gestimage.finish = False
- self.frame_2.show()
- def dirbrowseA(self):
- tmp = QFileDialog.getExistingDirectory(self, unicode("Sélectionner un dossier d\'image(s) :", "utf-8"), "c:/", QFileDialog.ShowDirsOnly)
- self.gestimage.scandir = unicode(convertQt.qstr2str(tmp),"utf-8")
- if self.gestimage.scandir:
- if self.gestimage.scandir[-1] != "/" :
- self.gestimage.scandir += "/"
- self.ui1.textBrowser.setPlainText(self.gestimage.scandir)
- else:
- self.ui1.textBrowser.setPlainText(unicode("Cliquer sur Parcourir pour sélectionner un dossier...","utf-8"))
- def dirbrowseB(self):
- tmp = QFileDialog.getExistingDirectory(self, unicode("Sélectionner un dossier d\'image(s) :", "utf-8"), "c:/", QFileDialog.ShowDirsOnly)
- self.gestimage.scandir = unicode(convertQt.qstr2str(tmp),"utf-8")
- if self.gestimage.scandir:
- if self.gestimage.scandir[-1] != "/" :
- self.gestimage.scandir += "/"
- self.ui2.textBrowser.setPlainText(self.gestimage.scandir)
- else:
- self.ui2.textBrowser.setPlainText(unicode("Cliquer sur Parcourir pour sélectionner un dossier...","utf-8"))
- def waterbrowse(self):
- tmp = QFileDialog.getOpenFileName(self, unicode("Sélectionner une watermark :", "utf-8"), "c:/", ("Images (*.png)"))
- self.gestimage.watermarksrc = unicode(convertQt.qstr2str(tmp),"utf-8")
- if self.gestimage.watermarksrc:
- self.ui1.textBrowser_2.setPlainText(self.gestimage.watermarksrc)
- else:
- self.ui1.textBrowser_2.setPlainText(unicode("Cliquer sur Parcourir pour sélectionner votre watermark...","utf-8"))
- def gobrowser(self):
- url = unicode(convertQt.qstr2str(self.ui4.textEdit_7.toPlainText()),"utf-8")
- if not url:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, aucune adresse de site internet n'a été saisi, entrer une adresse valide...","utf-8"))
- self.EasyPicture_error.exec_()
- openwebsite(url)
- def step1_resizing(self):
- if self.gestimage.finish == False :
- if self.gestimage.scandir:
- resizelarg = self.ui1.textEdit_3.toPlainText()
- resizelong = self.ui1.textEdit_4.toPlainText()
- resizedqty = self.ui1.textEdit_5.toPlainText()
- if resizedqty:
- self.gestimage.resizedquality = int(resizedqty);
- if (self.gestimage.resizedquality > 100):
- self.gestimage.resizedquality = 100
- else:
- self.gestimage.resizedquality = 75
- if self.ui1.checkBox.isChecked():
- if resizelarg and resizelong:
- self.gestimage.resizedsize = (int(resizelarg), int(resizelong))
- self.gestimage.keepsize = True
- else:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas saisie de dimension pour le redimentionnement...","utf-8"))
- self.EasyPicture_error.exec_()
- return
- self.gestimage.keepsize = False
- self.gestimage.keeppropheight = False
- self.gestimage.keeppropwidth = False
- else:
- self.gestimage.keepsize = False
- if self.ui1.checkBox_3.isChecked() or self.ui1.checkBox_2.isChecked():
- if self.ui1.checkBox_3.isChecked():
- if resizelong:
- self.gestimage.resizedsize = (self.gestimage.resizedsize[0], int(resizelong))
- self.gestimage.keeppropheight = True
- else:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas saisie de dimension pour le redimentionnement...","utf-8"))
- self.EasyPicture_error.exec_()
- return
- self.gestimage.keeppropheight = False
- if self.ui1.checkBox_2.isChecked():
- if resizelarg:
- self.gestimage.resizedsize = (int(resizelarg), self.gestimage.resizedsize[1])
- self.gestimage.keeppropwidth = True
- else:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas saisie de dimension pour le redimentionnement...","utf-8"))
- self.EasyPicture_error.exec_()
- return
- self.gestimage.keeppropwidth = False
- else:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas saisie de dimension pour le redimentionnement...","utf-8"))
- self.EasyPicture_error.exec_()
- pass
- self.gestimage.verrou = True
- if self.ui1.radioButton.isChecked():
- self.gestimage.watermarkmod = True
- if not self.gestimage.watermarksrc:
- self.ui1.radioButton_2.setChecked(True)
- self.disablewatermark()
- self.gestimage.watermarkmod = False
- else:
- if os.path.isfile(self.gestimage.watermarksrc) == False:
- self.ui1.radioButton_2.setChecked(True)
- self.disablewatermark()
- self.gestimage.watermarkmod = False
- else:
- self.gestimage.watermarkmod = False
- if self.ui1.radioButton_4.isChecked():
- self.gestimage.thumbmod = True
- thumblarg = self.ui1.textEdit.toPlainText();
- thumblong = self.ui1.textEdit_2.toPlainText();
- if not thumblarg or not thumblong:
- self.ui1.radioButton_3.setChecked(True)
- self.disablethumbnail()
- self.gestimage.thumbmod = False
- else:
- self.gestimage.thumbsize = (int(thumblarg), int(thumblong))
- thumbqty = self.ui1.textEdit_6.toPlainText()
- if thumbqty:
- self.gestimage.thumbquality = int(thumbqty);
- if (self.gestimage.thumbquality > 100):
- self.gestimage.thumbquality = 100
- else:
- self.gestimage.thumbquality = 75
- else:
- self.gestimage.thumbmod = False
- a = threading.Thread(None, makepicture, None, (self.gestimage,), {})
- b = threading.Thread(None, self.incrembarA, None, (self.gestimage,), {})
- self.pushButton_2.setEnabled(False)
- self.gestimage.verroubis = True
- self.progressBar.setEnabled(True)
- a.start()
- b.start()
- else:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas sélectionner de répertoire d'image(s)...","utf-8"))
- self.EasyPicture_error.exec_()
- return
- else:
- self.step2_upload()
- pass
- def step2_upload(self):
- if not self.gestimage.scandir:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas sélectionner de répertoire d'image(s)...","utf-8"))
- self.EasyPicture_error.exec_()
- return
- address = unicode(convertQt.qstr2str(self.ui2.textEdit_3.toPlainText()),"utf-8")
- username = unicode(convertQt.qstr2str(self.ui2.textEdit_4.toPlainText()),"utf-8")
- password = unicode(convertQt.qstr2str(self.ui2.textEdit_5.toPlainText()),"utf-8")
- destination = unicode(convertQt.qstr2str(self.ui2.textEdit_7.toPlainText()),"utf-8")
- c = threading.Thread(None, uploadpicture, None, (self.gestimage, address, username, password, destination,), {})
- d = threading.Thread(None, self.incrembarB, None, (self.gestimage,), {})
- if address and username and password and destination:
- self.pushButton_2.setEnabled(False)
- self.pushButton_4.setEnabled(False)
- self.progressBar.setEnabled(True)
- self.gestimage.verroubis = True
- c.start()
- d.start()
- else:
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas rempli le/les champ(s) correctement...","utf-8"))
- self.EasyPicture_error.exec_()
- def incrembarA(self, GestImage):
- while (GestImage.verroubis):
- pass
- while (GestImage.posimage < GestImage.nbimage):
- time.sleep(1)
- self.progressBar.setValue(GestImage.posimage * GestImage.timebar)
- time.sleep(1)
- GestImage.reset()
- self.progressBar.setValue(100)
- time.sleep(1)
- self.progressBar.setEnabled(False)
- time.sleep(1)
- self.progressBar.setValue(0)
- while (self.gestimage.verrou):
- pass
- self.pushButton_2.setEnabled(True)
- GestImage.finish = True
- self.a.afunc()
- pass
- def incrembarB(self, GestImage):
- while (GestImage.verroubis):
- pass
- while (GestImage.posimage < GestImage.nbimage):
- time.sleep(1)
- self.progressBar.setValue(GestImage.posimage * GestImage.timebar)
- if (GestImage.error_connexion == True):
- self.EasyPicture_error = QtGui.QDialog()
- self.ui5 = Ui_error()
- self.ui5.setupUi(self.EasyPicture_error)
- self.ui5.label.setText(unicode("- Erreur, vous n'avez pas rempli le/les champ(s) correctement...","utf-8"))
- self.EasyPicture_error.exec_()
- time.sleep(1)
- GestImage.reset()
- self.progressBar.setValue(100)
- time.sleep(1)
- self.progressBar.setEnabled(False)
- time.sleep(1)
- self.progressBar.setValue(0)
- self.pushButton_2.setEnabled(True)
- self.pushButton_4.setEnabled(True)
- GestImage.finish = True
- self.b.afunc()
- pass
- def enablewatermark(self):
- self.ui1.label_10.setEnabled(True)
- self.ui1.textBrowser_2.setEnabled(True)
- self.ui1.pushButton_5.setEnabled(True)
- def disablewatermark(self):
- self.ui1.label_10.setEnabled(False)
- self.ui1.textBrowser_2.setEnabled(False)
- self.ui1.pushButton_5.setEnabled(False)
- def enablethumbnail(self):
- self.ui1.label_7.setEnabled(True)
- self.ui1.label_8.setEnabled(True)
- self.ui1.label_9.setEnabled(True)
- self.ui1.label_18.setEnabled(True)
- self.ui1.label_19.setEnabled(True)
- self.ui1.textEdit.setEnabled(True)
- self.ui1.textEdit_2.setEnabled(True)
- self.ui1.textEdit_6.setEnabled(True)
- self.ui1.label_17.setEnabled(True)
- self.ui1.label_25.setEnabled(True)
- def disablethumbnail(self):
- self.ui1.label_7.setEnabled(False)
- self.ui1.label_8.setEnabled(False)
- self.ui1.label_9.setEnabled(False)
- self.ui1.label_18.setEnabled(False)
- self.ui1.label_19.setEnabled(False)
- self.ui1.textEdit.setEnabled(False)
- self.ui1.textEdit_2.setEnabled(False)
- self.ui1.textEdit_6.setEnabled(False)
- self.ui1.label_17.setEnabled(False)
- self.ui1.label_25.setEnabled(False)
- def keepdim(self):
- if self.ui1.checkBox.isChecked():
- self.pushButton_2.setEnabled(True)
- self.ui1.label_12.setEnabled(True)
- self.ui1.textEdit_5.setEnabled(True)
- self.ui1.label_24.setEnabled(True)
- self.ui1.label_16.setEnabled(True)
- self.disablelarg()
- self.disablelong()
- self.enablelarg()
- self.enablelong()
- self.ui1.label_13.setEnabled(False)
- self.ui1.checkBox_2.setEnabled(False)
- self.ui1.checkBox_3.setEnabled(False)
- else:
- if (self.ui1.checkBox_2.isChecked() == False and self.ui1.checkBox_3.isChecked() == False):
- self.pushButton_2.setEnabled(False)
- self.ui1.label_12.setEnabled(False)
- self.ui1.textEdit_5.setEnabled(False)
- self.ui1.label_24.setEnabled(False)
- self.ui1.label_16.setEnabled(False)
- self.ui1.label_13.setEnabled(True)
- self.keeplarg()
- self.keeplong()
- self.ui1.checkBox_2.setEnabled(True)
- self.ui1.checkBox_3.setEnabled(True)
- def keeplarg(self):
- if self.ui1.checkBox_2.isChecked():
- self.pushButton_2.setEnabled(True)
- self.ui1.label_12.setEnabled(True)
- self.ui1.textEdit_5.setEnabled(True)
- self.ui1.label_24.setEnabled(True)
- self.ui1.label_16.setEnabled(True)
- if self.ui1.checkBox_3.isChecked():
- self.enablelarg()
- self.enablelong()
- else:
- self.enablelarg()
- self.disablelong()
- else:
- if (self.ui1.checkBox.isChecked() == False and self.ui1.checkBox_3.isChecked() == False):
- self.pushButton_2.setEnabled(False)
- self.ui1.label_12.setEnabled(False)
- self.ui1.textEdit_5.setEnabled(False)
- self.ui1.label_24.setEnabled(False)
- self.ui1.label_16.setEnabled(False)
- self.disablelarg()
- def keeplong(self):
- if self.ui1.checkBox_3.isChecked():
- self.pushButton_2.setEnabled(True)
- self.ui1.label_12.setEnabled(True)
- self.ui1.textEdit_5.setEnabled(True)
- self.ui1.label_24.setEnabled(True)
- self.ui1.label_16.setEnabled(True)
- if self.ui1.checkBox_2.isChecked():
- self.enablelarg()
- self.enablelong()
- else:
- self.enablelong()
- self.disablelarg()
- else:
- if (self.ui1.checkBox.isChecked() == False and self.ui1.checkBox_2.isChecked() == False):
- self.pushButton_2.setEnabled(False)
- self.ui1.label_12.setEnabled(False)
- self.ui1.textEdit_5.setEnabled(False)
- self.ui1.label_24.setEnabled(False)
- self.ui1.label_16.setEnabled(False)
- self.disablelong()
- def enablelarg(self):
- self.ui1.textEdit_3.setEnabled(True)
- self.ui1.label_14.setEnabled(True)
- self.ui1.label_22.setEnabled(True)
- def disablelarg(self):
- self.ui1.textEdit_3.setText("")
- self.ui1.textEdit_3.setEnabled(False)
- self.ui1.label_14.setEnabled(False)
- self.ui1.label_22.setEnabled(False)
- def enablelong(self):
- self.ui1.textEdit_4.setEnabled(True)
- self.ui1.label_15.setEnabled(True)
- self.ui1.label_23.setEnabled(True)
- def disablelong(self):
- self.ui1.textEdit_4.setText("")
- self.ui1.textEdit_4.setEnabled(False)
- self.ui1.label_15.setEnabled(False)
- self.ui1.label_23.setEnabled(False)
- def closeapp(self):
- return sys.exit()
- if __name__ == "__main__":
- app = QApplication(sys.argv)
- window = EasyPicture()
- window.show()
- sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement