Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import wx
- import wx.stc as stc
- class Vodka(wx.Frame):
- def __init__(self,parent,id):
- WINDOW_SIZE = (wx.DisplaySize()[0],wx.DisplaySize()[1]-40)
- wx.Frame.__init__(self,parent,id,"Vodka",size=(WINDOW_SIZE),pos=(30,100))
- self.panel = wx.Panel(self)
- self.Centre()
- self.text = stc.StyledTextCtrl(self.panel)
- self.text.SetWindowStyle(self.text.GetWindowStyle() | wx.DOUBLE_BORDER)
- self.text.StyleSetSpec(stc.STC_STYLE_DEFAULT, "size:10,face:Courier New")
- self.text.SetWrapMode(stc.STC_WRAP_WORD)
- m = wx.MenuBar()
- f = wx.Menu()
- f.Append(wx.ID_ANY,'New')
- f.Append(wx.ID_ANY,'Open...')
- f.AppendSeparator()
- f.Append(wx.ID_ANY,'Save')
- f.Append(wx.ID_ANY,'Save As...')
- f.AppendSeparator()
- f.Append(wx.ID_ANY,'Preferences...')
- f.AppendSeparator()
- f.Append(wx.ID_ANY,'Quit')
- ed = wx.Menu()
- ed.Append(wx.ID_ANY,'Undo')
- ed.Append(wx.ID_ANY,'Redo')
- ed.AppendSeparator()
- ed.Append(wx.ID_ANY,'Cut')
- ed.Append(wx.ID_ANY,'Copy')
- ed.Append(wx.ID_ANY,'Paste')
- ed.Append(wx.ID_ANY,'Select All')
- ed.AppendSeparator()
- ed.Append(wx.ID_ANY,'Find...')
- ed.Append(wx.ID_ANY,'Replace...')
- py = wx.Menu()
- g = wx.Menu()
- g.Append(wx.ID_ANY,'Default')
- g.AppendSeparator()
- g.Append(wx.ID_ANY,'Panel')
- g.Append(wx.ID_ANY,'Menu Bar')
- g.Append(wx.ID_ANY,'Toolbar')
- d = wx.Menu()
- d.Append(wx.ID_ANY,'Single-Choice Dialog')
- d.Append(wx.ID_ANY,'Message Dialog')
- d.Append(wx.ID_ANY,'Text-Entry Dialog')
- g.AppendSeparator()
- g.AppendMenu(wx.ID_ANY, '&Dialog', d)
- g.AppendSeparator()
- g.Append(wx.ID_ANY,'Static Text')
- g.Append(wx.ID_ANY,'Text Box')
- g.Append(wx.ID_ANY,'Button')
- g.Append(wx.ID_ANY,'Slider')
- g.Append(wx.ID_ANY,'Spin Control')
- g.Append(wx.ID_ANY,'List Box')
- g.Append(wx.ID_ANY,'Check Box')
- py.AppendMenu(wx.ID_ANY, '&GUI', g)
- py.AppendSeparator()
- py.Append(wx.ID_ANY,'Import')
- py.Append(wx.ID_ANY,'ID')
- py.Append(wx.ID_ANY,'Class')
- py.Append(wx.ID_ANY,'Function')
- py.Append(wx.ID_ANY,'Sizer')
- py.Append(wx.ID_ANY,'Conditional Statement')
- py.Append(wx.ID_ANY,'Event')
- py.Append(wx.ID_ANY,'Boilerplate')
- py.AppendSeparator()
- py.Append(wx.ID_ANY,'Dictionary')
- py.Append(wx.ID_ANY,'List')
- py.Append(wx.ID_ANY,'Tuple')
- py.AppendSeparator()
- py.Append(wx.ID_ANY,'Database Connectivity...')
- b = wx.Menu()
- b.Append(wx.ID_ANY,'Run Module')
- b.Append(wx.ID_ANY,'Compile')
- h = wx.Menu()
- h.Append(wx.ID_ANY,'About Vodka')
- h.AppendSeparator()
- h.Append(wx.ID_ANY,'Vodka Help')
- m.Append(f,'&File')
- m.Append(ed,'&Edit')
- m.Append(py,'&Python')
- m.Append(b,'&Build')
- m.Append(h,'&Help')
- self.SetMenuBar(m)
- self.sizer = wx.BoxSizer(wx.VERTICAL)
- self.sizer.Add(self.text, 1, wx.TOP | wx.EXPAND)
- self.panel.SetSizerAndFit(self.sizer)
- self.text.Bind(stc.EVT_STC_CHANGE, self.OnChange)
- self.Show()
- def OnChange(self, e):
- lines = self.text.GetLineCount()
- width = self.text.TextWidth(stc.STC_STYLE_LINENUMBER, str(lines)+" ")
- self.text.SetMarginWidth(0, width)
- if __name__=='__main__':
- app = wx.App()
- Vodka_Frame = Vodka(None,-1)
- Vodka_Frame.Show()
- app.MainLoop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement