From: <iwa...@us...> - 2003-08-06 08:34:02
|
Update of /cvsroot/quickrip/quickrip/gtk In directory sc8-pr-cvs1:/tmp/cvs-serv4734 Modified Files: gtkmain.py Log Message: Scan working with language and subtitle settings. Index: gtkmain.py =================================================================== RCS file: /cvsroot/quickrip/quickrip/gtk/gtkmain.py,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** gtkmain.py 6 Aug 2003 05:27:19 -0000 1.14 --- gtkmain.py 6 Aug 2003 08:33:57 -0000 1.15 *************** *** 18,25 **** gnome.init("quickrip", "1.0") except: ! print "Couldn't load PyGTK module! Check it's installed properly." ! print "If you think it is, but you still get this message, please" ! print "see the frequent problems page online at:" ! print "http://quickrip.sf.net/fp.shtml" print "" print "Press Enter for the full GTK error message" --- 18,23 ---- gnome.init("quickrip", "1.0") except: ! print "Couldn't load some required modules!" ! print "Check to see that PyGTK and Glade are installed properly." print "" print "Press Enter for the full GTK error message" *************** *** 60,66 **** self.hideRip() self.hideScan() - - #wtf?? - # self.langs = {} self.scanDVD() --- 58,61 ---- *************** *** 109,117 **** check.connect("toggled", self.toggle) column1 = gtk.TreeViewColumn("Track", cell, text=0) ! column2 = gtk.TreeViewColumn("Time (h:m:s)", cell, text=1) column3 = gtk.TreeViewColumn("Language", cell, text=2) column4 = gtk.TreeViewColumn("Subtitles", cell, text=3) ! column45 = gtk.TreeViewColumn("Result Size", cell, text=6) ! column5 = gtk.TreeViewColumn("Rip?", check, active=4) column1.set_resizable(gtk.TRUE) column2.set_resizable(gtk.TRUE) --- 104,112 ---- check.connect("toggled", self.toggle) column1 = gtk.TreeViewColumn("Track", cell, text=0) ! column2 = gtk.TreeViewColumn("Time (H:M:S)", cell, text=1) column3 = gtk.TreeViewColumn("Language", cell, text=2) column4 = gtk.TreeViewColumn("Subtitles", cell, text=3) ! column45 = gtk.TreeViewColumn("Projected Size", cell, text=6) ! column5 = gtk.TreeViewColumn("Process", check, active=4) column1.set_resizable(gtk.TRUE) column2.set_resizable(gtk.TRUE) *************** *** 120,130 **** column45.set_resizable(gtk.TRUE) column5.set_resizable(gtk.FALSE) ! # column1.set_min_width(40) ! # column2.set_min_width(90) ! # column3.set_min_width(90) ! # column4.set_min_width(90) ! # column45.set_min_width(90) ! column5.set_min_width(40) ! column5.set_max_width(40) self.tree.append_column(column1) self.tree.append_column(column2) --- 115,120 ---- column45.set_resizable(gtk.TRUE) column5.set_resizable(gtk.FALSE) ! column5.set_min_width(20) ! column5.set_max_width(20) self.tree.append_column(column1) self.tree.append_column(column2) *************** *** 135,144 **** def rowChange(self, widget, data=None): ! # self.model, self.modeliter = "", "" ! # selected = gtk.TreeSelection() ! selected = self.tree.get_selection() ! (self.model, self.modelIter) = selected.get_selected()#self.model, self.modelIter) ! track = self.model.get_value(self.modelIter, 5) adj = self.sAudio.get_adjustment() adj.value = float(track['abr']) --- 125,137 ---- def rowChange(self, widget, data=None): ! self.inRowChange = "true" selected = self.tree.get_selection() ! (self.model, self.modelIter) = selected.get_selected() ! newtrack = self.model.get_value(self.modelIter, 5) ! if newtrack != self.oldtrack: ! self.oldtrack = newtrack ! else: ! return ! track = newtrack adj = self.sAudio.get_adjustment() adj.value = float(track['abr']) *************** *** 147,150 **** --- 140,158 ---- self.updateSize() + list = [] + for language in track['alangs']: + (short, long) = language + list.append(long) + self.comboLang.set_popdown_strings(list) + self.comboLang.entry.set_text(config.langs[track['alang']]) + + list = []#["Not Specified"] + for language in track['slangs']: + (short, long) = language + list.append(long) + self.comboSub.set_popdown_strings(list) + self.comboSub.entry.set_text(config.langs[track['slang']]) + self.inRowChange = "false" + def updateSize(self): track = self.model.get_value(self.modelIter, 5) *************** *** 173,178 **** --- 181,211 ---- track['abr'] = ival self.updateSize() + + def languageSelect(self, widget, data=None): + if self.inRowChange == "true": # gotta ignore the message sent by + return # rowChange above, restoring defaults + thetext = self.comboLang.entry.get_text() + self.model.set_value(self.modelIter, 2, thetext) + track = self.model.get_value(self.modelIter, 5) + for language in track['alangs']: + (short, long) = language + if long == thetext: + track['alang'] = short + return + + def subtitleSelect(self, widget, data=None): + if self.inRowChange == "true": # gotta ignore the message sent by + return # rowChange above, restoring defaults + thetext = self.comboSub.entry.get_text() + self.model.set_value(self.modelIter, 3, thetext) + track = self.model.get_value(self.modelIter, 5) + for language in track['slangs']: + (short, long) = language + if long == thetext: + track['slang'] = short + return def __init__(self): + self.oldtrack = None xml = gtk.glade.XML('glade/gtkmain.glade') self.window = xml.get_widget('window') *************** *** 187,190 **** --- 220,225 ---- self.sVideo = xml.get_widget('scaleVideo') self.lSize = xml.get_widget('labelSize') + self.comboLang = xml.get_widget('comboLanguage') + self.comboSub = xml.get_widget('comboSubtitles') xml.signal_autoconnect( {'on_window_delete_event': self.quit} ) *************** *** 199,202 **** --- 234,239 ---- xml.signal_autoconnect( {'on_audio_moved': self.slideAudio} ) xml.signal_autoconnect( {'on_video_moved': self.slideVideo} ) + xml.signal_autoconnect( {'on_lang_changed': self.languageSelect} ) + xml.signal_autoconnect( {'on_subs_changed': self.subtitleSelect} ) self.initTree() *************** *** 404,408 **** def int_dispTitle(self, track): - print "display track" if self.modelIter == None: self.modelIter = self.model.insert_before(None, None) --- 441,444 ---- *************** *** 414,426 **** # model.set_value(i, 2, "third") # model.set_value(i, 3, "forth") # i = model.append(i, None) length = "" ! length += str(track['time'] / 3600) + ":" ! length += str((track['time'] % 3600) / 60) + ":" length += str(track['time'] % 60) self.model.set_value(self.modelIter, 0, track['name']) self.model.set_value(self.modelIter, 1, length) self.model.set_value(self.modelIter, 4, gtk.FALSE) self.model.set_value(self.modelIter, 5, track) def int_finishScanning(self): --- 450,470 ---- # model.set_value(i, 2, "third") # model.set_value(i, 3, "forth") + # this will nest a child and i will point to the child # i = model.append(i, None) length = "" ! if track['time'] >= 3600: ! length += str(track['time'] / 3600) + ":" ! if track['time'] >= 60: ! length += str((track['time'] % 3600) / 60) + ":" length += str(track['time'] % 60) + + track['slangs'].insert(0, [" ", "Not Specified"]) self.model.set_value(self.modelIter, 0, track['name']) self.model.set_value(self.modelIter, 1, length) + self.model.set_value(self.modelIter, 2, config.langs[track['alang']]) + self.model.set_value(self.modelIter, 3, config.langs[track['slang']]) self.model.set_value(self.modelIter, 4, gtk.FALSE) self.model.set_value(self.modelIter, 5, track) + self.updateSize() def int_finishScanning(self): |