##// END OF EJS Templates
descripcion por bloques
ralonso -
r54:55
parent child
Show More
@@ -1,111 +1,111
1 # -*- coding: utf-8 -*-
1 # -*- coding: utf-8 -*-
2
2
3
3
4 from subprocess import *
4 from subprocess import *
5 import sys
5 import sys
6 import os
6 import os
7 import subprocess
7 import subprocess
8 import commands
8 import commands
9
9
10
10
11 def set_parameters(self):
11 def set_parameters(self):
12 """
12 """
13 Se usa para inicializar ciertos parametros para pruebas
13 Se usa para inicializar ciertos parametros para pruebas
14 """
14 """
15 self.txtDpath.setText('/home/ricardoar/optional/STORAGE/EW_DRIFTS/')
15 self.txtDpath.setText('/home/ricardoar/optional/STORAGE/EW_DRIFTS')
16 self.txtRpath.setText('/home/ricardoar/optional/prueba1_jro_backup_manager/')
16 self.txtRpath.setText('/home/ricardoar/optional/prueba1_jro_backup_manager')
17 self.txtElabel.setText('EW_DRIFTS_pruebas')
17 self.txtElabel.setText('EW_DRIFTS_pruebas')
18 self.lstDcapacity.setCurrentIndex(4)
18 self.lstDcapacity.setCurrentIndex(4)
19 self.txtDcapacity.setValue(250.0)
19 self.txtDcapacity.setValue(250.0)
20 self.txtDcapacity.setReadOnly(False)
20 self.txtDcapacity.setReadOnly(False)
21
21
22
22
23 def detect_devices(self):
23 def detect_devices(self):
24 """
24 """
25 Deteccion de los dispositvos de grabacion
25 Deteccion de los dispositvos de grabacion
26 """
26 """
27 #var_cmd="wodim --devices | grep /dev/ | awk -F\' '{print $2}'" #Funciona en consola pero no en python ΒΏ?
27 #var_cmd="wodim --devices | grep /dev/ | awk -F\' '{print $2}'" #Funciona en consola pero no en python ΒΏ?
28 var_cmd="wodim --devices | grep /dev/ | awk '{print $2}' | awk -F= '{print $2}'"
28 var_cmd="wodim --devices | grep /dev/ | awk '{print $2}' | awk -F= '{print $2}'"
29 var_output = commands.getstatusoutput(var_cmd)
29 var_output = commands.getstatusoutput(var_cmd)
30 if var_output[0] != 0:
30 if var_output[0] != 0:
31 self.txtInfo.append("No se pudo encontrar los dispositivos de grabacion, output_error:" + str(var_output))
31 self.txtInfo.append("No se pudo encontrar los dispositivos de grabacion, output_error:" + str(var_output))
32 else:
32 else:
33 self.txtInfo.append("dispositivos encontrados")
33 self.txtInfo.append("dispositivos encontrados")
34 var_devices = var_output[1].split('\n')
34 var_devices = var_output[1].split('\n')
35
35
36 var_tmp=[]
36 var_tmp=[]
37 for i in range(0, 4):
37 for i in range(0, 4):
38 if i < len(var_devices):
38 if i < len(var_devices):
39 var_len = len(var_devices[i])
39 var_len = len(var_devices[i])
40 var_tmp.append(var_devices[i][1:var_len - 1])
40 var_tmp.append(var_devices[i][1:var_len - 1])
41 else:
41 else:
42 var_tmp.append('')
42 var_tmp.append('')
43
43
44 #Se escriben los dispostivos correspodientes, si existen
44 #Se escriben los dispostivos correspodientes, si existen
45 self.txtDeviceA.setText(str(var_tmp[0]))
45 self.txtDeviceA.setText(str(var_tmp[0]))
46 self.txtDeviceB.setText(str(var_tmp[1]))
46 self.txtDeviceB.setText(str(var_tmp[1]))
47 self.txtDeviceC.setText(str(var_tmp[2]))
47 self.txtDeviceC.setText(str(var_tmp[2]))
48 self.txtDeviceD.setText(str(var_tmp[3]))
48 self.txtDeviceD.setText(str(var_tmp[3]))
49 #Se desactivan los que no existen
49 #Se desactivan los que no existen
50 if len(var_tmp[0]) == 0 :
50 if len(var_tmp[0]) == 0 :
51 self.chkDevA.setChecked(False)
51 self.chkDevA.setChecked(False)
52 self.chkDevA.setEnabled(False)
52 self.chkDevA.setEnabled(False)
53 if len(var_tmp[1]) == 0 :
53 if len(var_tmp[1]) == 0 :
54 self.chkDevB.setChecked(False)
54 self.chkDevB.setChecked(False)
55 self.chkDevB.setEnabled(False)
55 self.chkDevB.setEnabled(False)
56 if len(var_tmp[2]) == 0 :
56 if len(var_tmp[2]) == 0 :
57 self.chkDevC.setChecked(False)
57 self.chkDevC.setChecked(False)
58 self.chkDevC.setEnabled(False)
58 self.chkDevC.setEnabled(False)
59 if len(var_tmp[3]) == 0 :
59 if len(var_tmp[3]) == 0 :
60 self.chkDevD.setChecked(False)
60 self.chkDevD.setChecked(False)
61 self.chkDevD.setEnabled(False)
61 self.chkDevD.setEnabled(False)
62
62
63 def enabled_items1(var_bool, self):
63 def enabled_items1(var_bool, self):
64 self.tabParameters.setEnabled(not(var_bool))
64 self.tabParameters.setEnabled(not(var_bool))
65 self.lstDcapacity.setEnabled(not(var_bool))
65 self.lstDcapacity.setEnabled(not(var_bool))
66 self.txtDcapacity.setEnabled(not(var_bool))
66 self.txtDcapacity.setEnabled(not(var_bool))
67 self.btnGbkp.setEnabled(not(var_bool))
67 self.btnGbkp.setEnabled(not(var_bool))
68 self.btnRestart.setEnabled(var_bool)
68 self.btnRestart.setEnabled(var_bool)
69 self.btnStartburn.setEnabled(var_bool)
69 self.btnStartburn.setEnabled(var_bool)
70
70
71
71
72 def make_parameters_conf(self):
72 def make_parameters_conf(self):
73 var_file = open("parameters.conf","w")
73 var_file = open("parameters.conf","w")
74
74
75 var_file.write(self.var_Dpath+"\n") #0
75 var_file.write(self.var_Dpath+"\n") #0
76 var_file.write(self.var_Rpath+"\n") #1
76 var_file.write(self.var_Rpath+"\n") #1
77 var_file.write(str(self.var_lstDtype)+"\n") #2
77 var_file.write(str(self.var_lstDtype)+"\n") #2
78 var_file.write(self.var_Dtype+"\n") #3
78 var_file.write(self.var_Dtype+"\n") #3
79 var_file.write(self.var_Elabel+"\n") #4
79 var_file.write(self.var_Elabel+"\n") #4
80 var_file.write(str(self.var_Copys)+"\n") #5
80 var_file.write(str(self.var_Copys)+"\n") #5
81 var_file.write(str(self.var_lstDcapacity)+"\n") #6
81 var_file.write(str(self.var_lstDcapacity)+"\n") #6
82 var_file.write(str(self.var_Dcapacity)+"\n") #7
82 var_file.write(str(self.var_Dcapacity)+"\n") #7
83
83
84 var_file.close()
84 var_file.close()
85
85
86
86
87 def get_parameters_conf(self):
87 def get_parameters_conf(self):
88 var_file = open("parameters.conf","r")
88 var_file = open("parameters.conf","r")
89 lines = var_file.readlines()
89 lines = var_file.readlines()
90
90
91 self.txtDpath.setText(lines[0][:-1]) #0
91 self.txtDpath.setText(lines[0][:-1]) #0
92 self.txtRpath.setText(lines[1][:-1]) #1
92 self.txtRpath.setText(lines[1][:-1]) #1
93 self.lstDtype.setCurrentIndex(int(lines[2])) #2
93 self.lstDtype.setCurrentIndex(int(lines[2])) #2
94 self.txtDtype.setText(lines[3][:-1]) #3
94 self.txtDtype.setText(lines[3][:-1]) #3
95 self.txtElabel.setText(lines[4][:-1]) #4
95 self.txtElabel.setText(lines[4][:-1]) #4
96 self.txtCopys.setValue(int(lines[5][:-1])) #5
96 self.txtCopys.setValue(int(lines[5][:-1])) #5
97 self.lstDcapacity.setCurrentIndex(int(lines[6])) #6
97 self.lstDcapacity.setCurrentIndex(int(lines[6])) #6
98 self.txtDcapacity.setValue(float(lines[7]))
98 self.txtDcapacity.setValue(float(lines[7]))
99
99
100 var_file.close()
100 var_file.close()
101
101
102 def set_vars(self):
102 def set_vars(self):
103 self.var_Dpath = self.txtDpath.text()
103 self.var_Dpath = self.txtDpath.text()
104 self.var_Rpath = self.txtRpath.text()
104 self.var_Rpath = self.txtRpath.text()
105 self.var_lstDtype = self.lstDtype.currentIndex()
105 self.var_lstDtype = self.lstDtype.currentIndex()
106 self.var_Dtype = self.txtDtype.text()
106 self.var_Dtype = self.txtDtype.text()
107 self.var_Elabel = self.txtElabel.text()
107 self.var_Elabel = self.txtElabel.text()
108 self.var_Copys = self.txtCopys.value()
108 self.var_Copys = self.txtCopys.value()
109 self.var_lstDcapacity = self.lstDcapacity.currentIndex()
109 self.var_lstDcapacity = self.lstDcapacity.currentIndex()
110 self.var_Dcapacity = self.txtDcapacity.value()
110 self.var_Dcapacity = self.txtDcapacity.value()
111
111
@@ -1,328 +1,353
1 # -*- coding: utf-8 -*-
1 # -*- coding: utf-8 -*-
2
2
3 """
3 """
4 Module implementing MainWindow.
4 Module implementing MainWindow.
5 """
5 """
6
6
7 from PyQt4.QtGui import QMainWindow
7 from PyQt4.QtGui import QMainWindow
8 from PyQt4.QtCore import pyqtSignature
8 from PyQt4.QtCore import pyqtSignature
9 from PyQt4 import QtCore
9 from PyQt4 import QtCore
10 from Ui_MainWindow import Ui_MainWindow
10 from Ui_MainWindow import Ui_MainWindow
11 from PyQt4 import QtGui
11 from PyQt4 import QtGui
12 from subprocess import *
12 from subprocess import *
13 import sys
13 import sys
14 import os
14 import os
15 import subprocess
15 import subprocess
16 import commands
16 import commands
17 from functions import functions
17 from functions import functions
18 from functions import functions2
18 from functions import functions2
19
19
20 class MainWindow(QMainWindow, Ui_MainWindow):
20 class MainWindow(QMainWindow, Ui_MainWindow):
21 """
21 """
22 Class documentation goes here.
22 Class documentation goes here.
23 """
23 """
24
24
25 def __init__(self, parent = None):
25 def __init__(self, parent = None):
26 QMainWindow.__init__(self, parent)
26 QMainWindow.__init__(self, parent)
27 self.setupUi(self)
27 self.setupUi(self)
28 self.setupUi2()
28 self.setupUi2()
29 #sys.stdout = self #redirige salida estandar
29 #sys.stdout = self #redirige salida estandar
30
30
31 def setupUi2(self):
31 def setupUi2(self):
32
32
33 functions2.detect_devices(self) #busca los dispositivos de grabacion
33 functions2.detect_devices(self) #busca los dispositivos de grabacion
34
34
35 #Revisa si existe el archivo de confirguracion
35 #Revisa si existe el archivo de confirguracion
36 if os.path.isfile("parameters.conf"):
36 if os.path.isfile("parameters.conf"):
37 self.txtInfo.append("Archivo de configuracion encontrado")
37 self.txtInfo.append("Archivo de configuracion encontrado")
38 functions2.get_parameters_conf(self)
38 functions2.get_parameters_conf(self)
39 else:
39 else:
40 self.txtInfo.append("Elija los parametros de configuracion")
40 self.txtInfo.append("Elija los parametros de configuracion")
41 functions2.set_parameters(self) #Establece ciertos parametros, para pruebas
41 functions2.set_parameters(self) #Establece ciertos parametros, para pruebas
42
42
43 functions2.set_vars(self) #Carga las variables de la clase con los parametros seleccionados
43 functions2.set_vars(self) #Carga las variables de la clase con los parametros seleccionados
44
44
45 self.statusDpath = functions.dir_exists(self.var_Dpath, self)
45 self.statusDpath = functions.dir_exists(self.var_Dpath, self)
46 self.statusRpath = functions.dir_exists(self.var_Rpath, self)
46 self.statusRpath = functions.dir_exists(self.var_Rpath, self)
47
47
48 self.var_n_discs=0
48 self.var_n_discs=0
49 self.var_list=[]
49 self.var_list=[]
50 self.var_sublist=[]
50 self.var_sublist=[]
51
51
52 functions.load_days(self)
52 functions.load_days(self)
53
53
54 self.var_process = QtCore.QProcess()
54 self.var_process = QtCore.QProcess()
55 self.connect(self.var_process, QtCore.SIGNAL('readyReadStandardOutput()'), self.readOuput)
55 self.connect(self.var_process, QtCore.SIGNAL('readyReadStandardOutput()'), self.readOuput)
56 self.connect(self.var_process, QtCore.SIGNAL('readyReadStandardError()'), self.readError)
56 self.connect(self.var_process, QtCore.SIGNAL('readyReadStandardError()'), self.readError)
57 self.connect(self.var_process, QtCore.SIGNAL('finished(int,QProcess::ExitStatus)'), self.finished)
57 self.connect(self.var_process, QtCore.SIGNAL('finished(int,QProcess::ExitStatus)'), self.finished)
58
58
59 def readOuput(self):
59 def readOuput(self):
60 self.txtSburn.insertPlainText("stdout: " + QtCore.QString(self.var_process.readAllStandardOutput()))
60 self.txtSburn.insertPlainText("stdout: " + QtCore.QString(self.var_process.readAllStandardOutput()))
61
61
62
62
63 def readError(self):
63 def readError(self):
64 self.txtSburn.insertPlainText("stderr: " + QtCore.QString(self.var_process.readAllStandardError()))
64 self.txtSburn.insertPlainText("stderr: " + QtCore.QString(self.var_process.readAllStandardError()))
65
65
66
66
67 def finished(self):
67 def finished(self):
68 self.txtInfo.append("proceso terminado finished()")
68 self.txtInfo.append("proceso terminado finished()")
69 print self.var_process.exitCode()
69 print self.var_process.exitCode()
70
70
71
71
72 def write(self, txt):
72 def write(self, txt):
73 self.txtInfo.append(str(txt))
73 self.txtInfo.append(str(txt))
74
74
75 #----------------------------------------------------- Obtencion de las ruta de los datos ---------------------------------------------------------------
75
76
76 @pyqtSignature("")
77 @pyqtSignature("")
77 def on_btnDpath_clicked(self):
78 def on_btnDpath_clicked(self):
78 """
79 """
79 Permite seleccionar graficamente el direcorio de los datos a grabar
80 Permite seleccionar graficamente el direcorio de los datos a grabar
80 """
81 """
81 self.var_Dpath= QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly)
82 self.var_Dpath= QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly)
82 self.txtDpath.setText(self.var_Dpath)
83 self.txtDpath.setText(self.var_Dpath)
83 self.on_txtDpath_editingFinished() #llamada a funcion
84 self.statusDpath = functions.dir_exists(self.var_Dpath, self)
84
85 functions.load_days(self)
85
86
86 @pyqtSignature("")
87
87 def on_btnRpath_clicked(self):
88 """
89 Permite seleccionar graficamente el direcorio del proyecto
90 """
91 self.var_Rpath = QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly)
92 self.txtRpath.setText(self.var_Rpath)
93 self.on_txtRpath_editingFinished() #llamada a funcion
94
95
96 @pyqtSignature("")
88 @pyqtSignature("")
97 def on_txtDpath_editingFinished(self):
89 def on_txtDpath_editingFinished(self):
98 """
90 """
99 Permite buscar los archivos de extension seleccionada en la ruta de de datos
91 Carga la ruta editada y verifica que sea correcta y carga la lista de dias
100 y cargar los valores para el rango de tiempo a ser grabado
101 """
92 """
102 self.var_Dpath=self.txtDpath.text() #Se carga la variable con la ruta recien editada
93 self.var_Dpath=self.txtDpath.text() #Se carga la variable con la ruta recien editada
103 self.statusDpath = functions.dir_exists(self.var_Dpath, self)
94 self.statusDpath = functions.dir_exists(self.var_Dpath, self)
104 functions.load_days(self)
95 functions.load_days(self)
96
97
98 #----------------------------------------------------- Obtencion de las ruta del proyecto ---------------------------------------------------------------
99
100 @pyqtSignature("")
101 def on_btnRpath_clicked(self):
102 """
103 Permite seleccionar graficamente el direcorio del proyecto
104 """
105 self.var_Rpath = QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly)
106 self.txtRpath.setText(self.var_Rpath)
107 self.statusRpath = functions.dir_exists(self.var_Rpath, self)
105
108
106
109
107 @pyqtSignature("")
110 @pyqtSignature("")
108 def on_txtRpath_editingFinished(self):
111 def on_txtRpath_editingFinished(self):
109 """
112 """
110 Valida la ruta del proyecto
113 Valida la ruta del proyecto
111 """
114 """
112 self.var_Rpath=self.txtRpath.text() #Se carga la variable con la ruta recien editada
115 self.var_Rpath=self.txtRpath.text() #Se carga la variable con la ruta recien editada
113 self.statusRpath = functions.dir_exists(self.var_Rpath, self)
116 self.statusRpath = functions.dir_exists(self.var_Rpath, self)
114
117
115
118
119 #----------------------------------------------------- Tipo de datos ---------------------------------------------------------------
120
116 @pyqtSignature("int")
121 @pyqtSignature("int")
117 def on_lstDtype_activated(self, index):
122 def on_lstDtype_activated(self, index):
118 """
123 """
119 Permite elegir entre los tipos de archivos
124 Permite elegir entre los tipos de archivos
120 """
125 """
121 self.txtDtype.setReadOnly(True)
126 self.txtDtype.setReadOnly(True)
122 if index == 0:
127 if index == 0:
123 var_type='r'
128 self.var_Dtype ='r'
124 elif index == 1:
129 elif index == 1:
125 var_type='pdata'
130 self.var_Dtype ='pdata'
126 elif index == 2:
131 elif index == 2:
127 var_type='sswma'
132 self.var_Dtype ='sswma'
128 else :
133 else :
129 var_type=''
134 self.var_Dtype =''
130 self.txtDtype.setReadOnly(False)
135 self.txtDtype.setReadOnly(False)
131
136
132 self.txtDtype.setText(var_type)
137 self.txtDtype.setText(self.var_Dtype)
133 self.on_txtDtype_editingFinished()
138 functions.load_days(self) #llamada a funcion
134
139
135
136 @pyqtSignature("")
140 @pyqtSignature("")
137 def on_txtDtype_editingFinished(self):
141 def on_txtDtype_editingFinished(self):
138 self.var_Dtype=self.txtDtype.text()
142 self.var_Dtype=self.txtDtype.text()
139 functions.load_days(self) #llamada a funcion
143 functions.load_days(self) #llamada a funcion
140
144
141
145
146 #----------------------------------------------------- Etiqueta ---------------------------------------------------------------
147
142 @pyqtSignature("")
148 @pyqtSignature("")
143 def on_txtElabel_editingFinished(self):
149 def on_txtElabel_editingFinished(self):
144 self.var_Elabel = self.txtElabel.text()
150 self.var_Elabel = self.txtElabel.text()
145
151
146
152 #----------------------------------------------------- Numero de copias ---------------------------------------------------------------
147 @pyqtSignature("")
153 @pyqtSignature("")
148 def on_txtCopys_editingFinished(self):
154 def on_txtCopys_editingFinished(self):
149 self.var_Copys = self.txtCopys.value()
155 self.var_Copys = self.txtCopys.value()
150
156
151
157 #----------------------------------------------------- Seleccion del rango de fechas ---------------------------------------------------------------
152 @pyqtSignature("")
158
153 def on_txtDcapacity_editingFinished(self):
154 self.var_Dcapacity = self.txtDcapacity.value()
155
156
157 @pyqtSignature("int") #CLOSED
159 @pyqtSignature("int") #CLOSED
158 def on_lstStartDay_activated(self, index):
160 def on_lstStartDay_activated(self, index):
159 """
161 """
160 Cambia la lista de opciones en lstStopDay
162 Cambia la lista de opciones en lstStopDay
161 """
163 """
162 var_StopDay_index=self.lstStopDay.count() - self.lstStopDay.currentIndex()
164 var_StopDay_index=self.lstStopDay.count() - self.lstStopDay.currentIndex()
163 self.lstStopDay.clear()
165 self.lstStopDay.clear()
164
166
165 for i in self.var_list[index:]:
167 for i in self.var_list[index:]:
166 self.lstStopDay.addItem(i)
168 self.lstStopDay.addItem(i)
167
169
168 self.lstStopDay.setCurrentIndex(self.lstStopDay.count() - var_StopDay_index)
170 self.lstStopDay.setCurrentIndex(self.lstStopDay.count() - var_StopDay_index)
169
171
170 functions.get_sub_list(self)
172 functions.get_sub_list(self)
171
173
172
174
173 @pyqtSignature("int") #CLOSED
175 @pyqtSignature("int") #CLOSED
174 def on_lstStopDay_activated(self, index):
176 def on_lstStopDay_activated(self, index):
175 """
177 """
176 Cambia la lista de opciones en lstStartDay
178 Cambia la lista de opciones en lstStartDay
177 """
179 """
178 var_StartDay_index=self.lstStartDay.currentIndex()
180 var_StartDay_index=self.lstStartDay.currentIndex()
179 var_end_index = self.lstStopDay.count() - index
181 var_end_index = self.lstStopDay.count() - index
180 self.lstStartDay.clear()
182 self.lstStartDay.clear()
181
183
182 for i in self.var_list[:len(self.var_list) - var_end_index + 1]:
184 for i in self.var_list[:len(self.var_list) - var_end_index + 1]:
183 self.lstStartDay.addItem(i)
185 self.lstStartDay.addItem(i)
184
186
185 self.lstStartDay.setCurrentIndex(var_StartDay_index)
187 self.lstStartDay.setCurrentIndex(var_StartDay_index)
186
188
187 functions.get_sub_list(self)
189 functions.get_sub_list(self)
188
190
189
191
192 #----------------------------------------------------- Capacidad del dispositivo de grabacion ---------------------------------------------------------------
193
194 @pyqtSignature("")
195 def on_txtDcapacity_editingFinished(self):
196 self.var_Dcapacity = self.txtDcapacity.value()
197
198
190 @pyqtSignature("int") #CLOSED
199 @pyqtSignature("int") #CLOSED
191 def on_lstDcapacity_activated(self, index):
200 def on_lstDcapacity_activated(self, index):
192 """
201 """
193 Permite elegir el tamaΓ±o del disco
202 Permite elegir el tamaΓ±o del disco
194 """
203 """
195 if index == 0:
204 if index == 0:
196 var_size=25.0
205 var_size=25.0
197 elif index == 1:
206 elif index == 1:
198 var_size=8.5
207 var_size=8.5
199 elif index == 2:
208 elif index == 2:
200 var_size=4.7
209 var_size=4.7
201 elif index == 3:
210 elif index == 3:
202 var_size=0.7
211 var_size=0.7
203
212
204 if index != 4:
213 if index != 4:
205 self.txtDcapacity.setValue(var_size*10**9/1024**2)
214 self.txtDcapacity.setValue(var_size*10**9/1024**2)
206 self.txtDcapacity.setReadOnly(True)
215 self.txtDcapacity.setReadOnly(True)
207 else:
216 else:
208 self.txtDcapacity.setValue(100.0)
217 self.txtDcapacity.setValue(100.0)
209 self.txtDcapacity.setReadOnly(False)
218 self.txtDcapacity.setReadOnly(False)
210
219
211 self.var_Dcapacity = self.txtDcapacity.value()
220 self.var_Dcapacity = self.txtDcapacity.value()
212
221
222
223 #==============================================================================
224 # Botones para la generacion de los archivos de configuracion y el proceso de grabacion
225 #==============================================================================
226
227 #----------------------------------------------------- Generacion de la configuracion usando los parametros ---------------------------------------------------------------
213
228
214 @pyqtSignature("")
229 @pyqtSignature("")
215 def on_btnGbkp_clicked(self):
230 def on_btnGbkp_clicked(self):
216 """
231 """
217 Cuando se presiona el boton btnGbkp
232 Generacion de archivos de configuracion usando los parametros
218 """
233 """
219
234
220 if functions.validate_parameters(self) == False:
235 if functions.validate_parameters(self) == False:
221 return
236 return
222
237
223 #Crea las carpetas en la ruta del proyecto y verifica que se crearon correctamente
238 #Crea las carpetas en la ruta del proyecto y verifica que se crearon correctamente
224 list_dirs=['gpath','iso','ppath']
239 list_dirs=['gpath','iso','ppath']
225 bool_make_dirs = functions.make_dirs(list_dirs, self)
240 bool_make_dirs = functions.make_dirs(list_dirs, self)
226 if bool_make_dirs == False:
241 if bool_make_dirs == False:
227 return
242 return
228
243
229 var_files_list = functions.list_files(self) #Se obtiene la lista de archivos a grabar
244 var_files_list = functions.list_files(self) #Se obtiene la lista de archivos a grabar
230 self.var_n_discs = functions.make_files_dat(var_files_list, self) #Se crean los archivos .dat
245 self.var_n_discs = functions.make_files_dat(var_files_list, self) #Se crean los archivos .dat
231 functions.make_files_print(self) # Se crean los archivos .print
246 functions.make_files_print(self) # Se crean los archivos .print
232 functions2.make_parameters_conf(self) # se crea el archivo parameters.conf
247 functions2.make_parameters_conf(self) # se crea el archivo parameters.conf
233
248
234 #Se deshabilitan los parametros de configuracion
249 #Se bloquean los parametros de configuracion
235 functions2.enabled_items1(True, self)
250 functions2.enabled_items1(True, self)
251
252
253 #----------------------------------------------------- Permite reiniciar la configuracion ---------------------------------------------------------------
236
254
237 @pyqtSignature("")
255 @pyqtSignature("")
238 def on_btnRestart_clicked(self):
256 def on_btnRestart_clicked(self):
239 """
257 """
240 Permite que se puedan cambiar los parametros
258 Permite que se puedan cambiar los parametros
241 """
259 """
242 functions2.enabled_items1(False, self)
260 functions2.enabled_items1(False, self)
243 os.remove("parameters.conf")
261 os.remove("parameters.conf")
244
262
263
264 #----------------------------------------------------- Iniciar proceso de grabacion ---------------------------------------------------------------
245
265
246 @pyqtSignature("")
266 @pyqtSignature("")
247 def on_btnStartburn_clicked(self):
267 def on_btnStartburn_clicked(self):
248 """
268 """
249 Se inicia el proceso de grabacion
269 Se inicia el proceso de grabacion
250 """
270 """
251 self.btnRestart.setEnabled(False)
271 self.btnRestart.setEnabled(False)
252 self.btnStartburn.setEnabled(False)
272 self.btnStartburn.setEnabled(False)
253 self.btnStopburn.setEnabled(True)
273 self.btnStopburn.setEnabled(True)
254
274
255 sys.stdout = self
275 sys.stdout = self
256 #sys.stderr = self
276 #sys.stderr = self
257 print "stdout_!!!"
277 print "stdout_!!!"
258
278
259 #Inicializando variables
279 #Inicializando variables
260 var_Rpath_ppath=self.var_Rpath+"/ppath"
280 var_Rpath_ppath=self.var_Rpath+"/ppath"
261 var_Rpath_iso=self.var_Rpath+"/iso"
281 var_Rpath_iso=self.var_Rpath+"/iso"
262
282
263 var_n=1
283 var_n=1
264 file_iso=var_Rpath_iso+"/"+functions.i2s(var_n)+".iso"
284 file_iso=var_Rpath_iso+"/"+functions.i2s(var_n)+".iso"
265 file_dat=var_Rpath_ppath+"/"+self.var_Elabel+"_"+functions.i2s(var_n)+".dat"
285 file_dat=var_Rpath_ppath+"/"+self.var_Elabel+"_"+functions.i2s(var_n)+".dat"
266
286
267 var_cmd = 'genisoimage -hide-joliet-trans-tbl -joliet-long -r '
287 var_cmd = 'genisoimage -hide-joliet-trans-tbl -joliet-long -r '
268 var_cmd += ' -A '+self.var_Elabel+' -V '+self.var_Elabel
288 var_cmd += ' -A '+self.var_Elabel+' -V '+self.var_Elabel
269 var_cmd += ' -graft-points -path-list '+ file_dat+' -o '+file_iso
289 var_cmd += ' -graft-points -path-list '+ file_dat+' -o '+file_iso
270
290
271 # self.process.start(var_cmd)
291 # self.process.start(var_cmd)
272 self.var_process.start(var_cmd)
292 self.var_process.start(var_cmd)
273 # self.var_process.waitForFinished()
293 # self.var_process.waitForFinished()
274 self.txtInfo.append("ejecutandose")
294 self.txtInfo.append("ejecutandose")
275
295
276
296
277 # # Se leen todos los archivos .dat creados para crear las etiquetas en los archivos .ps
297 # # Se leen todos los archivos .dat creados para crear las etiquetas en los archivos .ps
278 # for var_n in range(1, self.var_n_discs+1):
298 # for var_n in range(1, self.var_n_discs+1):
279 # self.txtInfo.append(str(var_n))
299 # self.txtInfo.append(str(var_n))
280 # file_iso=var_Rpath_iso+"/"+functions.i2s(var_n)+".iso"
300 # file_iso=var_Rpath_iso+"/"+functions.i2s(var_n)+".iso"
281 # file_dat=var_Rpath_ppath+"/"+self.var_Elabel+"_"+functions.i2s(var_n)+".dat"
301 # file_dat=var_Rpath_ppath+"/"+self.var_Elabel+"_"+functions.i2s(var_n)+".dat"
282 #
302 #
283 # var_cmd = 'genisoimage -hide-joliet-trans-tbl -joliet-long -r '
303 # var_cmd = 'genisoimage -hide-joliet-trans-tbl -joliet-long -r '
284 # var_cmd += ' -A '+self.var_Elabel+' -V '+self.var_Elabel
304 # var_cmd += ' -A '+self.var_Elabel+' -V '+self.var_Elabel
285 # var_cmd += ' -graft-points -path-list '+ file_dat+' -o '+file_iso
305 # var_cmd += ' -graft-points -path-list '+ file_dat+' -o '+file_iso
286 # self.txtInfo.append(var_cmd)
306 # self.txtInfo.append(var_cmd)
287 #
307 #
288 # var_output=commands.getstatusoutput(str(var_cmd))[0]
308 # var_output=commands.getstatusoutput(str(var_cmd))[0]
289 # self.txtInfo.append(str(var_output))
309 # self.txtInfo.append(str(var_output))
290
310
291 #os.system(str(var_cmd))
311 #os.system(str(var_cmd))
292 #p = subprocess.Popen(str('ls /'), shell=True, stdout=self)
312 #p = subprocess.Popen(str('ls /'), shell=True, stdout=self)
293 #os.waitpid(p.pid, 0)
313 #os.waitpid(p.pid, 0)
294 ####self.txtInfo.append(str(p.pid))
314 ####self.txtInfo.append(str(p.pid))
295
315
296
316
317 #----------------------------------------------------- Detener proceso de grabacion ---------------------------------------------------------------
318
297 @pyqtSignature("")
319 @pyqtSignature("")
298 def on_btnStopburn_clicked(self):
320 def on_btnStopburn_clicked(self):
299 """
321 """
300 Slot documentation goes here.
322 Slot documentation goes here.
301 """
323 """
302 self.btnRestart.setEnabled(True)
324 self.btnRestart.setEnabled(True)
303 self.btnStartburn.setEnabled(True)
325 self.btnStartburn.setEnabled(True)
304 self.btnStopburn.setEnabled(False)
326 self.btnStopburn.setEnabled(False)
305
327
328
329 #----------------------------------------------------- Testeo de las unidades de grabacion ---------------------------------------------------------------
330
306 @pyqtSignature("")
331 @pyqtSignature("")
307 def on_btnTdevA_clicked(self):
332 def on_btnTdevA_clicked(self):
308 var_dev = str(self.txtDeviceA.text())
333 var_dev = str(self.txtDeviceA.text())
309 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
334 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
310 commands.getstatusoutput(var_cmd)
335 commands.getstatusoutput(var_cmd)
311
336
312 @pyqtSignature("")
337 @pyqtSignature("")
313 def on_btnTdevB_clicked(self):
338 def on_btnTdevB_clicked(self):
314 var_dev = str(self.txtDeviceB.text())
339 var_dev = str(self.txtDeviceB.text())
315 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
340 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
316 commands.getstatusoutput(var_cmd)
341 commands.getstatusoutput(var_cmd)
317
342
318 @pyqtSignature("")
343 @pyqtSignature("")
319 def on_btnTdevC_clicked(self):
344 def on_btnTdevC_clicked(self):
320 var_dev = str(self.txtDeviceC.text())
345 var_dev = str(self.txtDeviceC.text())
321 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
346 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
322 commands.getstatusoutput(var_cmd)
347 commands.getstatusoutput(var_cmd)
323
348
324 @pyqtSignature("")
349 @pyqtSignature("")
325 def on_btnTdevD_clicked(self):
350 def on_btnTdevD_clicked(self):
326 var_dev = str(self.txtDeviceD.text())
351 var_dev = str(self.txtDeviceD.text())
327 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
352 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
328 commands.getstatusoutput(var_cmd)
353 commands.getstatusoutput(var_cmd)
General Comments 0
You need to be logged in to leave comments. Login now