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:
@@ -12,12 +12,13 @@ wx.HelpProvider_Set(provider)
|
|||||||
class TestDialog(wx.Dialog):
|
class TestDialog(wx.Dialog):
|
||||||
def __init__(
|
def __init__(
|
||||||
self, parent, ID, title, size=wx.DefaultSize, pos=wx.DefaultPosition,
|
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
|
# Instead of calling wx.Dialog.__init__ we precreate the dialog
|
||||||
# so we can set an extra style that must be set before
|
# 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.
|
# method.
|
||||||
pre = wx.PreDialog()
|
pre = wx.PreDialog()
|
||||||
pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
|
pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
|
||||||
@@ -28,6 +29,11 @@ class TestDialog(wx.Dialog):
|
|||||||
# as far as the wxPython extension is concerned.
|
# as far as the wxPython extension is concerned.
|
||||||
self.PostCreate(pre)
|
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
|
# Now continue with the normal construction of the dialog
|
||||||
# contents
|
# contents
|
||||||
sizer = wx.BoxSizer(wx.VERTICAL)
|
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))
|
b = wx.Button(self, -1, "Create and Show a custom Dialog", (50,50))
|
||||||
self.Bind(wx.EVT_BUTTON, self.OnButton, b)
|
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):
|
def OnButton(self, evt):
|
||||||
dlg = TestDialog(self, -1, "This is a Dialog", size=(350, 200),
|
useMetal = False
|
||||||
#style = wxCAPTION | wxSYSTEM_MENU | wxTHICK_FRAME
|
if 'wxMac' in wx.PlatformInfo:
|
||||||
style = wx.DEFAULT_DIALOG_STYLE
|
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()
|
dlg.CenterOnScreen()
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user