Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import wx
- import wx.xrc
- import os
- import bs4
- class MyFrame1(wx.Frame):
- def __init__(self, parent):
- wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=wx.EmptyString, pos=wx.DefaultPosition,
- size=wx.Size(500, 400), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
- self.request = []
- self.SetSizeHints(wx.DefaultSize, wx.DefaultSize)
- bSizer1 = wx.BoxSizer(wx.VERTICAL)
- bSizer2 = wx.BoxSizer(wx.HORIZONTAL)
- self.m_staticText2 = wx.StaticText(self, wx.ID_ANY, u"Select the command:", wx.DefaultPosition, wx.DefaultSize,
- 0)
- self.m_staticText2.Wrap(-1)
- bSizer2.Add(self.m_staticText2, 0, wx.ALL, 5)
- self.general_dict = {}
- m_choice4Choices = []
- a = 0
- for x in os.listdir(os.getcwd() + '/commands'):
- m_choice4Choices.append(self.Name(a))
- a += 1
- self.m_choice4 = wx.Choice(self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, m_choice4Choices, 0)
- self.m_choice4.SetSelection(0)
- bSizer2.Add(self.m_choice4, 1, wx.BOTTOM | wx.RIGHT | wx.LEFT, 5)
- bSizer1.Add(bSizer2, 0, wx.EXPAND, 5)
- panel = wx.Panel(self)
- bSizer3 = wx.BoxSizer(wx.HORIZONTAL)
- fgs = wx.FlexGridSizer(self.proprieties(), 2, 10, 10)
- self.m_staticText = []
- self.m_textCtrl = []
- a = 0
- for x in self.request:
- self.m_staticText.append(wx.StaticText(panel, label=x['name']))
- self.m_textCtrl.append(wx.TextCtrl(panel))
- fgs.AddMany([self.m_staticText[a], (self.m_textCtrl[a], wx.EXPAND)])
- a += 1
- bSizer3.Add(fgs, proportion=2, flag=wx.ALL | wx.EXPAND, border=5)
- panel.SetSizerAndFit(bSizer3)
- bSizer1.Add(bSizer3)
- self.SetSizer(bSizer1)
- self.Layout()
- self.Bind(wx.EVT_CLOSE,self.OnClose)
- self.Centre(wx.BOTH)
- def OnClose(self,event):
- event.Skip()
- self.Destroy()
- return 3
- def __del__(self):
- pass
- def Name(self, number):
- filez = os.listdir(os.getcwd() + '/commands')
- files = open(os.getcwd() + '/commands/' + filez[number], 'r')
- file = bs4.BeautifulSoup(files.read(), 'lxml')
- self.general_dict[str(file.data.command_name.string)] = str(filez[number])
- return str(file.data.command_name.string)
- def proprieties(self):
- file = open(os.getcwd() + '/commands/' + str(self.general_dict[self.m_choice4.GetStringSelection()]))
- com = bs4.BeautifulSoup(file.read(), 'lxml')
- self.request = []
- for x in com.data.optional.find_all('text'):
- try:
- self.request.append({'name': x['name'], 'times': x['number']})
- except KeyError as Argument:
- if Argument == 'name':
- self.request.append({'name': 'Unspecified', 'times': x['number']})
- if Argument == 'number':
- self.request.append({'name': x['name'], 'times': 'Unspecified'})
- return len(self.request) + 1
- class MyFrame2(wx.Frame):
- def __init__(self, parent):
- wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=wx.EmptyString, pos=wx.DefaultPosition,
- size=wx.Size(500, 300), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
- self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize)
- bSizer3 = wx.BoxSizer(wx.VERTICAL)
- self.m_filePicker1 = wx.FilePickerCtrl(self, wx.ID_ANY, wx.EmptyString, u"Select a file", u"*.*",
- wx.DefaultPosition, wx.DefaultSize, wx.FLP_DEFAULT_STYLE)
- bSizer3.Add(self.m_filePicker1, 0, wx.ALL | wx.EXPAND, 5)
- self.m_button2 = wx.Button(self, wx.ID_ANY, u"IMPORT", wx.DefaultPosition, wx.DefaultSize, 0)
- bSizer3.Add(self.m_button2, 0, wx.ALL | wx.EXPAND, 5)
- self.m_staticText3 = wx.StaticText(self, wx.ID_ANY, u"IMPORTED FILES:", wx.DefaultPosition, wx.DefaultSize, 0)
- self.m_staticText3.Wrap(-1)
- bSizer3.Add(self.m_staticText3, 0, wx.ALL | wx.EXPAND, 5)
- self.m_staticText4 = wx.StaticText(self, wx.ID_ANY, u"MyLabel", wx.DefaultPosition, wx.DefaultSize, 0)
- self.m_staticText4.Wrap(-1)
- bSizer3.Add(self.m_staticText4, 1, wx.ALL | wx.EXPAND, 5)
- self.SetSizer(bSizer3)
- self.Layout()
- self.Centre(wx.BOTH)
- # Connect Events
- self.m_button2.Bind(wx.EVT_BUTTON, self.Import)
- def __del__(self):
- pass
- # Virtual event handlers, overide them in your derived class
- def Import(self, event):
- event.Skip()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement