##// END OF EJS Templates
redireccion de salida del comando ok
ralonso -
r50:51
parent child
Show More
@@ -1,161 +1,161
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE Project SYSTEM "Project-4.6.dtd">
3 3 <!-- eric4 project file for project jro_backup_manager -->
4 <!-- Saved: 2010-05-17, 12:04:38 -->
4 <!-- Saved: 2010-05-17, 23:48:20 -->
5 5 <!-- Copyright (C) 2010 , -->
6 6 <Project version="4.6">
7 7 <Language>en</Language>
8 8 <ProgLanguage mixed="0">Python</ProgLanguage>
9 9 <ProjectType>Qt4</ProjectType>
10 10 <Description></Description>
11 11 <Version>0.1</Version>
12 12 <Author></Author>
13 13 <Email></Email>
14 14 <Sources>
15 15 <Source>__init__.py</Source>
16 16 <Source>ui/Ui_MainWindow.py</Source>
17 17 <Source>ui/MainWindow.py</Source>
18 18 <Source>main.py</Source>
19 19 <Source>ui/__init__.py</Source>
20 20 <Source>functions/__init__.py</Source>
21 21 <Source>functions/functions.py</Source>
22 22 <Source>functions/functions2.py</Source>
23 23 <Source>functions/func_doc.py</Source>
24 24 </Sources>
25 25 <Forms>
26 26 <Form>ui/MainWindow.ui</Form>
27 27 </Forms>
28 28 <Translations>
29 29 </Translations>
30 30 <Resources>
31 31 </Resources>
32 32 <Interfaces>
33 33 </Interfaces>
34 34 <Others>
35 35 </Others>
36 36 <MainScript>main.py</MainScript>
37 37 <Vcs>
38 38 <VcsType>Subversion</VcsType>
39 39 <VcsOptions>
40 40 <dict>
41 41 <key>
42 42 <string>add</string>
43 43 </key>
44 44 <value>
45 45 <list>
46 46 <string></string>
47 47 </list>
48 48 </value>
49 49 <key>
50 50 <string>checkout</string>
51 51 </key>
52 52 <value>
53 53 <list>
54 54 <string></string>
55 55 </list>
56 56 </value>
57 57 <key>
58 58 <string>commit</string>
59 59 </key>
60 60 <value>
61 61 <list>
62 62 <string></string>
63 63 </list>
64 64 </value>
65 65 <key>
66 66 <string>diff</string>
67 67 </key>
68 68 <value>
69 69 <list>
70 70 <string></string>
71 71 </list>
72 72 </value>
73 73 <key>
74 74 <string>export</string>
75 75 </key>
76 76 <value>
77 77 <list>
78 78 <string></string>
79 79 </list>
80 80 </value>
81 81 <key>
82 82 <string>global</string>
83 83 </key>
84 84 <value>
85 85 <list>
86 86 <string></string>
87 87 </list>
88 88 </value>
89 89 <key>
90 90 <string>history</string>
91 91 </key>
92 92 <value>
93 93 <list>
94 94 <string></string>
95 95 </list>
96 96 </value>
97 97 <key>
98 98 <string>log</string>
99 99 </key>
100 100 <value>
101 101 <list>
102 102 <string></string>
103 103 </list>
104 104 </value>
105 105 <key>
106 106 <string>remove</string>
107 107 </key>
108 108 <value>
109 109 <list>
110 110 <string></string>
111 111 </list>
112 112 </value>
113 113 <key>
114 114 <string>status</string>
115 115 </key>
116 116 <value>
117 117 <list>
118 118 <string></string>
119 119 </list>
120 120 </value>
121 121 <key>
122 122 <string>tag</string>
123 123 </key>
124 124 <value>
125 125 <list>
126 126 <string></string>
127 127 </list>
128 128 </value>
129 129 <key>
130 130 <string>update</string>
131 131 </key>
132 132 <value>
133 133 <list>
134 134 <string></string>
135 135 </list>
136 136 </value>
137 137 </dict>
138 138 </VcsOptions>
139 139 <VcsOtherData>
140 140 <dict>
141 141 <key>
142 142 <string>standardLayout</string>
143 143 </key>
144 144 <value>
145 145 <bool>True</bool>
146 146 </value>
147 147 </dict>
148 148 </VcsOtherData>
149 149 </Vcs>
150 150 <FiletypeAssociations>
151 151 <FiletypeAssociation pattern="*.ui" type="FORMS" />
152 152 <FiletypeAssociation pattern="*.idl" type="INTERFACES" />
153 153 <FiletypeAssociation pattern="*.qm" type="TRANSLATIONS" />
154 154 <FiletypeAssociation pattern="*.ptl" type="SOURCES" />
155 155 <FiletypeAssociation pattern="*.pyw" type="SOURCES" />
156 156 <FiletypeAssociation pattern="*.ui.h" type="FORMS" />
157 157 <FiletypeAssociation pattern="*.ts" type="TRANSLATIONS" />
158 158 <FiletypeAssociation pattern="*.py" type="SOURCES" />
159 159 <FiletypeAssociation pattern="*.qrc" type="RESOURCES" />
160 160 </FiletypeAssociations>
161 161 </Project> No newline at end of file
@@ -1,311 +1,332
1 1 # -*- coding: utf-8 -*-
2 2
3 3 """
4 4 Module implementing MainWindow.
5 5 """
6 6
7 7 from PyQt4.QtGui import QMainWindow
8 8 from PyQt4.QtCore import pyqtSignature
9 from PyQt4 import QtCore
9 10 from Ui_MainWindow import Ui_MainWindow
10 11 from PyQt4 import QtGui
11 12 from subprocess import *
12 13 import sys
13 14 import os
14 15 import subprocess
15 16 import commands
16 17 from functions import functions
17 18 from functions import functions2
18 19
19 20 class MainWindow(QMainWindow, Ui_MainWindow):
20 21 """
21 22 Class documentation goes here.
22 23 """
23 24
24 25 def __init__(self, parent = None):
25 26 QMainWindow.__init__(self, parent)
26 27 self.setupUi(self)
27 28 self.setupUi2()
28 sys.stdout = self #redirige salida estandar
29 #sys.stdout = self #redirige salida estandar
29 30
30 31 def setupUi2(self):
31 32
32 sys.stdout = self
33 #sys.stdout = self
33 34
34 35 var_tmp = os.path.isfile("parameters.conf")
35 36
36 37 if var_tmp == True:
37 38 self.txtInfo.append("Archivo de configuracion encontrado")
38 39 functions2.get_parameters_conf(self)
39 40
40 41 else:
41 42 self.txtInfo.append("Elija los parametros de configuracion")
42 43
43 44 self.statusDpath = False
44 45 self.statusRpath = False
45 46
46 # functions2.set_parameters(self) #Establece ciertos parametros, para pruebas
47 functions2.set_parameters(self) #Establece ciertos parametros, para pruebas
47 48
48 49 self.var_Dpath = self.txtDpath.text()
49 50 self.var_Rpath = self.txtRpath.text()
50 51 self.var_lstDtype = self.lstDtype.currentIndex()
51 52 self.var_Dtype = self.txtDtype.text()
52 53 self.var_Elabel = self.txtElabel.text()
53 54 self.var_Copys = self.txtCopys.value()
54 55 self.var_lstDcapacity = self.lstDcapacity.currentIndex()
55 56 self.var_Dcapacity = self.txtDcapacity.value()
56 57
57 58 self.var_n_discs=0
58 59 self.var_list=[]
59 60 self.var_sublist=[]
60 61
61 62 functions2.detect_devices(self) #busca los dispositivos de grabacion
62 63 functions.load_days(self)
63
64
64
65 self.var_process = QtCore.QProcess()
66 self.connect(self.var_process, QtCore.SIGNAL('readyReadStandardOutput()'), self.readOuput)
67 self.connect(self.var_process, QtCore.SIGNAL('readyReadStandardError()'), self.readError)
68
69 def readOuput(self):
70 self.txtSburn.append(QtCore.QString(self.var_process.readAllStandardOutput()))
71
72 def readError(self):
73 self.txtSburn.append(QtCore.QString(self.var_process.readAllStandardError()))
65 74
66 75 def write(self, txt):
67 76 """
68 77 Escribe la salida estandar eb txtInfo
69 78 """
70 79 self.txtInfo.append(str(txt))
71 80
72 81
73 82 @pyqtSignature("")
74 83 def on_btnDpath_clicked(self):
75 84 """
76 85 Permite seleccionar graficamente el direcorio de los datos a grabar
77 86 """
78 87 self.var_Dpath= QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly)
79 88 self.txtDpath.setText(self.var_Dpath)
80 89 self.on_txtDpath_editingFinished() #llamada a funcion
81 90
82 91
83 92 @pyqtSignature("")
84 93 def on_btnRpath_clicked(self):
85 94 """
86 95 Permite seleccionar graficamente el direcorio del proyecto
87 96 """
88 97 self.var_Rpath = QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly)
89 98 self.txtRpath.setText(self.var_Rpath)
90 99 self.on_txtRpath_editingFinished() #llamada a funcion
91 100
92 101
93 102 @pyqtSignature("")
94 103 def on_txtDpath_editingFinished(self):
95 104 """
96 105 Permite buscar los archivos de extension seleccionada en la ruta de de datos
97 106 y cargar los valores para el rango de tiempo a ser grabado
98 107 """
99 108 self.var_Dpath=self.txtDpath.text() #Se carga la variable con la ruta recien editada
100 109 self.statusDpath = functions.dir_exists(self.var_Dpath, self)
101 110 functions.load_days(self)
102 111
103 112
104 113 @pyqtSignature("")
105 114 def on_txtRpath_editingFinished(self):
106 115 """
107 116 Valida la ruta del proyecto
108 117 """
109 118 self.var_Rpath=self.txtRpath.text() #Se carga la variable con la ruta recien editada
110 119 self.statusRpath = functions.dir_exists(self.var_Rpath, self)
111 120
112 121
113 122 @pyqtSignature("int")
114 123 def on_lstDtype_activated(self, index):
115 124 """
116 125 Permite elegir entre los tipos de archivos
117 126 """
118 127 self.txtDtype.setReadOnly(True)
119 128 if index == 0:
120 129 var_type='r'
121 130 elif index == 1:
122 131 var_type='pdata'
123 132 elif index == 2:
124 133 var_type='sswma'
125 134 else :
126 135 var_type=''
127 136 self.txtDtype.setReadOnly(False)
128 137
129 138 self.txtDtype.setText(var_type)
130 139 self.on_txtDtype_editingFinished()
131 140
132 141
133 142 @pyqtSignature("")
134 143 def on_txtDtype_editingFinished(self):
135 144 self.var_Dtype=self.txtDtype.text()
136 145 functions.load_days(self) #llamada a funcion
137 146
138 147
139 148 @pyqtSignature("")
140 149 def on_txtElabel_editingFinished(self):
141 150 self.var_Elabel = self.txtElabel.text()
142 151
143 152
144 153 @pyqtSignature("")
145 154 def on_txtCopys_editingFinished(self):
146 155 self.var_Copys = self.txtCopys.value()
147 156
148 157
149 158 @pyqtSignature("")
150 159 def on_txtDcapacity_editingFinished(self):
151 160 self.var_Dcapacity = self.txtDcapacity.value()
152 161
153 162
154 163 @pyqtSignature("int") #CLOSED
155 164 def on_lstStartDay_activated(self, index):
156 165 """
157 166 Cambia la lista de opciones en lstStopDay
158 167 """
159 168 var_StopDay_index=self.lstStopDay.count() - self.lstStopDay.currentIndex()
160 169 self.lstStopDay.clear()
161 170
162 171 for i in self.var_list[index:]:
163 172 self.lstStopDay.addItem(i)
164 173
165 174 self.lstStopDay.setCurrentIndex(self.lstStopDay.count() - var_StopDay_index)
166 175
167 176 functions.get_sub_list(self)
168 177
169 178
170 179 @pyqtSignature("int") #CLOSED
171 180 def on_lstStopDay_activated(self, index):
172 181 """
173 182 Cambia la lista de opciones en lstStartDay
174 183 """
175 184 var_StartDay_index=self.lstStartDay.currentIndex()
176 185 var_end_index = self.lstStopDay.count() - index
177 186 self.lstStartDay.clear()
178 187
179 188 for i in self.var_list[:len(self.var_list) - var_end_index + 1]:
180 189 self.lstStartDay.addItem(i)
181 190
182 191 self.lstStartDay.setCurrentIndex(var_StartDay_index)
183 192
184 193 functions.get_sub_list(self)
185 194
186 195
187 196 @pyqtSignature("int") #CLOSED
188 197 def on_lstDcapacity_activated(self, index):
189 198 """
190 199 Permite elegir el tamaΓ±o del disco
191 200 """
192 201 if index == 0:
193 202 var_size=25.0
194 203 elif index == 1:
195 204 var_size=8.5
196 205 elif index == 2:
197 206 var_size=4.7
198 207 elif index == 3:
199 208 var_size=0.7
200 209
201 210 if index != 4:
202 211 self.txtDcapacity.setValue(var_size*10**9/1024**2)
203 212 self.txtDcapacity.setReadOnly(True)
204 213 else:
205 214 self.txtDcapacity.setValue(100.0)
206 215 self.txtDcapacity.setReadOnly(False)
207 216
208 217 self.var_Dcapacity = self.txtDcapacity.value()
209 218
210 219
211 220 @pyqtSignature("")
212 221 def on_btnGbkp_clicked(self):
213 222 """
214 223 Cuando se presiona el boton btnGbkp
215 224 """
216 225
217 226 if functions.validate_parameters(self) == False:
218 227 return
219 228
220 229 #Crea las carpetas en la ruta del proyecto y verifica que se crearon correctamente
221 230 list_dirs=['gpath','iso','ppath']
222 231 bool_make_dirs = functions.make_dirs(list_dirs, self)
223 232 if bool_make_dirs == False:
224 233 return
225 234
226 235 var_files_list = functions.list_files(self) #Se obtiene la lista de archivos a grabar
227 236 self.var_n_discs = functions.make_files_dat(var_files_list, self) #Se crean los archivos .dat
228 237 functions.make_files_print(self) # Se crean los archivos .print
229 238 functions2.make_parameters_conf(self) # se crea el archivo parameters.conf
230 239
231 240 #Se deshabilitan los parametros de configuracion
232 241 functions2.enabled_items1(True, self)
233 242
234 243 @pyqtSignature("")
235 244 def on_btnRestart_clicked(self):
236 245 """
237 246 Permite que se puedan cambiar los parametros
238 247 """
239 248 functions2.enabled_items1(False, self)
240 249 os.remove("parameters.conf")
241 250
242 251
243 252 @pyqtSignature("")
244 253 def on_btnStartburn_clicked(self):
245 254 """
246 255 Se inicia el proceso de grabacion
247 256 """
248 257 self.btnRestart.setEnabled(False)
249 258 self.btnStartburn.setEnabled(False)
250 259 self.btnStopburn.setEnabled(True)
251 260
252 261 sys.stdout = self
253 262 #sys.stderr = self
254 263 print "stdout_!!!"
255 264
256 265 #Inicializando variables
257 266 var_Rpath_ppath=self.var_Rpath+"/ppath"
258 267 var_Rpath_iso=self.var_Rpath+"/iso"
259 268
260 # Se leen todos los archivos .dat creados para crear las etiquetas en los archivos .ps
261 for var_n in range(1, self.var_n_discs+1):
262 self.txtInfo.append(str(var_n))
263 file_iso=var_Rpath_iso+"/"+functions.i2s(var_n)+".iso"
264 file_dat=var_Rpath_ppath+"/"+self.var_Elabel+"_"+functions.i2s(var_n)+".dat"
265
266 var_cmd = 'genisoimage -hide-joliet-trans-tbl -joliet-long -r '
267 var_cmd += ' -A '+self.var_Elabel+' -V '+self.var_Elabel
268 var_cmd += ' -graft-points -path-list '+ file_dat+' -o '+file_iso
269 self.txtInfo.append(var_cmd)
270
271 var_output=commands.getstatusoutput(str(var_cmd))[0]
272 self.txtInfo.append(str(var_output))
269 var_n=1
270 file_iso=var_Rpath_iso+"/"+functions.i2s(var_n)+".iso"
271 file_dat=var_Rpath_ppath+"/"+self.var_Elabel+"_"+functions.i2s(var_n)+".dat"
272
273 var_cmd = 'genisoimage -hide-joliet-trans-tbl -joliet-long -r '
274 var_cmd += ' -A '+self.var_Elabel+' -V '+self.var_Elabel
275 var_cmd += ' -graft-points -path-list '+ file_dat+' -o '+file_iso
276
277 # self.process.start(var_cmd)
278 self.var_process.start(var_cmd)
279
280
281 # # Se leen todos los archivos .dat creados para crear las etiquetas en los archivos .ps
282 # for var_n in range(1, self.var_n_discs+1):
283 # self.txtInfo.append(str(var_n))
284 # file_iso=var_Rpath_iso+"/"+functions.i2s(var_n)+".iso"
285 # file_dat=var_Rpath_ppath+"/"+self.var_Elabel+"_"+functions.i2s(var_n)+".dat"
286 #
287 # var_cmd = 'genisoimage -hide-joliet-trans-tbl -joliet-long -r '
288 # var_cmd += ' -A '+self.var_Elabel+' -V '+self.var_Elabel
289 # var_cmd += ' -graft-points -path-list '+ file_dat+' -o '+file_iso
290 # self.txtInfo.append(var_cmd)
291 #
292 # var_output=commands.getstatusoutput(str(var_cmd))[0]
293 # self.txtInfo.append(str(var_output))
273 294
274 295 #os.system(str(var_cmd))
275 296 #p = subprocess.Popen(str('ls /'), shell=True, stdout=self)
276 297 #os.waitpid(p.pid, 0)
277 298 ####self.txtInfo.append(str(p.pid))
278 299
279 300
280 301 @pyqtSignature("")
281 302 def on_btnStopburn_clicked(self):
282 303 """
283 304 Slot documentation goes here.
284 305 """
285 306 self.btnRestart.setEnabled(True)
286 307 self.btnStartburn.setEnabled(True)
287 308 self.btnStopburn.setEnabled(False)
288 309
289 310 @pyqtSignature("")
290 311 def on_btnTdevA_clicked(self):
291 312 var_dev = str(self.txtDeviceA.text())
292 313 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
293 314 commands.getstatusoutput(var_cmd)
294 315
295 316 @pyqtSignature("")
296 317 def on_btnTdevB_clicked(self):
297 318 var_dev = str(self.txtDeviceB.text())
298 319 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
299 320 commands.getstatusoutput(var_cmd)
300 321
301 322 @pyqtSignature("")
302 323 def on_btnTdevC_clicked(self):
303 324 var_dev = str(self.txtDeviceC.text())
304 325 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
305 326 commands.getstatusoutput(var_cmd)
306 327
307 328 @pyqtSignature("")
308 329 def on_btnTdevD_clicked(self):
309 330 var_dev = str(self.txtDeviceD.text())
310 331 var_cmd = 'eject ' + var_dev + '; eject -t ' + var_dev
311 332 commands.getstatusoutput(var_cmd)
@@ -1,967 +1,967
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <ui version="4.0">
3 3 <class>MainWindow</class>
4 4 <widget class="QMainWindow" name="MainWindow">
5 5 <property name="geometry">
6 6 <rect>
7 7 <x>0</x>
8 8 <y>0</y>
9 9 <width>806</width>
10 10 <height>737</height>
11 11 </rect>
12 12 </property>
13 13 <property name="windowTitle">
14 14 <string>JRO BACKUP MANAGER</string>
15 15 </property>
16 16 <widget class="QWidget" name="centralwidget">
17 17 <layout class="QVBoxLayout" name="verticalLayout">
18 18 <item>
19 19 <widget class="QTabWidget" name="tabWidget">
20 20 <property name="enabled">
21 21 <bool>true</bool>
22 22 </property>
23 23 <property name="sizePolicy">
24 24 <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
25 25 <horstretch>0</horstretch>
26 26 <verstretch>0</verstretch>
27 27 </sizepolicy>
28 28 </property>
29 29 <property name="currentIndex">
30 <number>0</number>
30 <number>2</number>
31 31 </property>
32 32 <widget class="QWidget" name="tabParameters">
33 33 <property name="enabled">
34 34 <bool>true</bool>
35 35 </property>
36 36 <attribute name="title">
37 37 <string>Parameters</string>
38 38 </attribute>
39 39 <layout class="QVBoxLayout" name="verticalLayout_2">
40 40 <item>
41 41 <layout class="QHBoxLayout" name="horizontalLayout">
42 42 <property name="sizeConstraint">
43 43 <enum>QLayout::SetDefaultConstraint</enum>
44 44 </property>
45 45 <item>
46 46 <widget class="QLineEdit" name="txtDpath">
47 47 <property name="sizePolicy">
48 48 <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
49 49 <horstretch>0</horstretch>
50 50 <verstretch>0</verstretch>
51 51 </sizepolicy>
52 52 </property>
53 53 </widget>
54 54 </item>
55 55 <item>
56 56 <widget class="QPushButton" name="btnDpath">
57 57 <property name="sizePolicy">
58 58 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
59 59 <horstretch>0</horstretch>
60 60 <verstretch>0</verstretch>
61 61 </sizepolicy>
62 62 </property>
63 63 <property name="text">
64 64 <string>Data Path</string>
65 65 </property>
66 66 <property name="checkable">
67 67 <bool>false</bool>
68 68 </property>
69 69 </widget>
70 70 </item>
71 71 </layout>
72 72 </item>
73 73 <item>
74 74 <layout class="QHBoxLayout" name="horizontalLayout_3">
75 75 <item>
76 76 <widget class="QLineEdit" name="txtRpath"/>
77 77 </item>
78 78 <item>
79 79 <widget class="QPushButton" name="btnRpath">
80 80 <property name="text">
81 81 <string>Resource Path</string>
82 82 </property>
83 83 </widget>
84 84 </item>
85 85 </layout>
86 86 </item>
87 87 <item>
88 88 <widget class="QLabel" name="lblDtype">
89 89 <property name="text">
90 90 <string>Data Type</string>
91 91 </property>
92 92 </widget>
93 93 </item>
94 94 <item>
95 95 <layout class="QHBoxLayout" name="horizontalLayout_4">
96 96 <item>
97 97 <widget class="QComboBox" name="lstDtype">
98 98 <item>
99 99 <property name="text">
100 100 <string>Raw Data</string>
101 101 </property>
102 102 </item>
103 103 <item>
104 104 <property name="text">
105 105 <string>Process Data</string>
106 106 </property>
107 107 </item>
108 108 <item>
109 109 <property name="text">
110 110 <string>BLTR Data</string>
111 111 </property>
112 112 </item>
113 113 <item>
114 114 <property name="text">
115 115 <string>Other</string>
116 116 </property>
117 117 </item>
118 118 </widget>
119 119 </item>
120 120 <item>
121 121 <widget class="QLineEdit" name="txtDtype">
122 122 <property name="text">
123 123 <string>r</string>
124 124 </property>
125 125 <property name="readOnly">
126 126 <bool>true</bool>
127 127 </property>
128 128 </widget>
129 129 </item>
130 130 <item>
131 131 <widget class="QCheckBox" name="chkMST">
132 132 <property name="text">
133 133 <string>MST-ISR Data</string>
134 134 </property>
135 135 </widget>
136 136 </item>
137 137 </layout>
138 138 </item>
139 139 <item>
140 140 <layout class="QHBoxLayout" name="horizontalLayout_6">
141 141 <item>
142 142 <widget class="QLabel" name="lblElabel">
143 143 <property name="text">
144 144 <string>Exp. Label at device</string>
145 145 </property>
146 146 </widget>
147 147 </item>
148 148 <item>
149 149 <widget class="QLabel" name="lblCopys">
150 150 <property name="text">
151 151 <string>Copys</string>
152 152 </property>
153 153 </widget>
154 154 </item>
155 155 </layout>
156 156 </item>
157 157 <item>
158 158 <layout class="QHBoxLayout" name="horizontalLayout_5">
159 159 <item>
160 160 <widget class="QLineEdit" name="txtElabel"/>
161 161 </item>
162 162 <item>
163 163 <widget class="QSpinBox" name="txtCopys">
164 164 <property name="sizePolicy">
165 165 <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
166 166 <horstretch>0</horstretch>
167 167 <verstretch>0</verstretch>
168 168 </sizepolicy>
169 169 </property>
170 170 </widget>
171 171 </item>
172 172 </layout>
173 173 </item>
174 174 <item>
175 175 <layout class="QHBoxLayout" name="horizontalLayout_7">
176 176 <item>
177 177 <widget class="QLabel" name="lblStartDay">
178 178 <property name="text">
179 179 <string>Start Day:</string>
180 180 </property>
181 181 </widget>
182 182 </item>
183 183 <item>
184 184 <widget class="QLabel" name="lblStopDay">
185 185 <property name="text">
186 186 <string>Stop Day:</string>
187 187 </property>
188 188 </widget>
189 189 </item>
190 190 </layout>
191 191 </item>
192 192 <item>
193 193 <layout class="QHBoxLayout" name="horizontalLayout_8">
194 194 <item>
195 195 <widget class="QComboBox" name="lstStartDay"/>
196 196 </item>
197 197 <item>
198 198 <widget class="QComboBox" name="lstStopDay"/>
199 199 </item>
200 200 </layout>
201 201 </item>
202 202 </layout>
203 203 </widget>
204 204 <widget class="QWidget" name="tabDconfig">
205 205 <property name="enabled">
206 206 <bool>true</bool>
207 207 </property>
208 208 <property name="sizePolicy">
209 209 <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
210 210 <horstretch>0</horstretch>
211 211 <verstretch>0</verstretch>
212 212 </sizepolicy>
213 213 </property>
214 214 <attribute name="title">
215 215 <string>Device Config.</string>
216 216 </attribute>
217 217 <layout class="QVBoxLayout" name="verticalLayout_3">
218 218 <item>
219 219 <layout class="QGridLayout" name="gridLayout">
220 220 <item row="0" column="0">
221 221 <layout class="QVBoxLayout" name="verticalLayout_15">
222 222 <item>
223 223 <widget class="QCheckBox" name="chkDevA">
224 224 <property name="text">
225 225 <string>Dev A</string>
226 226 </property>
227 227 <property name="checked">
228 228 <bool>true</bool>
229 229 </property>
230 230 </widget>
231 231 </item>
232 232 <item>
233 233 <widget class="QWidget" name="grpDevA" native="true">
234 234 <layout class="QVBoxLayout" name="verticalLayout_11">
235 235 <item>
236 236 <widget class="QLineEdit" name="txtDeviceA"/>
237 237 </item>
238 238 <item>
239 239 <widget class="QLineEdit" name="txtBspeedA">
240 240 <property name="text">
241 241 <string>16</string>
242 242 </property>
243 243 </widget>
244 244 </item>
245 245 <item>
246 246 <widget class="QLineEdit" name="txtBmodeA">
247 247 <property name="text">
248 248 <string>-sao</string>
249 249 </property>
250 250 </widget>
251 251 </item>
252 252 <item>
253 253 <widget class="QPushButton" name="btnTdevA">
254 254 <property name="text">
255 255 <string>Test DevA</string>
256 256 </property>
257 257 </widget>
258 258 </item>
259 259 </layout>
260 260 </widget>
261 261 </item>
262 262 </layout>
263 263 </item>
264 264 <item row="0" column="1">
265 265 <layout class="QVBoxLayout" name="verticalLayout_16">
266 266 <item>
267 267 <widget class="QCheckBox" name="chkDevB">
268 268 <property name="text">
269 269 <string>Dev B</string>
270 270 </property>
271 271 <property name="checked">
272 272 <bool>true</bool>
273 273 </property>
274 274 </widget>
275 275 </item>
276 276 <item>
277 277 <widget class="QWidget" name="grpDevB" native="true">
278 278 <layout class="QVBoxLayout" name="verticalLayout_12">
279 279 <item>
280 280 <widget class="QLineEdit" name="txtDeviceB"/>
281 281 </item>
282 282 <item>
283 283 <widget class="QLineEdit" name="txtBspeedB">
284 284 <property name="text">
285 285 <string>16</string>
286 286 </property>
287 287 </widget>
288 288 </item>
289 289 <item>
290 290 <widget class="QLineEdit" name="txtBmodeB">
291 291 <property name="text">
292 292 <string>-sao</string>
293 293 </property>
294 294 </widget>
295 295 </item>
296 296 <item>
297 297 <widget class="QPushButton" name="btnTdevB">
298 298 <property name="text">
299 299 <string>Test DevB</string>
300 300 </property>
301 301 </widget>
302 302 </item>
303 303 </layout>
304 304 </widget>
305 305 </item>
306 306 </layout>
307 307 </item>
308 308 <item row="0" column="2">
309 309 <layout class="QVBoxLayout" name="verticalLayout_17">
310 310 <item>
311 311 <widget class="QCheckBox" name="chkDevC">
312 312 <property name="text">
313 313 <string>Dev C</string>
314 314 </property>
315 315 <property name="checked">
316 316 <bool>true</bool>
317 317 </property>
318 318 </widget>
319 319 </item>
320 320 <item>
321 321 <widget class="QWidget" name="grpDevC" native="true">
322 322 <layout class="QVBoxLayout" name="verticalLayout_13">
323 323 <item>
324 324 <widget class="QLineEdit" name="txtDeviceC"/>
325 325 </item>
326 326 <item>
327 327 <widget class="QLineEdit" name="txtBspeedC">
328 328 <property name="text">
329 329 <string>16</string>
330 330 </property>
331 331 </widget>
332 332 </item>
333 333 <item>
334 334 <widget class="QLineEdit" name="txtBmodeC">
335 335 <property name="text">
336 336 <string>-sao</string>
337 337 </property>
338 338 </widget>
339 339 </item>
340 340 <item>
341 341 <widget class="QPushButton" name="btnTdevC">
342 342 <property name="text">
343 343 <string>Test DevC</string>
344 344 </property>
345 345 </widget>
346 346 </item>
347 347 </layout>
348 348 </widget>
349 349 </item>
350 350 </layout>
351 351 </item>
352 352 <item row="0" column="3">
353 353 <layout class="QVBoxLayout" name="verticalLayout_18">
354 354 <item>
355 355 <widget class="QCheckBox" name="chkDevD">
356 356 <property name="text">
357 357 <string>Dev D</string>
358 358 </property>
359 359 <property name="checked">
360 360 <bool>true</bool>
361 361 </property>
362 362 </widget>
363 363 </item>
364 364 <item>
365 365 <widget class="QWidget" name="grpDevD" native="true">
366 366 <layout class="QVBoxLayout" name="verticalLayout_14">
367 367 <item>
368 368 <widget class="QLineEdit" name="txtDeviceD"/>
369 369 </item>
370 370 <item>
371 371 <widget class="QLineEdit" name="txtBspeedD">
372 372 <property name="text">
373 373 <string>16</string>
374 374 </property>
375 375 </widget>
376 376 </item>
377 377 <item>
378 378 <widget class="QLineEdit" name="txtBmodeD">
379 379 <property name="text">
380 380 <string>-sao</string>
381 381 </property>
382 382 </widget>
383 383 </item>
384 384 <item>
385 385 <widget class="QPushButton" name="btnTdevD">
386 386 <property name="text">
387 387 <string>Test DevD</string>
388 388 </property>
389 389 </widget>
390 390 </item>
391 391 </layout>
392 392 </widget>
393 393 </item>
394 394 </layout>
395 395 </item>
396 396 <item row="0" column="4">
397 397 <layout class="QVBoxLayout" name="verticalLayout_19">
398 398 <item>
399 399 <widget class="QLabel" name="label_2">
400 400 <property name="text">
401 401 <string/>
402 402 </property>
403 403 </widget>
404 404 </item>
405 405 <item>
406 406 <widget class="QLabel" name="lblDevice">
407 407 <property name="text">
408 408 <string>Device</string>
409 409 </property>
410 410 </widget>
411 411 </item>
412 412 <item>
413 413 <widget class="QLabel" name="lblBspeed">
414 414 <property name="text">
415 415 <string>Burn Speed</string>
416 416 </property>
417 417 </widget>
418 418 </item>
419 419 <item>
420 420 <widget class="QLabel" name="lblBmode">
421 421 <property name="text">
422 422 <string>Burn Mode</string>
423 423 </property>
424 424 </widget>
425 425 </item>
426 426 <item>
427 427 <widget class="QLabel" name="label">
428 428 <property name="text">
429 429 <string/>
430 430 </property>
431 431 </widget>
432 432 </item>
433 433 </layout>
434 434 </item>
435 435 </layout>
436 436 </item>
437 437 <item>
438 438 <layout class="QHBoxLayout" name="horizontalLayout_9">
439 439 <property name="sizeConstraint">
440 440 <enum>QLayout::SetFixedSize</enum>
441 441 </property>
442 442 <item>
443 443 <widget class="QLabel" name="lblBprocess">
444 444 <property name="sizePolicy">
445 445 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
446 446 <horstretch>0</horstretch>
447 447 <verstretch>0</verstretch>
448 448 </sizepolicy>
449 449 </property>
450 450 <property name="text">
451 451 <string>Burning process</string>
452 452 </property>
453 453 </widget>
454 454 </item>
455 455 <item>
456 456 <widget class="QCheckBox" name="chkSimultaneously">
457 457 <property name="sizePolicy">
458 458 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
459 459 <horstretch>0</horstretch>
460 460 <verstretch>0</verstretch>
461 461 </sizepolicy>
462 462 </property>
463 463 <property name="text">
464 464 <string>Simultaneously</string>
465 465 </property>
466 466 </widget>
467 467 </item>
468 468 <item>
469 469 <widget class="QCheckBox" name="chkSequentially">
470 470 <property name="sizePolicy">
471 471 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
472 472 <horstretch>0</horstretch>
473 473 <verstretch>0</verstretch>
474 474 </sizepolicy>
475 475 </property>
476 476 <property name="text">
477 477 <string>Sequentially</string>
478 478 </property>
479 479 <property name="checked">
480 480 <bool>true</bool>
481 481 </property>
482 482 </widget>
483 483 </item>
484 484 </layout>
485 485 </item>
486 486 <item>
487 487 <layout class="QHBoxLayout" name="horizontalLayout_11">
488 488 <property name="spacing">
489 489 <number>6</number>
490 490 </property>
491 491 <property name="sizeConstraint">
492 492 <enum>QLayout::SetDefaultConstraint</enum>
493 493 </property>
494 494 <item>
495 495 <widget class="QLabel" name="lblDcapacity">
496 496 <property name="sizePolicy">
497 497 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
498 498 <horstretch>0</horstretch>
499 499 <verstretch>0</verstretch>
500 500 </sizepolicy>
501 501 </property>
502 502 <property name="text">
503 503 <string>Device Capacity (MB)</string>
504 504 </property>
505 505 </widget>
506 506 </item>
507 507 <item>
508 508 <widget class="QCheckBox" name="chkSalert">
509 509 <property name="sizePolicy">
510 510 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
511 511 <horstretch>0</horstretch>
512 512 <verstretch>0</verstretch>
513 513 </sizepolicy>
514 514 </property>
515 515 <property name="text">
516 516 <string>Sound Alert</string>
517 517 </property>
518 518 </widget>
519 519 </item>
520 520 </layout>
521 521 </item>
522 522 <item>
523 523 <layout class="QHBoxLayout" name="horizontalLayout_10">
524 524 <property name="sizeConstraint">
525 525 <enum>QLayout::SetFixedSize</enum>
526 526 </property>
527 527 <item>
528 528 <widget class="QComboBox" name="lstDcapacity">
529 529 <property name="currentIndex">
530 530 <number>2</number>
531 531 </property>
532 532 <item>
533 533 <property name="text">
534 534 <string>BluRay [25.0 GB]</string>
535 535 </property>
536 536 </item>
537 537 <item>
538 538 <property name="text">
539 539 <string>DVD2 [8.5 GB]</string>
540 540 </property>
541 541 </item>
542 542 <item>
543 543 <property name="text">
544 544 <string>DVD1 [4.7 GB]</string>
545 545 </property>
546 546 </item>
547 547 <item>
548 548 <property name="text">
549 549 <string>CD [0.7 GB]</string>
550 550 </property>
551 551 </item>
552 552 <item>
553 553 <property name="text">
554 554 <string>Other [? GB]</string>
555 555 </property>
556 556 </item>
557 557 </widget>
558 558 </item>
559 559 <item>
560 560 <widget class="QDoubleSpinBox" name="txtDcapacity">
561 561 <property name="sizePolicy">
562 562 <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
563 563 <horstretch>0</horstretch>
564 564 <verstretch>0</verstretch>
565 565 </sizepolicy>
566 566 </property>
567 567 <property name="readOnly">
568 568 <bool>true</bool>
569 569 </property>
570 570 <property name="minimum">
571 571 <double>100.000000000000000</double>
572 572 </property>
573 573 <property name="maximum">
574 574 <double>99999.990000000005239</double>
575 575 </property>
576 576 <property name="value">
577 577 <double>4482.270000000000437</double>
578 578 </property>
579 579 </widget>
580 580 </item>
581 581 <item>
582 582 <widget class="QCheckBox" name="chkPSgraphic">
583 583 <property name="text">
584 584 <string>PS Graphic</string>
585 585 </property>
586 586 </widget>
587 587 </item>
588 588 <item>
589 589 <widget class="QLineEdit" name="lineEdit_17"/>
590 590 </item>
591 591 </layout>
592 592 </item>
593 593 </layout>
594 594 </widget>
595 595 <widget class="QWidget" name="tabSburn">
596 596 <attribute name="title">
597 597 <string>Status Burn</string>
598 598 </attribute>
599 599 <layout class="QVBoxLayout" name="verticalLayout_4">
600 600 <item>
601 601 <widget class="QWidget" name="widget_2" native="true">
602 602 <property name="sizePolicy">
603 603 <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
604 604 <horstretch>0</horstretch>
605 605 <verstretch>0</verstretch>
606 606 </sizepolicy>
607 607 </property>
608 608 <property name="maximumSize">
609 609 <size>
610 610 <width>500</width>
611 611 <height>16777215</height>
612 612 </size>
613 613 </property>
614 614 <layout class="QGridLayout" name="gridLayout_2">
615 615 <item row="3" column="2">
616 616 <widget class="QLineEdit" name="txtSTATUSb"/>
617 617 </item>
618 618 <item row="5" column="1">
619 619 <widget class="QLineEdit" name="txtINFOa"/>
620 620 </item>
621 621 <item row="3" column="1">
622 622 <widget class="QLineEdit" name="txtSTATUSa"/>
623 623 </item>
624 624 <item row="5" column="2">
625 625 <widget class="QLineEdit" name="txtINFOb"/>
626 626 </item>
627 627 <item row="3" column="3">
628 628 <widget class="QLineEdit" name="txtSTATUSc"/>
629 629 </item>
630 630 <item row="3" column="4">
631 631 <widget class="QLineEdit" name="txtSTATUSd"/>
632 632 </item>
633 633 <item row="5" column="4">
634 634 <widget class="QLineEdit" name="txtINFOd"/>
635 635 </item>
636 636 <item row="6" column="1">
637 637 <widget class="QLineEdit" name="txtSETa"/>
638 638 </item>
639 639 <item row="6" column="2">
640 640 <widget class="QLineEdit" name="txtSETb"/>
641 641 </item>
642 642 <item row="6" column="3">
643 643 <widget class="QLineEdit" name="txtSETc"/>
644 644 </item>
645 645 <item row="6" column="4">
646 646 <widget class="QLineEdit" name="txtSETd"/>
647 647 </item>
648 648 <item row="3" column="0">
649 649 <widget class="QLabel" name="lblSTATUS">
650 650 <property name="text">
651 651 <string>STATUS</string>
652 652 </property>
653 653 </widget>
654 654 </item>
655 655 <item row="5" column="0">
656 656 <widget class="QLabel" name="lblINFO">
657 657 <property name="text">
658 658 <string>INFO</string>
659 659 </property>
660 660 </widget>
661 661 </item>
662 662 <item row="6" column="0">
663 663 <widget class="QLabel" name="lblSET">
664 664 <property name="text">
665 665 <string>SET</string>
666 666 </property>
667 667 </widget>
668 668 </item>
669 669 <item row="0" column="1">
670 670 <widget class="QLabel" name="lblDevA">
671 671 <property name="text">
672 672 <string>DEV A</string>
673 673 </property>
674 674 <property name="alignment">
675 675 <set>Qt::AlignCenter</set>
676 676 </property>
677 677 </widget>
678 678 </item>
679 679 <item row="0" column="2">
680 680 <widget class="QLabel" name="lblDevB">
681 681 <property name="text">
682 682 <string>DEV B</string>
683 683 </property>
684 684 <property name="alignment">
685 685 <set>Qt::AlignCenter</set>
686 686 </property>
687 687 </widget>
688 688 </item>
689 689 <item row="0" column="3">
690 690 <widget class="QLabel" name="lblDevC">
691 691 <property name="text">
692 692 <string>DEV C</string>
693 693 </property>
694 694 <property name="alignment">
695 695 <set>Qt::AlignCenter</set>
696 696 </property>
697 697 </widget>
698 698 </item>
699 699 <item row="0" column="4">
700 700 <widget class="QLabel" name="lblDevD">
701 701 <property name="text">
702 702 <string>DEV D</string>
703 703 </property>
704 704 <property name="alignment">
705 705 <set>Qt::AlignCenter</set>
706 706 </property>
707 707 </widget>
708 708 </item>
709 709 <item row="5" column="3">
710 710 <widget class="QLineEdit" name="txtINFOc"/>
711 711 </item>
712 712 </layout>
713 713 </widget>
714 714 </item>
715 715 <item>
716 716 <widget class="QTextEdit" name="txtSburn"/>
717 717 </item>
718 718 </layout>
719 719 </widget>
720 720 </widget>
721 721 </item>
722 722 <item>
723 723 <widget class="QTextEdit" name="txtInfo">
724 724 <property name="readOnly">
725 725 <bool>true</bool>
726 726 </property>
727 727 </widget>
728 728 </item>
729 729 <item>
730 730 <layout class="QHBoxLayout" name="horizontalLayout_2">
731 731 <property name="sizeConstraint">
732 732 <enum>QLayout::SetDefaultConstraint</enum>
733 733 </property>
734 734 <item>
735 735 <widget class="QPushButton" name="btnGbkp">
736 736 <property name="enabled">
737 737 <bool>false</bool>
738 738 </property>
739 739 <property name="text">
740 740 <string>Generate Bkp</string>
741 741 </property>
742 742 </widget>
743 743 </item>
744 744 <item>
745 745 <widget class="QPushButton" name="btnRestart">
746 746 <property name="enabled">
747 747 <bool>false</bool>
748 748 </property>
749 749 <property name="text">
750 750 <string>Restart</string>
751 751 </property>
752 752 </widget>
753 753 </item>
754 754 <item>
755 755 <widget class="QPushButton" name="btnStartburn">
756 756 <property name="enabled">
757 757 <bool>false</bool>
758 758 </property>
759 759 <property name="text">
760 760 <string>Start Burn</string>
761 761 </property>
762 762 </widget>
763 763 </item>
764 764 <item>
765 765 <widget class="QPushButton" name="btnStopburn">
766 766 <property name="enabled">
767 767 <bool>false</bool>
768 768 </property>
769 769 <property name="text">
770 770 <string>Stop Burn</string>
771 771 </property>
772 772 </widget>
773 773 </item>
774 774 </layout>
775 775 </item>
776 776 </layout>
777 777 </widget>
778 778 <widget class="QMenuBar" name="menubar">
779 779 <property name="geometry">
780 780 <rect>
781 781 <x>0</x>
782 782 <y>0</y>
783 783 <width>806</width>
784 <height>25</height>
784 <height>21</height>
785 785 </rect>
786 786 </property>
787 787 <widget class="QMenu" name="menuFile">
788 788 <property name="title">
789 789 <string>File</string>
790 790 </property>
791 791 <addaction name="actionSave_Config"/>
792 792 <addaction name="actionQuit"/>
793 793 </widget>
794 794 <widget class="QMenu" name="menuParameters">
795 795 <property name="title">
796 796 <string>Parameters</string>
797 797 </property>
798 798 <addaction name="actionChange_Parameters"/>
799 799 </widget>
800 800 <widget class="QMenu" name="menuHelp">
801 801 <property name="title">
802 802 <string>Help</string>
803 803 </property>
804 804 <addaction name="actionAbout"/>
805 805 </widget>
806 806 <addaction name="menuFile"/>
807 807 <addaction name="menuParameters"/>
808 808 <addaction name="menuHelp"/>
809 809 </widget>
810 810 <widget class="QStatusBar" name="statusbar"/>
811 811 <action name="actionChange_Parameters">
812 812 <property name="text">
813 813 <string>Change Parameters</string>
814 814 </property>
815 815 </action>
816 816 <action name="actionSave_Config">
817 817 <property name="text">
818 818 <string>Save Config</string>
819 819 </property>
820 820 </action>
821 821 <action name="actionQuit">
822 822 <property name="text">
823 823 <string>Quit</string>
824 824 </property>
825 825 </action>
826 826 <action name="actionAbout">
827 827 <property name="text">
828 828 <string>About</string>
829 829 </property>
830 830 </action>
831 831 </widget>
832 832 <tabstops>
833 833 <tabstop>txtDpath</tabstop>
834 834 <tabstop>btnDpath</tabstop>
835 835 <tabstop>txtRpath</tabstop>
836 836 <tabstop>btnRpath</tabstop>
837 837 <tabstop>lstDtype</tabstop>
838 838 <tabstop>txtDtype</tabstop>
839 839 <tabstop>chkMST</tabstop>
840 840 <tabstop>txtElabel</tabstop>
841 841 <tabstop>lstStartDay</tabstop>
842 842 <tabstop>lstStopDay</tabstop>
843 843 <tabstop>chkSimultaneously</tabstop>
844 844 <tabstop>chkSequentially</tabstop>
845 845 <tabstop>chkSalert</tabstop>
846 846 <tabstop>lstDcapacity</tabstop>
847 847 <tabstop>chkPSgraphic</tabstop>
848 848 <tabstop>lineEdit_17</tabstop>
849 849 <tabstop>txtSTATUSa</tabstop>
850 850 <tabstop>txtSTATUSb</tabstop>
851 851 <tabstop>txtSTATUSc</tabstop>
852 852 <tabstop>txtSTATUSd</tabstop>
853 853 <tabstop>txtINFOa</tabstop>
854 854 <tabstop>txtINFOb</tabstop>
855 855 <tabstop>txtINFOc</tabstop>
856 856 <tabstop>txtINFOd</tabstop>
857 857 <tabstop>txtSETa</tabstop>
858 858 <tabstop>txtSETb</tabstop>
859 859 <tabstop>txtSETc</tabstop>
860 860 <tabstop>txtSETd</tabstop>
861 861 <tabstop>tabWidget</tabstop>
862 862 <tabstop>txtSburn</tabstop>
863 863 <tabstop>btnGbkp</tabstop>
864 864 <tabstop>btnRestart</tabstop>
865 865 <tabstop>btnStartburn</tabstop>
866 866 <tabstop>btnStopburn</tabstop>
867 867 </tabstops>
868 868 <resources/>
869 869 <connections>
870 870 <connection>
871 871 <sender>chkSequentially</sender>
872 872 <signal>clicked()</signal>
873 873 <receiver>chkSimultaneously</receiver>
874 874 <slot>toggle()</slot>
875 875 <hints>
876 876 <hint type="sourcelabel">
877 877 <x>635</x>
878 878 <y>276</y>
879 879 </hint>
880 880 <hint type="destinationlabel">
881 881 <x>350</x>
882 882 <y>269</y>
883 883 </hint>
884 884 </hints>
885 885 </connection>
886 886 <connection>
887 887 <sender>chkSimultaneously</sender>
888 888 <signal>clicked()</signal>
889 889 <receiver>chkSequentially</receiver>
890 890 <slot>toggle()</slot>
891 891 <hints>
892 892 <hint type="sourcelabel">
893 893 <x>433</x>
894 894 <y>276</y>
895 895 </hint>
896 896 <hint type="destinationlabel">
897 897 <x>635</x>
898 898 <y>276</y>
899 899 </hint>
900 900 </hints>
901 901 </connection>
902 902 <connection>
903 903 <sender>chkDevA</sender>
904 904 <signal>toggled(bool)</signal>
905 905 <receiver>grpDevA</receiver>
906 906 <slot>setEnabled(bool)</slot>
907 907 <hints>
908 908 <hint type="sourcelabel">
909 909 <x>95</x>
910 910 <y>86</y>
911 911 </hint>
912 912 <hint type="destinationlabel">
913 913 <x>95</x>
914 914 <y>167</y>
915 915 </hint>
916 916 </hints>
917 917 </connection>
918 918 <connection>
919 919 <sender>chkDevB</sender>
920 920 <signal>toggled(bool)</signal>
921 921 <receiver>grpDevB</receiver>
922 922 <slot>setEnabled(bool)</slot>
923 923 <hints>
924 924 <hint type="sourcelabel">
925 925 <x>251</x>
926 926 <y>86</y>
927 927 </hint>
928 928 <hint type="destinationlabel">
929 929 <x>251</x>
930 930 <y>167</y>
931 931 </hint>
932 932 </hints>
933 933 </connection>
934 934 <connection>
935 935 <sender>chkDevC</sender>
936 936 <signal>toggled(bool)</signal>
937 937 <receiver>grpDevC</receiver>
938 938 <slot>setEnabled(bool)</slot>
939 939 <hints>
940 940 <hint type="sourcelabel">
941 941 <x>407</x>
942 942 <y>86</y>
943 943 </hint>
944 944 <hint type="destinationlabel">
945 945 <x>407</x>
946 946 <y>167</y>
947 947 </hint>
948 948 </hints>
949 949 </connection>
950 950 <connection>
951 951 <sender>chkDevD</sender>
952 952 <signal>toggled(bool)</signal>
953 953 <receiver>grpDevD</receiver>
954 954 <slot>setEnabled(bool)</slot>
955 955 <hints>
956 956 <hint type="sourcelabel">
957 957 <x>563</x>
958 958 <y>86</y>
959 959 </hint>
960 960 <hint type="destinationlabel">
961 961 <x>563</x>
962 962 <y>167</y>
963 963 </hint>
964 964 </hints>
965 965 </connection>
966 966 </connections>
967 967 </ui>
General Comments 0
You need to be logged in to leave comments. Login now