From: <te...@us...> - 2003-07-14 18:28:46
|
Update of /cvsroot/quickrip/quickrip In directory sc8-pr-cvs1:/tmp/cvs-serv2404 Modified Files: gui.py Log Message: Merged in lots of changes to link up new UI files (see guimain.py-1.2 and guisettings.py-1.5 changelogs for details) plus some other small changes here and there to clean things up. Index: gui.py =================================================================== RCS file: /cvsroot/quickrip/quickrip/gui.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** gui.py 6 Jun 2003 18:07:30 -0000 1.10 --- gui.py 14 Jul 2003 18:28:43 -0000 1.11 *************** *** 1,3 **** ! #!/usr/bin/env python """ --- 1,3 ---- ! #!/usr/bin/env python """ *************** *** 133,137 **** self.Dialogue.pm_videoPass2.setProgress(-1) self.Dialogue.rippingXofY.setText("Ripping " + name + " (" + str(number) + " of " + str(total) + ")") ! def int_newPass(self, passtype): self.passtype = passtype --- 133,137 ---- self.Dialogue.pm_videoPass2.setProgress(-1) self.Dialogue.rippingXofY.setText("Ripping " + name + " (" + str(number) + " of " + str(total) + ")") ! def int_newPass(self, passtype): self.passtype = passtype *************** *** 142,148 **** ! def int_updateProgress(self, perc, tpass): self.percentage = perc self.tpass = tpass if self.tpass is "all": self.Dialogue.pm_audioPass.setProgress(int(perc)) --- 142,150 ---- ! def int_updateProgress(self, perc, trem, tpass): self.percentage = perc + self.trem = trem self.tpass = tpass + self.Dialogue.ETA.setText(str(trem)) if self.tpass is "all": self.Dialogue.pm_audioPass.setProgress(int(perc)) *************** *** 172,215 **** - def updateTrack(self, track, mode = "none"): - """Update track's attributes from GUI""" - if not len(self.tracks):# == 0: - return - - # Get track - self.track = track - try: - checker = self.track.info['vbr'] - del checker - except: - self.track = self.dvdTracks.selectedItem() - - if not self.track: - return - - # Add/remove "rip" status to/from track - self.mode = mode - if self.mode is "remove": - self.track.info['rip'] = "no" - elif self.mode is "add": - self.track.info['rip'] = "yes" - - self.track.info['size'] = str(self.fileSize.text()) - if self.track.info['size'] is "0": - self.track.info['size'] = "1" - self.track.info['abr_id'] = self.audioBitRate.currentItem() - self.track.info['abr'] = str(self.audioBitRate.text(self.track.info['abr_id'])) - - self.track.info['vbr'] = self.calcRate(self.track.info['time'], self.track.info['abr'], self.track.info['size']) - - self.updateTrackDisplay(self.item) - - def selectTrack(self, const, qpoint, col): ! """Select tracks to rip by setting column 2 to 'yes'""" # Check the mouse isn't clicking in blank space ! self.item = self.dvdTracks.selectedItem() try: ! checker = self.item.text(0) del checker except: --- 174,183 ---- def selectTrack(self, const, qpoint, col): ! """Select tracks to rip by setting column 2 to 'yes'""" # Check the mouse isn't clicking in blank space ! self.track = self.dvdTracks.selectedItem() try: ! checker = self.track.text(0) del checker except: *************** *** 218,261 **** # Check if the user has clicked on a title or a chapter chap = re.compile('Chapter.*') ! if not chap.search(str(self.item.text(0))): ! # Stop short of tagging for ripping unless "Rip?" column is selected if col is not 2: ! self.item.vbr = self.calcRate(self.item.info['time'], self.item.info['abr'], self.item.info['size']) ! self.updateTrackDisplay(self.item) return ! ! if self.item.info['rip'] is "yes": ! self.item.setPixmap(2, self.image_blank) ! self.updateTrack(self.item, mode="remove") else: ! self.item.setPixmap(2, self.image_tick) ! self.updateTrack(self.item, mode="add") ! ! ! # If the selected item is a title, recurse through chapters ! # and (de)select all of them ! # if chap.search(str(self.item.text(0))): ! # pass ! # else: ! # child = self.item.firstChild() ! # for i in range(self.item.numchapters): ! # if str(self.item.text(2)) == "yes": ! # child.setText(2, self.tr("yes")) ! # else: ! # child.setText(2, self.tr("")) ! # child = child.nextSibling() ! ! self.checkEnableRip() def updateTrackDisplay(self, track): self.track = track ! self.track.info['name'] = str(self.track.text(0)) ! self.trackLabel.setText("Settings for track: " + self.track.info['name']) ! self.fileSize.setText(str(self.track.info['size'])) ! self.audioBitRate.setCurrentItem(self.track.info['abr_id']) ! self.videoBitRate.setText(str(int(self.track.info['vbr']))) def renameTrack(self, item): --- 186,260 ---- # Check if the user has clicked on a title or a chapter chap = re.compile('Chapter.*') ! if not chap.search(str(self.track.text(0))): ! # Stop short of tagging for ripping unless "Rip" column is selected if col is not 2: ! self.updateTrackDisplay(self.track) return ! if self.track.info['rip'] is "yes": ! self.track.setPixmap(2, self.image_blank) ! self.updateTrackRip(self.track, mode="remove") else: ! self.track.setPixmap(2, self.image_tick) ! self.updateTrackRip(self.track, mode="add") ! self.checkEnableRip() def updateTrackDisplay(self, track): self.track = track ! if abs(int(str(self.fileSize.cleanText())) - self.track.info['size']) > 1: ! self.fileSize.setValue(self.track.info['size']) ! if abs(self.audioBitRate.currentItem() - self.track.info['abr_id']) > 1: ! self.audioBitRate.setCurrentItem(self.track.info['abr_id']) ! self.track.info['abr'] = self.audioBitRate.currentText() ! if abs(int(str(self.videoBitRate.cleanText())) - self.track.info['vbr']) > 1: ! self.videoBitRate.setValue(self.track.info['vbr']) ! self.videoBitRateSlider.setValue(self.track.info['vbr']) ! def updateTrackRip(self, track, mode): ! """Update track's rip attribute""" ! if not len(self.tracks): ! return ! # Add/remove "rip" status to/from track ! self.mode = mode ! if self.mode is "remove": ! self.track.info['rip'] = "no" ! elif self.mode is "add": ! self.track.info['rip'] = "yes" ! self.updateTrackDisplay(self.track) ! ! def newFileSize(self, filesize): ! self.track = self.dvdTracks.selectedItem() ! self.filesize = int(str(self.fileSize.cleanText())) ! self.track.info['size'] = int(self.filesize) ! self.track.info['vbr'] = self.calcRate(self.track.info['time'], self.track.info['abr'], self.track.info['size']) ! #print "new file size, changing video bitrate to %s (size: %s, length %s, abr %s)" % (self.track.info['vbr'], self.track.info['size'], self.track.info['time'], self.track.info['abr']) ! self.updateTrackDisplay(self.track) ! ! def newBitrate(self, bitrate): ! self.track = self.dvdTracks.selectedItem() ! self.bitrate = int(str(self.videoBitRate.cleanText())) ! self.track.info['vbr'] = self.bitrate ! self.track.info['size'] = self.calcFileSize(self.track.info['time'], self.track.info['abr'], self.track.info['vbr']) ! #print "new bitrate, changing file size to %s (vbr: %s, length %s, abr %s)" % (self.track.info['size'],self.track.info['vbr'], self.track.info['time'], self.track.info['abr']) ! self.updateTrackDisplay(self.track) + def newAudioBitrate(self, bitrate): + self.track = self.dvdTracks.selectedItem() + self.audiobitrate = int(str(self.audioBitRate.currentText())) + print self.audiobitrate + self.track.info['abr'] = self.audiobitrate + self.track.info['vbr'] = self.calcRate(self.track.info['time'], self.track.info['abr'], self.track.info['size']) + self.updateTrackDisplay(self.track) + def checkEnableRip(self): + r = str(self.videoBitRate.cleanText()) + o = str(self.outputDir.text()) + t = 0 + for track in self.tracks: + if track['rip'] is "yes": + t = 1 + if len(r) > 0 and len(o) > 0 and t is 1: + self.b_RipDVD.setEnabled(1) + else: + self.b_RipDVD.setEnabled(0) def renameTrack(self, item): *************** *** 277,292 **** self.checkEnableRip() - def checkEnableRip(self): - r = str(self.videoBitRate.text()) - o = str(self.outputDir.text()) - t = 0 - for track in self.tracks: - if track['rip'] is "yes": - t = 1 - if len(r) > 0 and len(o) > 0 and t is 1: - self.b_RipDVD.setEnabled(1) - else: - self.b_RipDVD.setEnabled(0) - def openRipDialogue(self): #qr_dir = "/usr/share/quickrip" --- 276,279 ---- *************** *** 349,352 **** --- 336,340 ---- def openSettingsDialogue(self): + """Open the settings dialogue box, connecting slots to functions""" self.Dialogue = dialogSettings(self) # Set-up defauls from config file *************** *** 361,368 **** --- 349,392 ---- self.Dialogue.c_pdamode.setChecked(1) # Connect functions + self.connect(self.Dialogue.b_browseMPlayer,SIGNAL("clicked()"),self.browseMPlayer) + self.connect(self.Dialogue.b_browseMencoder,SIGNAL("clicked()"),self.browseMencoder) + self.connect(self.Dialogue.b_browseTcprobe,SIGNAL("clicked()"),self.browseTcprobe) self.connect(self.Dialogue.b_selectOutputDir,SIGNAL("clicked()"),self.selectOutDir) self.connect(self.Dialogue.b_OK,SIGNAL("clicked()"),self.changeSettings) self.connect(self.Dialogue.b_Save,SIGNAL("clicked()"),self.saveSettings) self.Dialogue.exec_loop() + + def browseMPlayer(self): + """Launch file dialogue and set path to MPlayer""" + self.path = re.compile('(/.*)/.*').search(self.config['mplayer']).group(1) + mplayer = QFileDialog.getOpenFileName( + self.path, \ + "*", \ + self, \ + "open file dialog", \ + "Choose path to MPlayer") + self.Dialogue.mplayer.setText(str(mplayer)) + + def browseMencoder(self): + """Launch file dialogue and set path to Mencoder""" + self.path = re.compile('(/.*)/.*').search(self.config['mencoder']).group(1) + mencoder = QFileDialog.getOpenFileName( + self.path, \ + "*", \ + self, \ + "open file dialog", \ + "Choose path to Mencoder") + self.Dialogue.mencoder.setText(str(mencoder)) + + def browseTcprobe(self): + """Launch file dialogue and set path to Tcprobe""" + self.path = re.compile('(/.*)/.*').search(self.config['tcprobe']).group(1) + mplayer = QFileDialog.getOpenFileName( + self.path, \ + "*", \ + self, \ + "open file dialog", \ + "Choose path to Tcprobe") + self.Dialogue.tcprobe.setText(str(tcprobe)) def selectOutDir(self): |