plotter/qgpib_plotter.py

changeset 38
73bd2fe81005
parent 36
cb4124e3e75b
equal deleted inserted replaced
37:e0790756059d 38:73bd2fe81005
151 event.ignore() 151 event.ignore()
152 152
153 def openTriggered(self, checked=False): 153 def openTriggered(self, checked=False):
154 filenames = QtGui.QFileDialog.getOpenFileNames(self, "Open a HPGL file to display", '.', 'HPGL files (*.plt)\nAll files (*)') 154 filenames = QtGui.QFileDialog.getOpenFileNames(self, "Open a HPGL file to display", '.', 'HPGL files (*.plt)\nAll files (*)')
155 self.openFiles(filenames) 155 self.openFiles(filenames)
156 self.displayFirst()
157
158 def displayFirst(self):
156 if not self.plotsView.currentIndex().isValid(): 159 if not self.plotsView.currentIndex().isValid():
157 self.plotsView.setCurrentIndex(self.plotsView.model().index(0, 0)) 160 self.plotsView.setCurrentIndex(self.plotsView.model().index(0, 0))
158 161
159 def openFiles(self, filenames): 162 def openFiles(self, filenames):
163 ok = False
160 for filename in filenames: 164 for filename in filenames:
161 filename = str(filename) 165 filename = str(filename)
162 if os.path.exists(filename): 166 if os.path.exists(filename):
163 data = open(filename).read() 167 data = open(filename).read()
164 name = os.path.basename(filename) 168 name = os.path.basename(filename)
165 name = os.path.splitext(name)[0] 169 name = os.path.splitext(name)[0]
166 lst = self.plotsView.model().stringList() 170 lst = self.plotsView.model().stringList()
167 lst.append(name) 171 lst.append(name)
168 self._plots[name] = data 172 self._plots[name] = data
169 self.plotsView.model().setStringList(lst) 173 self.plotsView.model().setStringList(lst)
174 ok = True
175 return ok
170 176
171 def plotReceived(self, num): 177 def plotReceived(self, num):
172 self._receiving = False 178 self._receiving = False
173 self.setReceivingLed() 179 self.setReceivingLed()
174 plot, timestamp = self.captureThread.getPlot(num) 180 plot, timestamp = self.captureThread.getPlot(num)
325 dest="verbose", 331 dest="verbose",
326 help="Verbose mode",) 332 help="Verbose mode",)
327 333
328 options, argv = opt.parse_args(sys.argv) 334 options, argv = opt.parse_args(sys.argv)
329 335
330 if options.verbose:
331 sys.stderr.write('connection established\n')
332
333 a = QtGui.QApplication(argv) 336 a = QtGui.QApplication(argv)
334 w = QtHPGLPlotter() 337 w = QtHPGLPlotter()
335 files = [f for f in argv[1:] if os.path.isfile(f)] 338 files = [f for f in argv[1:] if os.path.isfile(f)]
336 files.sort(cmp=str_num_cmp) 339 files.sort(cmp=str_num_cmp)
337 w.openFiles(files) 340 if w.openFiles(files):
341 w.displayFirst()
342
338 w.show() 343 w.show()
339 a.exec_() 344 a.exec_()
340 345
341 if __name__ == '__main__': 346 if __name__ == '__main__':
342 main() 347 main()

mercurial