Example #1
0
 def delFiles(self):
     """
     Lance l'action de supprimer des fichiers ou des répertoires dans les clés USB
     """
     titre1=QApplication.translate("Dialog","Choix de fichiers à supprimer",None)
     titre2=QApplication.translate("Dialog","Choix de fichiers à supprimer (jokers autorisés)",None)
     d=chooseInSticks.chooseDialog(self, titre1, titre2)
     ok = d.exec_()
     if ok:
         pathList=d.pathList()
         buttons=QMessageBox.Ok|QMessageBox.Cancel
         defaultButton=QMessageBox.Cancel
         reply=QMessageBox.warning(
             None,
             QApplication.translate("Dialog","Vous allez effacer plusieurs baladeurs",None),
             QApplication.translate("Dialog","Etes-vous certain de vouloir effacer : "+"\n".join(pathList),None),
             buttons, defaultButton)
         if reply == QMessageBox.Ok:
             cmd="usbThread.threadDeleteInUSB(p,{paths},subdir='Travail', logfile='{log}', parent=self)".format(paths=pathList,log=logFileName)
             for p in qApp.available:
                 if not p.selected: continue # pas les médias désélectionnés
                 registerCmd(cmd,p)
                 t=eval(cmd)
                 t.setDaemon(True)
                 t.start()
                 self.oldThreads.add(t)
         return True
     else:
         msgBox=QMessageBox.warning(
             None,
             QApplication.translate("Dialog","Aucun fichier sélectionné",None),
             QApplication.translate("Dialog","Veuillez choisir au moins un fichier",None))
         return True
Example #2
0
 def copyFrom(self):
     """
     Lance l'action de copier depuis les clés USB
     """
     titre1=QApplication.translate("Dialog","Choix de fichiers à copier",None)
     titre2=QApplication.translate("Dialog", "Choix de fichiers à copier depuis les baladeurs", None)
     okPrompt=QApplication.translate("Dialog", "Choix de la destination ...", None)
     d=chooseInSticks.chooseDialog(self, title1=titre1, title2=titre2, okPrompt=okPrompt)
     d.exec_()
     if not d.ok :
         msgBox=QMessageBox.warning(None,
                                    QApplication.translate("Dialog","Aucun fichier sélectionné",None),
                                    QApplication.translate("Dialog","Veuillez choisir au moins un fichier",None))
         return True
     # bon, alors c'est OK pour le choix des fichiers à envoyer
     pathList=d.pathList()
     mp=d.selectedDiskMountPoint()
     initialPath=os.path.expanduser("~")
     destDir = QFileDialog.getExistingDirectory(
         None,
         QApplication.translate("Dialog","Choisir un répertoire de destination",None),
         initialPath)
     if destDir and len(destDir)>0 :
         if self.mv:
             cmd="""usbThread.threadMoveFromUSB(
                        p,{paths},subdir=self.workdir,
                        rootPath='{mp}', dest='{dest}', logfile='{log}',
                        parent=self)""".format(paths=pathList, mp=mp, dest=destDir, log=logFileName)
         else:
             cmd="""usbThread.threadCopyFromUSB(
                        p,{paths},subdir=self.workdir,
                        rootPath='{mp}', dest='{dest}', logfile='{log}',
                        parent=self)""".format(paths=pathList, mp=mp, dest=destDir, log=logFileName)
             
         for p in qApp.available:
             if not p.selected: continue # pas les médias désélectionnés
             # on devrait vérifier s'il y a des données à copier
             # et s'il n'y en a pas, ajouter des lignes au journal
             # mais on va laisser faire ça dans le thread
             # inconvénient : ça crée quelquefois des sous-répertoires
             # vides inutiles dans le répertoire de destination.
             registerCmd(cmd,p)
             t=eval(cmd)
             t.setDaemon(True)
             t.start()
             self.oldThreads.add(t)
         # on ouvre un gestionnaire de fichiers pour voir le résultat
         buttons=QMessageBox.Ok|QMessageBox.Cancel
         defaultButton=QMessageBox.Cancel
         if QMessageBox.question(
             None,
             QApplication.translate("Dialog","Voir les copies",None),
             QApplication.translate("Dialog","Voulez-vous voir les fichiers copiés ?",None),
             buttons, defaultButton)==QMessageBox.Ok:
             subprocess.call("xdg-open '%s'" %destDir,shell=True)
         return True
     else:
         msgBox=QMessageBox.warning(
             None,
             QApplication.translate("Dialog","Destination manquante",None),
             QApplication.translate("Dialog","Veuillez choisir une destination pour la copie des fichiers",None))
         return True