Advertisement
Guest User

wxpython ide vodka 8012013 vjg

a guest
Jan 7th, 2013
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.49 KB | None | 0 0
  1. import wx
  2. import wx.stc as stc
  3.  
  4. class Vodka(wx.Frame):
  5.   def __init__(self,parent,id):
  6.       WINDOW_SIZE = (wx.DisplaySize()[0],wx.DisplaySize()[1]-40)
  7.       wx.Frame.__init__(self,parent,id,"Vodka",size=(WINDOW_SIZE),pos=(30,100))
  8.       self.panel = wx.Panel(self)
  9.       self.Centre()
  10.  
  11.       self.text = stc.StyledTextCtrl(self.panel)
  12.       self.text.SetWindowStyle(self.text.GetWindowStyle() | wx.DOUBLE_BORDER)
  13.  
  14.       self.text.StyleSetSpec(stc.STC_STYLE_DEFAULT, "size:10,face:Courier New")
  15.       self.text.SetWrapMode(stc.STC_WRAP_WORD)        
  16.  
  17.       m = wx.MenuBar()
  18.       f = wx.Menu()
  19.       f.Append(wx.ID_ANY,'New')
  20.       f.Append(wx.ID_ANY,'Open...')
  21.       f.AppendSeparator()
  22.       f.Append(wx.ID_ANY,'Save')
  23.       f.Append(wx.ID_ANY,'Save As...')
  24.       f.AppendSeparator()
  25.       f.Append(wx.ID_ANY,'Preferences...')
  26.       f.AppendSeparator()
  27.       f.Append(wx.ID_ANY,'Quit')
  28.       ed = wx.Menu()
  29.       ed.Append(wx.ID_ANY,'Undo')
  30.       ed.Append(wx.ID_ANY,'Redo')
  31.       ed.AppendSeparator()
  32.       ed.Append(wx.ID_ANY,'Cut')
  33.       ed.Append(wx.ID_ANY,'Copy')
  34.       ed.Append(wx.ID_ANY,'Paste')
  35.       ed.Append(wx.ID_ANY,'Select All')
  36.       ed.AppendSeparator()
  37.       ed.Append(wx.ID_ANY,'Find...')
  38.       ed.Append(wx.ID_ANY,'Replace...')
  39.       py = wx.Menu()
  40.       g = wx.Menu()
  41.       g.Append(wx.ID_ANY,'Default')
  42.       g.AppendSeparator()
  43.       g.Append(wx.ID_ANY,'Panel')
  44.       g.Append(wx.ID_ANY,'Menu Bar')
  45.       g.Append(wx.ID_ANY,'Toolbar')
  46.       d = wx.Menu()
  47.       d.Append(wx.ID_ANY,'Single-Choice Dialog')
  48.       d.Append(wx.ID_ANY,'Message Dialog')
  49.       d.Append(wx.ID_ANY,'Text-Entry Dialog')
  50.       g.AppendSeparator()
  51.       g.AppendMenu(wx.ID_ANY, '&Dialog', d)
  52.       g.AppendSeparator()
  53.       g.Append(wx.ID_ANY,'Static Text')
  54.       g.Append(wx.ID_ANY,'Text Box')
  55.       g.Append(wx.ID_ANY,'Button')
  56.       g.Append(wx.ID_ANY,'Slider')
  57.       g.Append(wx.ID_ANY,'Spin Control')
  58.       g.Append(wx.ID_ANY,'List Box')
  59.       g.Append(wx.ID_ANY,'Check Box')
  60.       py.AppendMenu(wx.ID_ANY, '&GUI', g)
  61.       py.AppendSeparator()
  62.       py.Append(wx.ID_ANY,'Import')
  63.       py.Append(wx.ID_ANY,'ID')
  64.       py.Append(wx.ID_ANY,'Class')
  65.       py.Append(wx.ID_ANY,'Function')
  66.       py.Append(wx.ID_ANY,'Sizer')
  67.       py.Append(wx.ID_ANY,'Conditional Statement')
  68.       py.Append(wx.ID_ANY,'Event')
  69.       py.Append(wx.ID_ANY,'Boilerplate')
  70.       py.AppendSeparator()
  71.       py.Append(wx.ID_ANY,'Dictionary')
  72.       py.Append(wx.ID_ANY,'List')
  73.       py.Append(wx.ID_ANY,'Tuple')
  74.       py.AppendSeparator()
  75.       py.Append(wx.ID_ANY,'Database Connectivity...')
  76.       b = wx.Menu()
  77.       b.Append(wx.ID_ANY,'Run Module')
  78.       b.Append(wx.ID_ANY,'Compile')
  79.       h = wx.Menu()
  80.       h.Append(wx.ID_ANY,'About Vodka')
  81.       h.AppendSeparator()
  82.       h.Append(wx.ID_ANY,'Vodka Help')
  83.       m.Append(f,'&File')
  84.       m.Append(ed,'&Edit')
  85.       m.Append(py,'&Python')
  86.       m.Append(b,'&Build')
  87.       m.Append(h,'&Help')
  88.       self.SetMenuBar(m)
  89.  
  90.       self.sizer = wx.BoxSizer(wx.VERTICAL)
  91.       self.sizer.Add(self.text, 1, wx.TOP | wx.EXPAND)
  92.  
  93.       self.panel.SetSizerAndFit(self.sizer)
  94.  
  95.       self.text.Bind(stc.EVT_STC_CHANGE, self.OnChange)
  96.       self.Show()
  97.  
  98.  
  99.   def OnChange(self, e):
  100.       lines = self.text.GetLineCount()
  101.       width = self.text.TextWidth(stc.STC_STYLE_LINENUMBER, str(lines)+" ")
  102.       self.text.SetMarginWidth(0, width)
  103.  
  104.  
  105. if __name__=='__main__':
  106.   app = wx.App()
  107.   Vodka_Frame = Vodka(None,-1)
  108.   Vodka_Frame.Show()
  109.   app.MainLoop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement