rendered paste body#!/usr/bin/pythonimport wximport ConfigParserimport osfrom wxPython.lib.dialogs import wxScrolledMessageDialogclass Mainframe(wx.Frame): def __init__(self, parent, id, title): self.readconfig() wx.Frame.__init__(self, parent, id, title, wx.DefaultPosition, (550, 350)) self.panel = wx.Panel(self, -1) self.isdownloading=False self.startbutton = wx.BitmapButton(self.panel, -1, wx.Bitmap('icons/'+self.iconset+'/start.png'), style = wx.BU_EXACTFIT) self.addbutton = wx.BitmapButton(self.panel, -1, wx.Bitmap('icons/'+self.iconset+'/add.png'), style = wx.BU_EXACTFIT) self.pastebutton = wx.BitmapButton(self.panel, -1, wx.Bitmap('icons/'+self.iconset+'/paste.png'), style = wx.BU_EXACTFIT) self.logbutton = wx.BitmapButton(self.panel, -1, wx.Bitmap('icons/'+self.iconset+'/log.png'), style = wx.BU_EXACTFIT) self.settingsbutton = wx.BitmapButton(self.panel, -1, wx.Bitmap('icons/'+self.iconset+'/settings.png'), style = wx.BU_EXACTFIT) self.infobutton = wx.BitmapButton(self.panel, -1, wx.Bitmap('icons/'+self.iconset+'/info.png'), style = wx.BU_EXACTFIT) # self.startbutton = wx.BitmapButton(self.panel, 'Start Download!', wx.Bitmap('icons/'+self.iconset+'/start.png'), style = wx.BU_EXACTFIT)# self.addbutton = wx.BitmapButton(self.panel, 'Add Links', wx.Bitmap('icons/'+self.iconset+'/add.png'), style = wx.BU_EXACTFIT)# self.pastebutton = wx.BitmapButton(self.panel, 'Paste Links', wx.Bitmap('icons/'+self.iconset+'/paste.png'), style = wx.BU_EXACTFIT)# self.logbutton = wx.BitmapButton(self.panel, 'Show Log', wx.Bitmap('icons/'+self.iconset+'/log.png'), style = wx.BU_EXACTFIT)# self.settingsbutton = wx.BitmapButton(self.panel, 'Change Settings', wx.Bitmap('icons/'+self.iconset+'/settings.png'), style = wx.BU_EXACTFIT)# self.infobutton = wx.BitmapButton(self.panel, 'Info', wx.Bitmap('icons/'+self.iconset+'/info.png'), style = wx.BU_EXACTFIT) self.listbox = wx.ListBox(self.panel, 0, choices=links) self.gauge = wx.Gauge(self.panel, size = (-1,15)) self.gauge.SetValue(10) self.Bind(wx.EVT_CLOSE, self.quit) self.Bind(wx.EVT_BUTTON, self.addlinks, self.addbutton) self.Bind(wx.EVT_BUTTON, self.settings, self.settingsbutton) self.Bind(wx.EVT_BUTTON, self.startbuttonpress, self.startbutton) self.Bind(wx.EVT_BUTTON, self.showlog, self.logbutton) self.layoutstuff() def layoutstuff(self): mainsizer = wx.BoxSizer(wx.VERTICAL) subsizer = wx.BoxSizer(wx.VERTICAL) buttonsizer = wx.GridSizer(rows=1,hgap=5) buttonsizer.Add(self.startbutton) buttonsizer.Add(self.addbutton) buttonsizer.Add(self.pastebutton) buttonsizer.Add(self.logbutton) buttonsizer.Add(self.settingsbutton) buttonsizer.Add(self.infobutton) subsizer.Add(self.listbox,1, wx.EXPAND) subsizer.Add(self.gauge,0, wx.EXPAND) mainsizer.Add(buttonsizer,0,wx.TOP) mainsizer.Add(subsizer,1, wx.EXPAND) self.panel.SetSizer(mainsizer) def addlinks(self,event): dialog = LinkDialog(self, -1, 'Adding Links...') dialog.ShowModal() dialog.Destroy() self.listbox.SetItems(links) self.writedllist() def writedllist(self): dlfile = open('dllist', 'w') for line in links: dlfile.write(line + "\n") dlfile.close() def updateicons(self): if self.isdownloading==True: self.startbutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/stop.png')) else: self.startbutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/start.png')) self.addbutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/add.png')) self.pastebutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/paste.png')) self.logbutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/log.png')) self.settingsbutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/settings.png')) self.infobutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/info.png')) def settings(self,event): settingsdialog=wx.GetSingleChoice('Available Iconsets:', 'Please choose an Iconset!', self.iconsets) if settingsdialog!='': self.iconset=settingsdialog self.updateicons() def readconfig(self): self.iconsets = os.listdir('./icons') config = ConfigParser.ConfigParser() config.read('tuxl33ch.cfg') self.iconset = config.get('APPEARANCE', 'iconset') self.logpath = config.get('GENERAL', 'log_path') self.tlpath = config.get('GENERAL', 'tuxload_path') dlfile = open('dllist', 'r') global links #links = dlfile.readlines() links=[l.rstrip() for l in dlfile.readlines()] dlfile.close() def showlog(self,event): logfile=open(self.logpath, 'r') log=logfile.readlines() dlg = wxScrolledMessageDialog(self, ''.join(log) , 'Log') dlg.ShowModal() logfile.close() def startbuttonpress(self,event): if self.isdownloading==True: self.isdownloading = False self.startbutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/start.png')) self.stopdl() else: self.isdownloading = True self.startbutton.SetBitmapLabel(wx.Bitmap('icons/'+self.iconset+'/stop.png')) self.startdl() def stopdl(self): print 'Stopping TuxLoad...' def startdl(self): print 'Starting TuxLoad...' os.popen2(self.tlpath+' -l ./dllist') #os.system(self.tlpath+' -l ./dllist') def writeconfig(self): config = ConfigParser.ConfigParser() config.read('tuxl33ch.cfg') config.set('APPEARANCE', 'iconset',self.iconset) config.write(open('tuxl33ch.cfg', 'w')) def quit(self,event): self.writeconfig() self.Destroy() class LinkDialog(wx.Dialog): def __init__(self, parent, id, title): wx.Dialog.__init__(self, parent, id, title, size=(350,300)) sizer = self.CreateTextSizer('Please enter/paste some links') ver_sizer = wx.BoxSizer(wx.VERTICAL) hor_sizer = wx.BoxSizer(wx.HORIZONTAL) self.textctrl = wx.TextCtrl(self, style = wx.TE_MULTILINE) self.commenttext = wx.StaticText(self, -1, 'RAR-Password/other comments:', (20,20)) self.commentctrl = wx.TextCtrl(self) self.okbutton = wx.Button(self, id=wx.ID_OK) self.cancelbutton = wx.Button(self, id=wx.ID_CANCEL) hor_sizer.Add(self.cancelbutton) hor_sizer.Add(self.okbutton) ver_sizer.Add(self.textctrl, 1, wx.EXPAND) ver_sizer.Add(self.commenttext) ver_sizer.Add(self.commentctrl, 0, wx.EXPAND) ver_sizer.Add(hor_sizer) sizer.Add(ver_sizer, 1, wx.EXPAND) self.SetSizer(sizer) self.Bind(wx.EVT_BUTTON, self.on_ok, self.okbutton) def on_ok(self,event): global links for i in range(self.textctrl.GetNumberOfLines()): links += self.textctrl.GetLineText(i) print links #links += self.textctrl.GetString.Split('\n') self.Destroy() class TuxL33ch(wx.App): def OnInit(self): frame = Mainframe(None, -1, 'TuxL33ch') frame.Centre() frame.Show(True) return Trueapp = TuxL33ch(0)app.MainLoop()