|
import wx |
|
|
|
|
|
class MyPanel(wx.Panel): |
|
def __init__(self, parent, _id): |
|
wx.Panel.__init__(self, parent, _id) |
|
self.SetBackgroundColour("white") |
|
default_font = wx.Font(9, wx.FONTFAMILY_DEFAULT, |
|
wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL) |
|
self.SetFont(default_font) |
|
|
|
self.main_sizer = wx.BoxSizer(wx.HORIZONTAL) |
|
self.control_sizer = wx.BoxSizer(wx.HORIZONTAL) |
|
|
|
self.add_scene_save_edits_button = wx.Button(self, label="Add scene") |
|
self.add_scene_save_edits_button.Bind(wx.EVT_BUTTON, self.on_add_scene) |
|
self.control_sizer.Add(self.add_scene_save_edits_button, 0, wx.CENTER | wx.ALL, 5) |
|
|
|
self.edit_scene_button = wx.Button(self, label="Edit scene") |
|
self.edit_scene_button.Bind(wx.EVT_BUTTON, self.on_edit_scene) |
|
self.control_sizer.Add(self.edit_scene_button, 0, wx.CENTER | wx.ALL, 5) |
|
|
|
self.cancel_edits_button = wx.Button(self, label="Cancel edits") |
|
self.cancel_edits_button.Bind(wx.EVT_BUTTON, self.on_cancel_edits) |
|
self.cancel_edits_button.Disable() |
|
self.control_sizer.Add(self.cancel_edits_button, 0, wx.CENTER | wx.ALL, 5) |
|
|
|
self.main_sizer.Add(self.control_sizer, 0, wx.CENTER) |
|
self.SetSizer(self.main_sizer) |
|
|
|
def on_add_scene(self, event): |
|
print "Adding scenes!" |
|
|
|
def on_edit_scene(self, event): |
|
print "We are now in scene edit mode!" |
|
self.edit_scene_button.SetLabel("Save edits") |
|
self.edit_scene_button.Bind(wx.EVT_BUTTON, self.on_save_edits) |
|
self.add_scene_save_edits_button.Disable() |
|
self.cancel_edits_button.Enable() |
|
|
|
def on_save_edits(self, event): |
|
print "Oh hey, now we are saving edits!" |
|
self.edit_scene_button.SetLabel("Edit scene") |
|
self.edit_scene_button.Bind(wx.EVT_BUTTON, self.on_edit_scene) |
|
self.add_scene_save_edits_button.Enable() |
|
self.cancel_edits_button.Disable() |
|
|
|
def on_cancel_edits(self, event): |
|
print "Cancelling edits" |
|
self.add_scene_save_edits_button.SetLabel("Add scene") |
|
self.add_scene_save_edits_button.Bind(wx.EVT_BUTTON, self.on_add_scene) |
|
self.add_scene_save_edits_button.Enable() |
|
self.cancel_edits_button.Disable() |
|
|
|
app = wx.PySimpleApp() |
|
frame = wx.Frame(None, -1, "Changing buttons", size=(300, 300)) |
|
MyPanel(frame, -1) |
|
frame.Show(True) |
|
app.MainLoop() |