Demonstrate setting metal appearance for wxMac

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38213 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn 2006-03-18 22:17:39 +00:00
parent dd44c9e02c
commit f70ec5b8f7

View File

@ -12,12 +12,13 @@ wx.HelpProvider_Set(provider)
class TestDialog(wx.Dialog):
def __init__(
self, parent, ID, title, size=wx.DefaultSize, pos=wx.DefaultPosition,
style=wx.DEFAULT_DIALOG_STYLE
style=wx.DEFAULT_DIALOG_STYLE,
useMetal=False,
):
# Instead of calling wx.Dialog.__init__ we precreate the dialog
# so we can set an extra style that must be set before
# creation, and then we create the GUI dialog using the Create
# creation, and then we create the GUI object using the Create
# method.
pre = wx.PreDialog()
pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
@ -28,6 +29,11 @@ class TestDialog(wx.Dialog):
# as far as the wxPython extension is concerned.
self.PostCreate(pre)
# This extra style can be set after the UI object has been created.
if 'wxMac' in wx.PlatformInfo and useMetal:
self.SetExtraStyle(wx.DIALOG_EX_METAL)
# Now continue with the normal construction of the dialog
# contents
sizer = wx.BoxSizer(wx.VERTICAL)
@ -94,11 +100,19 @@ class TestPanel(wx.Panel):
b = wx.Button(self, -1, "Create and Show a custom Dialog", (50,50))
self.Bind(wx.EVT_BUTTON, self.OnButton, b)
if 'wxMac' in wx.PlatformInfo:
self.cb = wx.CheckBox(self, -1, "Set Metal appearance", (50,90))
def OnButton(self, evt):
dlg = TestDialog(self, -1, "This is a Dialog", size=(350, 200),
#style = wxCAPTION | wxSYSTEM_MENU | wxTHICK_FRAME
style = wx.DEFAULT_DIALOG_STYLE
useMetal = False
if 'wxMac' in wx.PlatformInfo:
useMetal = self.cb.IsChecked()
dlg = TestDialog(self, -1, "Sample Dialog", size=(350, 200),
#style=wxCAPTION | wxSYSTEM_MENU | wxTHICK_FRAME,
style=wx.DEFAULT_DIALOG_STYLE,
useMetal=useMetal,
)
dlg.CenterOnScreen()