##// END OF EJS Templates
Empezando con la funcion mas grande, y creacion de archivo de conf
ralonso -
r44:45
parent child
Show More
@@ -0,0 +1,6
1 #Usando el modulo "subprocess", eric4 pide seleccion del tipo de subproceso (padre o hijo)
2 #por ello se prefiere usar el modulo "commands"
3 #p1= Popen(['find', var_Dpath, '-name', '*.r'], stdout=PIPE)
4 #p2= Popen(['awk', '-F/', '{print substr($NF,2,7)}'], stdin=p1.stdout, stdout=PIPE)
5 #output_p2= p2.communicate()[0]
6 #self.txtInfo.setText(output_p2)
@@ -59,8 +59,9
59
59
60 #Si no se encuentra ningun archivo
60 #Si no se encuentra ningun archivo
61 if len(output) == 0:
61 if len(output) == 0:
62 self.btnGbkp.setEnabled(False)
62 self.txtInfo.append("No se encontraron archivos")
63 return
63 self.btnGbkp.setEnabled(False)
64 return
64
65
65 #Se cargan las listas para seleccionar StartDay y StopDay (QComboBox)
66 #Se cargan las listas para seleccionar StartDay y StopDay (QComboBox)
66 for i in range(0, (len(output)+1)/8):
67 for i in range(0, (len(output)+1)/8):
@@ -72,5 +73,20
72 self.lstStopDay.setCurrentIndex(self.lstStartDay.count()-1)
73 self.lstStopDay.setCurrentIndex(self.lstStartDay.count()-1)
73
74
74 self.btnGbkp.setEnabled(True)
75 self.btnGbkp.setEnabled(True)
76
77
78 #Verifica que los parametros
79 def validate_parameters(self):
80 #Verifica que las rutas sean validas
81 if self.statusRpath == False:
82 self.txtInfo.append("Ruta de proyecto no valida")
83 return False
75
84
85 #Verifica la etiqueta
86 if len(self.var_Elabel) == 0:
87 self.txtInfo.append("Debe ingresar el nombre de la etiqueta")
88 return False
89
90 return True
76
91
92
@@ -37,6 +37,7
37 self.var_Dtype = self.txtDtype.text()
37 self.var_Dtype = self.txtDtype.text()
38 self.var_Elabel = self.txtElabel.text()
38 self.var_Elabel = self.txtElabel.text()
39 self.var_Copys = self.txtCopys.value()
39 self.var_Copys = self.txtCopys.value()
40 self.var_Dcapacity = self.txtDcapacity.value()
40
41
41 self.var_n_files=0
42 self.var_n_files=0
42 self.var_list=[]
43 self.var_list=[]
@@ -115,13 +116,24
115
116
116 @pyqtSignature("")
117 @pyqtSignature("")
117 def on_txtDtype_editingFinished(self):
118 def on_txtDtype_editingFinished(self):
118 """
119 Se activa cuando el tipo de archivo es ingresado manualmente
120 """
121 self.var_Dtype=self.txtDtype.text()
119 self.var_Dtype=self.txtDtype.text()
122 #llamada a funcion
120 functions.load_days(self) #llamada a funcion
123 self.on_txtDpath_editingFinished()
121
124
122
123 @pyqtSignature("")
124 def on_txtElabel_editingFinished(self):
125 self.var_Elabel = self.txtElabel.text()
126
127
128 @pyqtSignature("")
129 def on_txtCopys_editingFinished(self):
130 self.var_Copys = self.txtCopys.value()
131
132
133 @pyqtSignature("")
134 def on_txtDcapacity_editingFinished(self):
135 self.var_Dcapacity = self.txtDcapacity.value()
136
125
137
126 @pyqtSignature("int") #CLOSED
138 @pyqtSignature("int") #CLOSED
127 def on_lstStartDay_activated(self, index):
139 def on_lstStartDay_activated(self, index):
@@ -167,10 +179,10
167 var_size=0.7
179 var_size=0.7
168
180
169 if index != 4:
181 if index != 4:
170 self.txtDcapacity.setText(str(var_size*10**9/1024**2))
182 self.txtDcapacity.setValue(var_size*10**9/1024**2)
171 self.txtDcapacity.setReadOnly(True)
183 self.txtDcapacity.setReadOnly(True)
172 else:
184 else:
173 self.txtDcapacity.setText('')
185 self.txtDcapacity.setValue(100.0)
174 self.txtDcapacity.setReadOnly(False)
186 self.txtDcapacity.setReadOnly(False)
175
187
176
188
@@ -180,23 +192,15
180 Cuando se presiona el boton btnGbkp
192 Cuando se presiona el boton btnGbkp
181 """
193 """
182
194
183 #Verifica que las rutas sean validas
195 if functions.validate_parameters(self) == False:
184 if self.statusDpath == False or self.statusRpath == False:
185 if self.statusDpath == False:
186 self.txtInfo.append("Ruta de datos no valida")
187 if self.statusRpath == False:
188 self.txtInfo.append("Ruta de proyecto no valida")
189 return
196 return
190
197
191 #Crea las carpetas en la ruta del proyecto y verifica que se crearon correctamente
198 #Crea las carpetas en la ruta del proyecto y verifica que se crearon correctamente
192 var_Rpath=self.txtRpath.text()
193 list_dirs=['gpath', 'iso', 'ppath']
199 list_dirs=['gpath', 'iso', 'ppath']
194 functions.make_dirs(var_Rpath, list_dirs, self)
200 functions.make_dirs(self.var_Rpath, list_dirs, self)
195
201
196 #Cargando variables con los parametros
202 #Cargando variables con los parametros
197 var_Dpath=self.txtDpath.text()
203 var_Rpath_ppath=self.var_Rpath+"/ppath" #Ruta de los archivos a grabar
198 var_Rpath=self.txtRpath.text()
199 var_Rpath_ppath=var_Rpath+"/ppath" #Ruta de los archivos a grabar
200 var_sublist=[]
204 var_sublist=[]
201 for i in self.var_list[self.lstStartDay.currentIndex():self.lstStartDay.currentIndex() + self.lstStopDay.currentIndex()+1]:
205 for i in self.var_list[self.lstStartDay.currentIndex():self.lstStartDay.currentIndex() + self.lstStopDay.currentIndex()+1]:
202 var_sublist.append(i)
206 var_sublist.append(i)
@@ -212,7 +216,7
212 #Busca los archivos con los parametros de busqueda
216 #Busca los archivos con los parametros de busqueda
213 var_files_list=[]
217 var_files_list=[]
214 for var_doy in var_sublist:
218 for var_doy in var_sublist:
215 var_cmd="find " + str(var_Dpath) + " -name ?"+var_doy+"???."+ str(var_Dtype) + " |sort"
219 var_cmd="find " + str(self.var_Dpath) + " -name ?"+var_doy+"???."+ str(var_Dtype) + " |sort"
216 var_output=commands.getstatusoutput(var_cmd)[1]
220 var_output=commands.getstatusoutput(var_cmd)[1]
217 for var_file in var_output.split():
221 for var_file in var_output.split():
218 var_files_list.append(var_file) #Almacena cada archivo en la lista
222 var_files_list.append(var_file) #Almacena cada archivo en la lista
@@ -235,7 +239,7
235 var_file = open(var_Rpath_ppath+"/"+self.txtElabel.text()+"_"+functions.i2s(var_n)+".dat","w")
239 var_file = open(var_Rpath_ppath+"/"+self.txtElabel.text()+"_"+functions.i2s(var_n)+".dat","w")
236 #Se aΓ±ade la lista de archivos a grabar en el DVD al archivo .dat
240 #Se aΓ±ade la lista de archivos a grabar en el DVD al archivo .dat
237 for line in var_files_list_2:
241 for line in var_files_list_2:
238 var_tmp_path=(line.split(var_Dpath)[1]).split('/')
242 var_tmp_path=(line.split(self.var_Dpath)[1]).split('/')
239 var_tmp_path2="/"
243 var_tmp_path2="/"
240 for l in range(0, len(var_tmp_path)-1):
244 for l in range(0, len(var_tmp_path)-1):
241 var_tmp_path2=var_tmp_path2+str(var_tmp_path[l])+"/"
245 var_tmp_path2=var_tmp_path2+str(var_tmp_path[l])+"/"
@@ -252,7 +256,7
252 var_file = open(var_Rpath_ppath+"/"+self.txtElabel.text()+"_"+functions.i2s(var_n)+".dat","w")
256 var_file = open(var_Rpath_ppath+"/"+self.txtElabel.text()+"_"+functions.i2s(var_n)+".dat","w")
253 #Se aΓ±ade la lista de archivos a grabar en el DVD al archivo .dat
257 #Se aΓ±ade la lista de archivos a grabar en el DVD al archivo .dat
254 for line in var_files_list_2:
258 for line in var_files_list_2:
255 var_tmp_path=(line.split(var_Dpath)[1]).split('/')
259 var_tmp_path=(line.split(self.var_Dpath)[1]).split('/')
256 var_tmp_path2="/"
260 var_tmp_path2="/"
257 for l in range(0, len(var_tmp_path)-1):
261 for l in range(0, len(var_tmp_path)-1):
258 var_tmp_path2=var_tmp_path2+str(var_tmp_path[l])+"/"
262 var_tmp_path2=var_tmp_path2+str(var_tmp_path[l])+"/"
@@ -324,7 +328,10
324
328
325 #Se deshabilita el Tab Parameters y el boton btnGbkp
329 #Se deshabilita el Tab Parameters y el boton btnGbkp
326 self.tabParameters.setEnabled(False)
330 self.tabParameters.setEnabled(False)
327 self.btnGbkp.setEnabled(False)
331 self.lstDcapacity.setEnabled(False)
332 self.txtDcapacity.setEnabled(False)
333 self.btnGbkp.setEnabled(False)
334 self.btnRestart.setEnabled(True)
328
335
329
336
330 @pyqtSignature("")
337 @pyqtSignature("")
@@ -333,7 +340,10
333 Slot documentation goes here.
340 Slot documentation goes here.
334 """
341 """
335 self.tabParameters.setEnabled(True)
342 self.tabParameters.setEnabled(True)
343 self.lstDcapacity.setEnabled(True)
344 self.txtDcapacity.setEnabled(True)
336 self.btnGbkp.setEnabled(True)
345 self.btnGbkp.setEnabled(True)
346 self.btnRestart.setEnabled(False)
337
347
338
348
339 @pyqtSignature("")
349 @pyqtSignature("")
@@ -404,3 +414,5
404 var_dev = str(self.txtDeviceD.text())
414 var_dev = str(self.txtDeviceD.text())
405 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
415 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
406 commands.getstatusoutput(var_cmd)
416 commands.getstatusoutput(var_cmd)
417
418
@@ -500,7 +500,7
500 </sizepolicy>
500 </sizepolicy>
501 </property>
501 </property>
502 <property name="text">
502 <property name="text">
503 <string>Device Capacity</string>
503 <string>Device Capacity (MB)</string>
504 </property>
504 </property>
505 </widget>
505 </widget>
506 </item>
506 </item>
@@ -557,12 +557,24
557 </widget>
557 </widget>
558 </item>
558 </item>
559 <item>
559 <item>
560 <widget class="QLineEdit" name="txtDcapacity">
560 <widget class="QDoubleSpinBox" name="txtDcapacity">
561 <property name="text">
561 <property name="sizePolicy">
562 <string>4482.26928711</string>
562 <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
563 <horstretch>0</horstretch>
564 <verstretch>0</verstretch>
565 </sizepolicy>
563 </property>
566 </property>
564 <property name="readOnly">
567 <property name="readOnly">
565 <bool>true</bool>
568 <bool>true</bool>
569 </property>
570 <property name="minimum">
571 <double>100.000000000000000</double>
572 </property>
573 <property name="maximum">
574 <double>99999.990000000005239</double>
575 </property>
576 <property name="value">
577 <double>4482.270000000000437</double>
566 </property>
578 </property>
567 </widget>
579 </widget>
568 </item>
580 </item>
@@ -832,7 +844,6
832 <tabstop>chkSequentially</tabstop>
844 <tabstop>chkSequentially</tabstop>
833 <tabstop>chkSalert</tabstop>
845 <tabstop>chkSalert</tabstop>
834 <tabstop>lstDcapacity</tabstop>
846 <tabstop>lstDcapacity</tabstop>
835 <tabstop>txtDcapacity</tabstop>
836 <tabstop>chkPSgraphic</tabstop>
847 <tabstop>chkPSgraphic</tabstop>
837 <tabstop>lineEdit_17</tabstop>
848 <tabstop>lineEdit_17</tabstop>
838 <tabstop>txtSTATUSa</tabstop>
849 <tabstop>txtSTATUSa</tabstop>
@@ -2,7 +2,7
2
2
3 # Form implementation generated from reading ui file '/home/ricardoar/JRO_SVN/eric4/jro_backup_manager/ui/MainWindow.ui'
3 # Form implementation generated from reading ui file '/home/ricardoar/JRO_SVN/eric4/jro_backup_manager/ui/MainWindow.ui'
4 #
4 #
5 # Created: Sun May 16 22:58:10 2010
5 # Created: Mon May 17 00:37:27 2010
6 # by: PyQt4 UI code generator 4.7.2
6 # by: PyQt4 UI code generator 4.7.2
7 #
7 #
8 # WARNING! All changes made in this file will be lost!
8 # WARNING! All changes made in this file will be lost!
@@ -312,8 +312,16
312 self.lstDcapacity.addItem("")
312 self.lstDcapacity.addItem("")
313 self.lstDcapacity.addItem("")
313 self.lstDcapacity.addItem("")
314 self.horizontalLayout_10.addWidget(self.lstDcapacity)
314 self.horizontalLayout_10.addWidget(self.lstDcapacity)
315 self.txtDcapacity = QtGui.QLineEdit(self.tabDconfig)
315 self.txtDcapacity = QtGui.QDoubleSpinBox(self.tabDconfig)
316 sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
317 sizePolicy.setHorizontalStretch(0)
318 sizePolicy.setVerticalStretch(0)
319 sizePolicy.setHeightForWidth(self.txtDcapacity.sizePolicy().hasHeightForWidth())
320 self.txtDcapacity.setSizePolicy(sizePolicy)
316 self.txtDcapacity.setReadOnly(True)
321 self.txtDcapacity.setReadOnly(True)
322 self.txtDcapacity.setMinimum(100.0)
323 self.txtDcapacity.setMaximum(99999.99)
324 self.txtDcapacity.setProperty("value", 4482.27)
317 self.txtDcapacity.setObjectName("txtDcapacity")
325 self.txtDcapacity.setObjectName("txtDcapacity")
318 self.horizontalLayout_10.addWidget(self.txtDcapacity)
326 self.horizontalLayout_10.addWidget(self.txtDcapacity)
319 self.chkPSgraphic = QtGui.QCheckBox(self.tabDconfig)
327 self.chkPSgraphic = QtGui.QCheckBox(self.tabDconfig)
@@ -482,8 +490,7
482 MainWindow.setTabOrder(self.chkSimultaneously, self.chkSequentially)
490 MainWindow.setTabOrder(self.chkSimultaneously, self.chkSequentially)
483 MainWindow.setTabOrder(self.chkSequentially, self.chkSalert)
491 MainWindow.setTabOrder(self.chkSequentially, self.chkSalert)
484 MainWindow.setTabOrder(self.chkSalert, self.lstDcapacity)
492 MainWindow.setTabOrder(self.chkSalert, self.lstDcapacity)
485 MainWindow.setTabOrder(self.lstDcapacity, self.txtDcapacity)
493 MainWindow.setTabOrder(self.lstDcapacity, self.chkPSgraphic)
486 MainWindow.setTabOrder(self.txtDcapacity, self.chkPSgraphic)
487 MainWindow.setTabOrder(self.chkPSgraphic, self.lineEdit_17)
494 MainWindow.setTabOrder(self.chkPSgraphic, self.lineEdit_17)
488 MainWindow.setTabOrder(self.lineEdit_17, self.txtSTATUSa)
495 MainWindow.setTabOrder(self.lineEdit_17, self.txtSTATUSa)
489 MainWindow.setTabOrder(self.txtSTATUSa, self.txtSTATUSb)
496 MainWindow.setTabOrder(self.txtSTATUSa, self.txtSTATUSb)
@@ -542,14 +549,13
542 self.lblBprocess.setText(QtGui.QApplication.translate("MainWindow", "Burning process", None, QtGui.QApplication.UnicodeUTF8))
549 self.lblBprocess.setText(QtGui.QApplication.translate("MainWindow", "Burning process", None, QtGui.QApplication.UnicodeUTF8))
543 self.chkSimultaneously.setText(QtGui.QApplication.translate("MainWindow", "Simultaneously", None, QtGui.QApplication.UnicodeUTF8))
550 self.chkSimultaneously.setText(QtGui.QApplication.translate("MainWindow", "Simultaneously", None, QtGui.QApplication.UnicodeUTF8))
544 self.chkSequentially.setText(QtGui.QApplication.translate("MainWindow", "Sequentially", None, QtGui.QApplication.UnicodeUTF8))
551 self.chkSequentially.setText(QtGui.QApplication.translate("MainWindow", "Sequentially", None, QtGui.QApplication.UnicodeUTF8))
545 self.lblDcapacity.setText(QtGui.QApplication.translate("MainWindow", "Device Capacity", None, QtGui.QApplication.UnicodeUTF8))
552 self.lblDcapacity.setText(QtGui.QApplication.translate("MainWindow", "Device Capacity (MB)", None, QtGui.QApplication.UnicodeUTF8))
546 self.chkSalert.setText(QtGui.QApplication.translate("MainWindow", "Sound Alert", None, QtGui.QApplication.UnicodeUTF8))
553 self.chkSalert.setText(QtGui.QApplication.translate("MainWindow", "Sound Alert", None, QtGui.QApplication.UnicodeUTF8))
547 self.lstDcapacity.setItemText(0, QtGui.QApplication.translate("MainWindow", "BluRay [25.0 GB]", None, QtGui.QApplication.UnicodeUTF8))
554 self.lstDcapacity.setItemText(0, QtGui.QApplication.translate("MainWindow", "BluRay [25.0 GB]", None, QtGui.QApplication.UnicodeUTF8))
548 self.lstDcapacity.setItemText(1, QtGui.QApplication.translate("MainWindow", "DVD2 [8.5 GB]", None, QtGui.QApplication.UnicodeUTF8))
555 self.lstDcapacity.setItemText(1, QtGui.QApplication.translate("MainWindow", "DVD2 [8.5 GB]", None, QtGui.QApplication.UnicodeUTF8))
549 self.lstDcapacity.setItemText(2, QtGui.QApplication.translate("MainWindow", "DVD1 [4.7 GB]", None, QtGui.QApplication.UnicodeUTF8))
556 self.lstDcapacity.setItemText(2, QtGui.QApplication.translate("MainWindow", "DVD1 [4.7 GB]", None, QtGui.QApplication.UnicodeUTF8))
550 self.lstDcapacity.setItemText(3, QtGui.QApplication.translate("MainWindow", "CD [0.7 GB]", None, QtGui.QApplication.UnicodeUTF8))
557 self.lstDcapacity.setItemText(3, QtGui.QApplication.translate("MainWindow", "CD [0.7 GB]", None, QtGui.QApplication.UnicodeUTF8))
551 self.lstDcapacity.setItemText(4, QtGui.QApplication.translate("MainWindow", "Other [? GB]", None, QtGui.QApplication.UnicodeUTF8))
558 self.lstDcapacity.setItemText(4, QtGui.QApplication.translate("MainWindow", "Other [? GB]", None, QtGui.QApplication.UnicodeUTF8))
552 self.txtDcapacity.setText(QtGui.QApplication.translate("MainWindow", "4482.26928711", None, QtGui.QApplication.UnicodeUTF8))
553 self.chkPSgraphic.setText(QtGui.QApplication.translate("MainWindow", "PS Graphic", None, QtGui.QApplication.UnicodeUTF8))
559 self.chkPSgraphic.setText(QtGui.QApplication.translate("MainWindow", "PS Graphic", None, QtGui.QApplication.UnicodeUTF8))
554 self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabDconfig), QtGui.QApplication.translate("MainWindow", "Device Config.", None, QtGui.QApplication.UnicodeUTF8))
560 self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabDconfig), QtGui.QApplication.translate("MainWindow", "Device Config.", None, QtGui.QApplication.UnicodeUTF8))
555 self.lblSTATUS.setText(QtGui.QApplication.translate("MainWindow", "STATUS", None, QtGui.QApplication.UnicodeUTF8))
561 self.lblSTATUS.setText(QtGui.QApplication.translate("MainWindow", "STATUS", None, QtGui.QApplication.UnicodeUTF8))
General Comments 0
You need to be logged in to leave comments. Login now