Simone wrote: >Hi all, I am new to python and trying to write a simple GUI that would >call 2 growisofs processes (dvd burning) at the same time, and retrive >the exit code to be printed on a text box (couldn't find any program >that could use multiple dvd burners, not even k3b). Excuse me if this is >really a simple problem, but two days of googling didn't help. > The program is really simple, I developed the GUI using glade and it >works. >The only thing I would like to improve is that I'd like it to show in >the text boxes messages like "Waiting for use input" or "Burning dvd >please wait", but it looks like even though I don't have any error, the >message won't show up until the burning process is finished (showing >either "burning successfully" or "an error occurred"). >I am not sure I made myself clear on this, but I will post the relevant >code trying to explain it: > >import os, sys >import gtk.glade > >class DVD: > > > def __init__(self): > print "Initializing the Graphic User Interface: This may take >some time" > self.xml=gtk.glade.XML("./dvd2.xml") > self.window=self.xml.get_widget("dvd") > self.xml.signal_connect('on_quit_clicked', self.Quit) > self.xml.signal_connect('on_burn_clicked', self.Burn) > >self.OrdKeys=["comboentry1","entry1","spinbutton1","entry2","esitotext","esitotext1"] > ># here esitotext is the box I want the text to show up > > > > def Quit(self, *args): > gtk.mainquit() > > def Burn(self, *args): > > comand="" > comand2="" > > name=self.xml.get_widget("entry1").get_text() #name >for the dvd > path=self.xml.get_widget("comboentry1").get_text() #path to >dvd AUDIO_TS and VIDEO_TS > num=self.xml.get_widget("spinbutton1").get_text() #chosing >the number of dvd to burn > pub=self.xml.get_widget("entry2").get_text() >#publisher > self.xml.get_widget("esitotext").set_text("Waiting for >input") # THIS NEVER SHOWS UP > > > dvd1="/dev/hda" # this is the first dvd >burner, edit as needed > dvd2="/dev/hdc" # this is the second dvd >burner, edit as needed > > > > comand+="growisofs -dvd-compat -Z "+dvd1+" -dvd-video -V >"+name+" -publisher "+pub+" "+path > comand2+="growisofs -dvd-compat -Z "+dvd2+" -dvd-video -V >"+name+" -publisher "+pub+" "+path > > > if num == "1": > self.xml.get_widget("esitotext").set_text("Burning the dvd, >please wait") # THIS NEVER SHOWS UP, unless i have an error and >the program > > # quits >before executing the command > self.xml.get_widget("esitotext").show() > # don't know if this is correct, >but it doesn't work either > f = os.popen(comand, 'r') > line = f.readline() > > error_in_prog = f.close() > if error_in_prog: > error=str(error_in_prog) > self.xml.get_widget("esitotext").set_text("An error >occurred. Burn not completed") # THIS COMES UP as it should > self.xml.get_widget("esitotext").show() > else: > self.xml.get_widget("esitotext").set_text("Burn >completed successfully") # THIS COMES UP as it should > self.xml.get_widget("esitotext").show() > > >if __name__=='__main__': > main=DVD() > gtk.main() > > >Any comment, help, url, really appreciated. > >Have a nice day >Simone > > > > >
-- http://mail.python.org/mailman/listinfo/python-list