Advertisement
Stosswalkinator

Text Editor (with wxPython)

Oct 18th, 2012
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.47 KB | None | 0 0
  1. # workingtexteditor.py
  2. import wx
  3.  
  4. class Menu(wx.Frame):
  5.     def __init__(self, parent, id, title):
  6.         wx.Frame.__init__(self, parent, id, title, size=(600, 800))
  7.  
  8.         # Create the file menu
  9.         menubar = wx.MenuBar()
  10.         file = wx.Menu()
  11.  
  12.         # Create the file menu item(s)
  13.         new = wx.MenuItem(file, 1, '&New\tCtrl+N')
  14.         open = wx.MenuItem(file, 1, '&Open\tCtrl+O')
  15.         save = wx.MenuItem(file, 1, '&Save\tCtrl+S')
  16.         saveas = wx.MenuItem(file, 1, '&Save as...\tCtrl+Shift+s')
  17.         quit = wx.MenuItem(file, 1, '&Quit\tCtrl+Q')
  18.  
  19.         file.AppendItem(new)
  20.         file.AppendItem(open)
  21.         file.AppendItem(save)
  22.         file.AppendItem(saveas)
  23.         file.AppendItem(quit)
  24.  
  25.         self.Bind(wx.EVT_MENU, self.OnNew, id=1)
  26.         self.Bind(wx.EVT_MENU, self.OnOpen, id=1)
  27.         self.Bind(wx.EVT_MENU, self.OnSave, id=1)
  28.         self.Bind(wx.EVT_MENU, self.OnSaveas, id=1)
  29.         self.Bind(wx.EVT_MENU, self.OnQuit, id=1)
  30.  
  31.         menubar.Append(file, '&File')
  32.         self.SetMenuBar(menubar)
  33.  
  34.         # Create the edit menu
  35.         menubar = wx.MenuBar()
  36.         edit = wx.Menu()
  37.  
  38.         # Create the edit menu item(s)
  39.         wordwrap = wx.MenuItem(edit, 1, '&Word Wrap\tCtrl+W')
  40.         cut = wx.MenuItem(edit, 1, '&Cut\tCtrl+X')
  41.         copy = wx.MenuItem(edit, 1, '&Copy\tCtrl+C')
  42.         paste = wx.MenuItem(edit, 1, '&Paste\tCtrl+V')
  43.  
  44.         edit.AppendItem(wordwrap)
  45.         edit.AppendItem(cut)
  46.         edit.AppendItem(copy)
  47.         edit.AppendItem(paste)
  48.  
  49.         self.Bind(wx.EVT_MENU, self.OnWordWrap, id=1)
  50.         self.Bind(wx.EVT_MENU, self.OnCut, id=1)
  51.         self.Bind(wx.EVT_MENU, self.OnCopy, id=1)
  52.         self.Bind(wx.EVT_MENU, self.OnPaste, id=1)
  53.  
  54.         menubar.Append(edit, '&Edit')
  55.         self.SetMenuBar(menubar)
  56.        
  57.         # Define the events of the file menu items
  58.     def OnNew(self, event):
  59.         self.New()
  60.  
  61.     def OnOpen(self, event):
  62.         self.Open()
  63.  
  64.     def OnSave(self, event):
  65.         self.Save()
  66.  
  67.     def OnSaveas(self, event):
  68.         self.Saveas()
  69.  
  70.     def OnQuit(self, event):
  71.         self.Close()
  72.  
  73.         # Define the events of the edit menu items
  74.     def OnWordWrap(self, event):
  75.         self.WordWrap()
  76.  
  77.     def OnCut(self, event):
  78.         self.Cut()
  79.  
  80.     def OnCopy(self, event):
  81.         self.Copy()
  82.  
  83.     def OnPaste(self, event):
  84.         self.Paste()
  85.        
  86. app = wx.App()
  87. Menu(None, -1, "Stoss' Editor")
  88. app.MainLoop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement