#!/usr/bin/python import wx import ConfigParser import os #-c"MY_COMMAND" class MainFrame(wx.Frame): def __init__(self, parent, id, title): self.readcfg() wx.Frame.__init__(self, parent, id, title, (-1, -1), wx.Size(350, 300)) panel = wx.Panel(self, -1) sizer = wx.BoxSizer(wx.VERTICAL) # Mods mod = wx.StaticBox(panel, -1, 'Select a mod') mod_sizer = wx.StaticBoxSizer(mod) mods = ['default','cog'] panel.selectmod = wx.ComboBox(panel, -1, choices=mods, style=wx.CB_READONLY) mod_sizer.Add(panel.selectmod, 1) #Buttons buttons = wx.StaticBox(panel, -1, '') button_sizer = wx.StaticBoxSizer(buttons,) button_sizer.Add(wx.Button(panel, 1, 'Quit'),1, wx.ALIGN_BOTTOM) button_sizer.Add(wx.Button(panel, 2, 'About'),1, wx.ALIGN_BOTTOM) button_sizer.Add(wx.Button(panel, 3, 'Launch!'),1, wx.ALIGN_BOTTOM) #Netplay net= wx.StaticBox(panel, -1, 'Netplay') net_sizer = wx.StaticBoxSizer(net, wx.VERTICAL) net_sizer.Add(wx.CheckBox(panel, -1, 'Connect to Server')) net_sizer.Add(wx.CheckBox(panel, -1, 'Splitscreen')) panel.serverip =wx.TextCtrl(panel, -1, self.ip, size=(200, -1)) net_sizer.Add(panel.serverip) sizer.Add(mod_sizer, 1, wx.EXPAND) sizer.Add(net_sizer, 1, wx.EXPAND) sizer.Add(button_sizer, 0, wx.EXPAND) panel.SetSizer(sizer) self.Centre() self.Bind(wx.EVT_BUTTON, self.quit, id=1) self.Bind(wx.EVT_BUTTON, self.about, id=2) self.Bind(wx.EVT_BUTTON, self.launch, id=3) def readcfg(self): config = ConfigParser.ConfigParser() config.read('guslauncher.cfg') self.ip = config.get('MULTIPLAYER', 'ip') self.splitscreen= config.get('MULTIPLAYER', 'splitscreen') self.netplay=config.get('MULTIPLAYER', 'netplay') self.mods = [config.get('MODS','mods').split(',')] self.moddirs = [config.get('MODS','moddirs').split(',')] print self.ip, self.splitscreen, self.netplay, self.mods, self.moddirs def quit(self, event): self.Close(True) def launch(self, launch): os.system('gusanos -c connect',()) def about(self, about): popup = wx.MessageDialog(self, 'Gusanos Launcher by mots\n' 'Version 0.1\n\n' 'visit #liero on irc.quakenet.org for more information', 'About', wx.OK | wx.ICON_INFORMATION) popup.ShowModal() popup.Destroy() class App(wx.App): def OnInit(self): frame = MainFrame(None, -1, 'Gusanos Launcher') frame.Show(True) return True app = App(0) app.MainLoop()