# SVN changeset patch # User ralonso # Date 2010-05-24 02:15:08.669798 # Revision 66 verificacion paso 1 Index: bk_manager/trunk/functions/functions.py =================================================================== diff --git a/bk_manager/trunk/functions/functions.py b/bk_manager/trunk/functions/functions.py --- a/bk_manager/trunk/functions/functions.py (revision 65) +++ b/bk_manager/trunk/functions/functions.py (revision 66) @@ -23,10 +23,9 @@ def dir_exists(var_dir, self): if os.path.isdir(var_dir): - self.txtInfo.append("Ruta valida, sin error:" + str(var_dir)) return True else: - self.txtInfo.append("Ruta no valida, output_error:" + str(var_dir)) + self.txtInfo.append("Incorrect path:" + str(var_dir)) return False @@ -50,7 +49,7 @@ #Si no se encuentra ningun archivo if len(output) == 0: - self.txtInfo.append("No se encontraron archivos") + self.txtInfo.append("File not found") self.btnGbkp.setEnabled(False) return @@ -73,8 +72,6 @@ self.var_sublist=[] for i in self.var_list[self.lstStartDay.currentIndex():self.lstStartDay.currentIndex() + self.lstStopDay.currentIndex()+1]: self.var_sublist.append(i) - if len(self.var_sublist) == 0: - self.txtInfo.append("No existen archivos encontrados") #----------------------------------------------------- Verifica los parametros faltantes ----------------------------------------------------------- @@ -82,12 +79,12 @@ def validate_parameters(self): #Verifica que las ruta del proyecto sea valida if self.statusRpath == False: - self.txtInfo.append("Ruta de proyecto no valida") + self.txtInfo.append("Incorrect proyect path") return False #Verifica la etiqueta if len(self.var_Elabel) == 0: - self.txtInfo.append("Debe ingresar el nombre de la etiqueta") + self.txtInfo.append("Enter label") return False return True @@ -96,14 +93,17 @@ #------------------------------------------------- Crea directorios en la ruta indicada ----------------------------------------------------------- def make_dirs(list_dirs, self): + """ + + """ for var_dir in list_dirs: shutil.rmtree(self.var_Rpath+'/'+var_dir, True) var_output=commands.getstatusoutput("mkdir -p "+self.var_Rpath+'/'+var_dir)[0] if var_output != 0: - self.txtInfo.append("Error al crear el directorio "+var_dir+", output_error:" + str(var_output)) + self.txtInfo.append("Error creating directory: "+var_dir+", output_error:" + str(var_output)) return False - self.txtInfo.append('Carpetas creadas correctamente') + self.txtInfo.append('Directories created correctly') return True @@ -156,13 +156,13 @@ var_file.write(var_tmp_path+'='+line+'\n') var_file.close() - self.txtInfo.append("Archivos .dat creados") + self.txtInfo.append("configuration files created") return var_n #------------------------------ Genera los archivos .print con los cuales se creara los postscript ----------------------------------- -def make_files_print2(self): +def make_files_print(self): var_Rpath_ppath=self.var_Rpath+"/ppath" #Ruta de los archivos a grabar var_Rpath_gpath=self.var_Rpath+"/gpath" #Ruta de los archivos postscript @@ -203,8 +203,6 @@ list_files.append([var_first_folder, var_first_file, var_last_file]) var_lines2 = lines_print(list_files, self.var_Elabel) - self.txtInfo.append("lineas: "+str(len(var_lines2))) - for k in range(0, len(var_lines2) / 5): var_lines=["\n"] @@ -214,8 +212,6 @@ var_lines.append("\n") var_labels.append(var_lines) - self.txtInfo.append("labels totales: "+str(len(var_labels))) - for i in range(0, (len(var_labels) // 33) +1 ): var_file=var_Rpath_gpath+"/"+self.var_Elabel+"_"+i2s(i+1) file_ps = open(var_file+".print","w") @@ -226,7 +222,6 @@ for label in var_sub_labels: for line in label: - self.txtInfo.insertPlainText(line) file_ps.write(line) file_ps.close() var_cmd="enscript "+var_file+".print -p "+var_file+".ps -f Times-Roman7 " \ @@ -256,64 +251,9 @@ var_lines.append(var_first_file[-12:-8]+" "+var_first_file[-8:-5]+" "+var_folder +" "+var_first_file[-5:-2]+" " +var_last_file[-5:-2]+" "+var_date_first_file+" "+var_date_last_file+"\n") -# var_lines = 33 * var_lines #Nos aseguramos que sea un mutiplo de 5 while (len(var_lines) % 5) != 0: var_lines.append("\n") return var_lines - -#def make_files_print(self): -# -# var_Rpath_ppath=self.var_Rpath+"/ppath" #Ruta de los archivos a grabar -# -# # Se leen todos los archivos .dat creados para crear las etiquetas en los archivos .print -# for var_n in range(1, self.var_Discs + 1): -# #se abren los archivos .dat en modo lectura -# var_file = open(var_Rpath_ppath+"/"+self.var_Elabel+"_"+i2s(var_n)+".dat","r") -# lines=var_file.readlines() # Se lee las lineas en el archivo y se almacenan en la lista -# # Se crea el archivo .print -# var_file_print = open(var_Rpath_ppath+"/"+self.var_Elabel+"_"+i2s(var_n)+".print","w") -# var_file_print.write(self.var_Elabel+" "+i2s(var_n)+"/"+i2s(self.var_Discs)+"\n") -# var_file_print.write("Year Doy Folder Set Time range\n") -# -# var_first_folder = lines[0].split('=')[0] -# var_first_file = (lines[0].split('=')[1])[:-1] -# var_date_first_file=commands.getstatusoutput("date -r "+var_first_file+" +'%T'")[1] -# -# for j in range(1, len(lines)-1): -# var_tmp_folder = lines[j].split('=')[0] -# var_tmp_file = (lines[j].split('=')[1])[:-1] -# -# # Si el subfolder superior o la fecha del archivo cambia se genera una nueva linea -# if (var_tmp_folder != var_first_folder) or (var_tmp_file[0:-5] != var_first_file[0:-5]): -# var_last_file = (lines[j-1].split('=')[1])[:-1] -# var_date_last_file=commands.getstatusoutput("date -r "+var_last_file+" +'%T'")[1] -# # Si el archivo se grabara directamente en la / del DVD y no en un /directorio/ -# # se usa la etiqueta para indicar la parte de la etiqueta donde va el subdirectorio -# if var_first_folder == '/': -# var_folder = self.var_Elabel -# else: -# var_folder = var_first_folder.split('/')[-2] -# -# var_file_print.write(var_first_file[-12:-8]+" "+var_first_file[-8:-5]+" "+var_folder +" "+var_first_file[-5:-2]+" " -# +var_last_file[-5:-2]+" "+var_date_first_file+" "+var_date_last_file+"\n") -# -# var_first_folder = lines[j].split('=')[0] -# var_first_file = (lines[j].split('=')[1])[:-1] -# var_date_first_file=commands.getstatusoutput("date -r "+var_first_file+" +'%T'")[1] -# -# var_last_file = (lines[-1].split('=')[1])[:-1] -# var_date_last_file=commands.getstatusoutput("date -r "+var_last_file+" +'%T'")[1] -# -# if var_first_folder == '/': -# var_folder = self.var_Elabel -# else: -# var_folder = var_first_folder.split('/')[-2] -# -# var_file_print.write(var_first_file[-12:-8]+" "+var_first_file[-8:-5]+" "+var_folder +" "+var_first_file[-5:-2]+" " -# +var_last_file[-5:-2]+" "+var_date_first_file+" "+var_date_last_file+"\n") -# -# var_file.close() -# var_file_print.close() Index: bk_manager/trunk/functions/functions2.py =================================================================== diff --git a/bk_manager/trunk/functions/functions2.py b/bk_manager/trunk/functions/functions2.py --- a/bk_manager/trunk/functions/functions2.py (revision 65) +++ b/bk_manager/trunk/functions/functions2.py (revision 66) @@ -146,6 +146,7 @@ self.tabParameters.setEnabled(not(var_bool)) self.lstDcapacity.setEnabled(not(var_bool)) self.txtDcapacity.setEnabled(not(var_bool)) + self.actionChange_Parameters.setEnabled(var_bool) self.btnGbkp.setEnabled(not(var_bool)) self.btnRestart.setEnabled(var_bool) self.btnStartburn.setEnabled(var_bool) Index: bk_manager/trunk/jro_backup_manager.e4p =================================================================== diff --git a/bk_manager/trunk/jro_backup_manager.e4p b/bk_manager/trunk/jro_backup_manager.e4p --- a/bk_manager/trunk/jro_backup_manager.e4p (revision 65) +++ b/bk_manager/trunk/jro_backup_manager.e4p (revision 66) @@ -1,7 +1,7 @@ - + en @@ -22,10 +22,12 @@ functions/functions2.py functions/func_doc.py ui/Ui_Parameters.py + ui/Ui_About.py
ui/MainWindow.ui
ui/Parameters.ui
+
ui/About.ui
Index: bk_manager/trunk/ui/MainWindow.py =================================================================== diff --git a/bk_manager/trunk/ui/MainWindow.py b/bk_manager/trunk/ui/MainWindow.py --- a/bk_manager/trunk/ui/MainWindow.py (revision 65) +++ b/bk_manager/trunk/ui/MainWindow.py (revision 66) @@ -9,6 +9,7 @@ from PyQt4 import QtCore from Ui_MainWindow import Ui_MainWindow from Ui_Parameters import Ui_Parameters +from Ui_About import Ui_About from PyQt4 import QtGui from subprocess import * import sys @@ -51,7 +52,7 @@ #Revisa si existe el archivo de confirguracion if os.path.isfile("parameters.conf"): - self.txtInfo.append("Archivo de configuracion encontrado") + self.txtInfo.append("Parameters were loaded from configuration file") functions2.get_parameters_conf(self) self.txtInfo.append("El proyecto es de "+str(self.var_Discs)+" discos") else: @@ -69,6 +70,7 @@ # self.connect(self.actionChange_Parameters, QtCore.SIGNAL("triggered()"), self.dlgui.exec) self.connect(self.actionChange_Parameters, QtCore.SIGNAL("triggered()"), self.changeParameters) + self.connect(self.actionAbout, QtCore.SIGNAL("triggered()"), self.about) self.var_process = QtCore.QProcess() self.connect(self.var_process, QtCore.SIGNAL('readyReadStandardOutput()'), self.readOuput) @@ -84,12 +86,17 @@ dlgui=Ui_Parameters() dlgui.setupUi(dlg) if (dlg.exec_() == QtGui.QDialog.Accepted): - self.txtInfo.append(str(dlgui.txtNcopys.value())) + if dlgui.txtDisc.value() > self.var_Discs or dlgui.txtCopy.value() > dlgui.txtNcopys.value(): + self.txtInfo.append("Wrong parameters") # txtDisc # txtCopy - - - + + + def about(self): + dlg_about=QtGui.QDialog() + dlgui_about=Ui_About() + dlgui_about.setupUi(dlg_about) + dlg_about.exec_() #----------------------------------------------------- Funciones del proceso --------------------------------------------------------------- @@ -276,11 +283,15 @@ return var_files_list = functions.list_files(self) #Se obtiene la lista de archivos a grabar + self.var_Discs = functions.make_files_dat(var_files_list, self) #Se crean los archivos .dat - functions.make_files_print2(self) # Se crean los archivos .print + + functions.make_files_print(self) # Se crean los archivos .print + functions2.make_parameters_conf(self) # se crea el archivo parameters.conf - self.txtInfo.append("Numero de archivos .iso a grabar: "+str(self.var_Discs)) - self.txtInfo.append("Numero de DVDs totales a grabar: "+str(self.var_Discs * self.var_Copys)) + + self.txtInfo.append("Total number of discs for recording: "+str(self.var_Discs * self.var_Copys)) + #Se bloquean los parametros de configuracion functions2.enabled_items1(True, self) @@ -312,12 +323,12 @@ #Verifica que exista algun dispositivo de grabacion seleccionado if not(functions2.selected_devices(self)): - self.txtInfo.append("No hay ningun dispositivo de grabacion seleccionado ") + self.txtInfo.append("There is no recording device selected") return #Lista los dispositivos de grabacion a usar for dev in self.var_devices: - self.txtInfo.append("dispositivo :"+dev) + self.txtInfo.append("recording device :"+dev) #Asigna las variables con los valores iniciales self.var_disc_n = 0 # numero de disco actual para grabacion @@ -347,7 +358,7 @@ #Si ya se grabaron todos los discos if self.var_disc_n > self.var_Discs: self.bool_state_burning = False - self.txtInfo.append("GRABACION TERMINADA") + self.txtInfo.append("Recording process is complete") # functions2.eject_devices(self) # Expulsa las bandejas de los dispostivos de grabacion return @@ -405,7 +416,7 @@ self.bool_state_burning = False self.var_process.terminate() #Termina el proceso, si puede # self.var_process.kill() #Mata el proceso, no es la forma adecuada, solo usar si terminate() no funciona - self.txtInfo.append("SE DETUVO LA GRABACION MANUALMENTE") + self.txtInfo.append("Stopped recording") functions2.enabled_items2(False, self) self.btnStartburn.setText("Start Burn") @@ -451,5 +462,4 @@ """ Slot documentation goes here. """ - # TODO: not implemented yet - raise NotImplementedError + pass Index: bk_manager/trunk/ui/MainWindow.ui =================================================================== diff --git a/bk_manager/trunk/ui/MainWindow.ui b/bk_manager/trunk/ui/MainWindow.ui --- a/bk_manager/trunk/ui/MainWindow.ui (revision 65) +++ b/bk_manager/trunk/ui/MainWindow.ui (revision 66) @@ -27,7 +27,7 @@ - 2 + 0 @@ -251,12 +251,19 @@ - - - - - - 16 + + + true + + + + + + + 1 + + + 16 @@ -265,6 +272,9 @@ -sao + + true + @@ -295,12 +305,19 @@ - - - - - - 16 + + + true + + + + + + + 1 + + + 16 @@ -309,6 +326,9 @@ -sao + + true + @@ -339,12 +359,19 @@ - - - - - - 16 + + + true + + + + + + + 1 + + + 16 @@ -353,6 +380,9 @@ -sao + + true + @@ -383,12 +413,19 @@ - - - - - - 16 + + + true + + + + + + + 1 + + + 16 @@ -397,6 +434,9 @@ -sao + + true + @@ -419,49 +459,58 @@ Qt::Vertical - QSizePolicy::Fixed + QSizePolicy::Minimum 20 - 25 + 40 - - - Device - - - - - - - Burn Speed - - - - - - - Burn Mode - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - + + + + + + Device + + + + + + + Burn Speed + + + + + + + Burn Mode + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 40 + + + + + + @@ -1216,12 +1265,6 @@ 21 - - - Parameters - - - File @@ -1234,12 +1277,21 @@ + + + Parameters + + + + + false + Change Parameters @@ -1251,7 +1303,7 @@ - About JRO BACKUP MANAGER + About @@ -1333,8 +1385,8 @@ 341 - 495 - 338 + 599 + 349 Index: bk_manager/trunk/ui/Ui_MainWindow.py =================================================================== diff --git a/bk_manager/trunk/ui/Ui_MainWindow.py b/bk_manager/trunk/ui/Ui_MainWindow.py --- a/bk_manager/trunk/ui/Ui_MainWindow.py (revision 65) +++ b/bk_manager/trunk/ui/Ui_MainWindow.py (revision 66) @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file '/home/ricardoar/JRO_SVN/eric4/jro_backup_manager/ui/MainWindow.ui' # -# Created: Sun May 23 12:15:30 2010 +# Created: Sun May 23 20:29:23 2010 # by: PyQt4 UI code generator 4.7.2 # # WARNING! All changes made in this file will be lost! @@ -150,12 +150,16 @@ self.verticalLayout_11 = QtGui.QVBoxLayout(self.grpDevA) self.verticalLayout_11.setObjectName("verticalLayout_11") self.txtDeviceA = QtGui.QLineEdit(self.grpDevA) + self.txtDeviceA.setReadOnly(True) self.txtDeviceA.setObjectName("txtDeviceA") self.verticalLayout_11.addWidget(self.txtDeviceA) - self.txtBspeedA = QtGui.QLineEdit(self.grpDevA) + self.txtBspeedA = QtGui.QSpinBox(self.grpDevA) + self.txtBspeedA.setMinimum(1) + self.txtBspeedA.setProperty("value", 16) self.txtBspeedA.setObjectName("txtBspeedA") self.verticalLayout_11.addWidget(self.txtBspeedA) self.txtBmodeA = QtGui.QLineEdit(self.grpDevA) + self.txtBmodeA.setReadOnly(True) self.txtBmodeA.setObjectName("txtBmodeA") self.verticalLayout_11.addWidget(self.txtBmodeA) self.btnTdevA = QtGui.QPushButton(self.grpDevA) @@ -174,12 +178,16 @@ self.verticalLayout_12 = QtGui.QVBoxLayout(self.grpDevB) self.verticalLayout_12.setObjectName("verticalLayout_12") self.txtDeviceB = QtGui.QLineEdit(self.grpDevB) + self.txtDeviceB.setReadOnly(True) self.txtDeviceB.setObjectName("txtDeviceB") self.verticalLayout_12.addWidget(self.txtDeviceB) - self.txtBspeedB = QtGui.QLineEdit(self.grpDevB) + self.txtBspeedB = QtGui.QSpinBox(self.grpDevB) + self.txtBspeedB.setMinimum(1) + self.txtBspeedB.setProperty("value", 16) self.txtBspeedB.setObjectName("txtBspeedB") self.verticalLayout_12.addWidget(self.txtBspeedB) self.txtBmodeB = QtGui.QLineEdit(self.grpDevB) + self.txtBmodeB.setReadOnly(True) self.txtBmodeB.setObjectName("txtBmodeB") self.verticalLayout_12.addWidget(self.txtBmodeB) self.btnTdevB = QtGui.QPushButton(self.grpDevB) @@ -198,12 +206,16 @@ self.verticalLayout_13 = QtGui.QVBoxLayout(self.grpDevC) self.verticalLayout_13.setObjectName("verticalLayout_13") self.txtDeviceC = QtGui.QLineEdit(self.grpDevC) + self.txtDeviceC.setReadOnly(True) self.txtDeviceC.setObjectName("txtDeviceC") self.verticalLayout_13.addWidget(self.txtDeviceC) - self.txtBspeedC = QtGui.QLineEdit(self.grpDevC) + self.txtBspeedC = QtGui.QSpinBox(self.grpDevC) + self.txtBspeedC.setMinimum(1) + self.txtBspeedC.setProperty("value", 16) self.txtBspeedC.setObjectName("txtBspeedC") self.verticalLayout_13.addWidget(self.txtBspeedC) self.txtBmodeC = QtGui.QLineEdit(self.grpDevC) + self.txtBmodeC.setReadOnly(True) self.txtBmodeC.setObjectName("txtBmodeC") self.verticalLayout_13.addWidget(self.txtBmodeC) self.btnTdevC = QtGui.QPushButton(self.grpDevC) @@ -222,12 +234,16 @@ self.verticalLayout_14 = QtGui.QVBoxLayout(self.grpDevD) self.verticalLayout_14.setObjectName("verticalLayout_14") self.txtDeviceD = QtGui.QLineEdit(self.grpDevD) + self.txtDeviceD.setReadOnly(True) self.txtDeviceD.setObjectName("txtDeviceD") self.verticalLayout_14.addWidget(self.txtDeviceD) - self.txtBspeedD = QtGui.QLineEdit(self.grpDevD) + self.txtBspeedD = QtGui.QSpinBox(self.grpDevD) + self.txtBspeedD.setMinimum(1) + self.txtBspeedD.setProperty("value", 16) self.txtBspeedD.setObjectName("txtBspeedD") self.verticalLayout_14.addWidget(self.txtBspeedD) self.txtBmodeD = QtGui.QLineEdit(self.grpDevD) + self.txtBmodeD.setReadOnly(True) self.txtBmodeD.setObjectName("txtBmodeD") self.verticalLayout_14.addWidget(self.txtBmodeD) self.btnTdevD = QtGui.QPushButton(self.grpDevD) @@ -567,6 +583,7 @@ self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.actionChange_Parameters = QtGui.QAction(MainWindow) + self.actionChange_Parameters.setEnabled(True) self.actionChange_Parameters.setObjectName("actionChange_Parameters") self.actionQuit = QtGui.QAction(MainWindow) self.actionQuit.setObjectName("actionQuit") @@ -580,7 +597,7 @@ self.menubar.addAction(self.menuHelp.menuAction()) self.retranslateUi(MainWindow) - self.tabWidget.setCurrentIndex(2) + self.tabWidget.setCurrentIndex(0) self.lstDcapacity.setCurrentIndex(2) QtCore.QObject.connect(self.actionQuit, QtCore.SIGNAL("triggered()"), MainWindow.close) QtCore.QObject.connect(self.chkCheck, QtCore.SIGNAL("toggled(bool)"), self.txtTDpath.setEnabled) @@ -622,19 +639,15 @@ self.lblStopDay.setText(QtGui.QApplication.translate("MainWindow", "Stop Day:", None, QtGui.QApplication.UnicodeUTF8)) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabParameters), QtGui.QApplication.translate("MainWindow", "Parameters", None, QtGui.QApplication.UnicodeUTF8)) self.chkDevA.setText(QtGui.QApplication.translate("MainWindow", "Dev A", None, QtGui.QApplication.UnicodeUTF8)) - self.txtBspeedA.setText(QtGui.QApplication.translate("MainWindow", "16", None, QtGui.QApplication.UnicodeUTF8)) self.txtBmodeA.setText(QtGui.QApplication.translate("MainWindow", "-sao", None, QtGui.QApplication.UnicodeUTF8)) self.btnTdevA.setText(QtGui.QApplication.translate("MainWindow", "Test DevA", None, QtGui.QApplication.UnicodeUTF8)) self.chkDevB.setText(QtGui.QApplication.translate("MainWindow", "Dev B", None, QtGui.QApplication.UnicodeUTF8)) - self.txtBspeedB.setText(QtGui.QApplication.translate("MainWindow", "16", None, QtGui.QApplication.UnicodeUTF8)) self.txtBmodeB.setText(QtGui.QApplication.translate("MainWindow", "-sao", None, QtGui.QApplication.UnicodeUTF8)) self.btnTdevB.setText(QtGui.QApplication.translate("MainWindow", "Test DevB", None, QtGui.QApplication.UnicodeUTF8)) self.chkDevC.setText(QtGui.QApplication.translate("MainWindow", "Dev C", None, QtGui.QApplication.UnicodeUTF8)) - self.txtBspeedC.setText(QtGui.QApplication.translate("MainWindow", "16", None, QtGui.QApplication.UnicodeUTF8)) self.txtBmodeC.setText(QtGui.QApplication.translate("MainWindow", "-sao", None, QtGui.QApplication.UnicodeUTF8)) self.btnTdevC.setText(QtGui.QApplication.translate("MainWindow", "Test DevC", None, QtGui.QApplication.UnicodeUTF8)) self.chkDevD.setText(QtGui.QApplication.translate("MainWindow", "Dev D", None, QtGui.QApplication.UnicodeUTF8)) - self.txtBspeedD.setText(QtGui.QApplication.translate("MainWindow", "16", None, QtGui.QApplication.UnicodeUTF8)) self.txtBmodeD.setText(QtGui.QApplication.translate("MainWindow", "-sao", None, QtGui.QApplication.UnicodeUTF8)) self.btnTdevD.setText(QtGui.QApplication.translate("MainWindow", "Test DevD", None, QtGui.QApplication.UnicodeUTF8)) self.lblDevice.setText(QtGui.QApplication.translate("MainWindow", "Device", None, QtGui.QApplication.UnicodeUTF8))