3
from wxPython.wx import *
6
return wxFrame1(parent)
8
[wxID_WXFRAME1, wxID_WXFRAME1PANEL1, wxID_WXFRAME1SASHLAYOUTWINDOW1,
9
wxID_WXFRAME1SASHLAYOUTWINDOW2, wxID_WXFRAME1SASHLAYOUTWINDOW3,
10
wxID_WXFRAME1SASHLAYOUTWINDOW4, wxID_WXFRAME1STATICTEXT1,
11
wxID_WXFRAME1TEXTCTRL1, wxID_WXFRAME1TEXTCTRL2,
12
] = map(lambda _init_ctrls: wxNewId(), range(9))
14
class wxFrame1(wxFrame):
15
def _init_utils(self):
16
# generated method, don't edit
19
def _init_ctrls(self, prnt):
20
# generated method, don't edit
21
wxFrame.__init__(self, id=wxID_WXFRAME1, name='', parent=prnt,
22
pos=wxPoint(327, 136), size=wxSize(518, 376),
23
style=wxDEFAULT_FRAME_STYLE, title='Sash layout')
25
self.SetClientSize(wxSize(510, 349))
26
EVT_SIZE(self, self.OnWxframe1Size)
28
self.panel1 = wxPanel(id=wxID_WXFRAME1PANEL1, name='panel1',
29
parent=self, pos=wxPoint(248, 50), size=wxSize(262, 234),
30
style=wxTAB_TRAVERSAL)
32
self.sashLayoutWindow1 = wxSashLayoutWindow(id=wxID_WXFRAME1SASHLAYOUTWINDOW1,
33
name='sashLayoutWindow1', parent=self, pos=wxPoint(0, 0),
34
size=wxSize(510, 50), style=wxCLIP_CHILDREN | wxSW_3D)
35
self.sashLayoutWindow1.SetBackgroundColour(wxColour(255, 0, 0))
36
self.sashLayoutWindow1.SetOrientation(wxLAYOUT_HORIZONTAL)
37
self.sashLayoutWindow1.SetAlignment(wxLAYOUT_TOP)
38
self.sashLayoutWindow1.SetSashVisible(wxSASH_BOTTOM, true)
39
self.sashLayoutWindow1.SetDefaultSize(wxSize(510, 50))
40
EVT_SASH_DRAGGED(self.sashLayoutWindow1, wxID_WXFRAME1SASHLAYOUTWINDOW1,
41
self.OnSashlayoutwindow1SashDragged)
43
self.sashLayoutWindow4 = wxSashLayoutWindow(id=wxID_WXFRAME1SASHLAYOUTWINDOW4,
44
name='sashLayoutWindow4', parent=self, pos=wxPoint(0, 284),
45
size=wxSize(510, 65), style=wxCLIP_CHILDREN | wxSW_3D)
46
self.sashLayoutWindow4.SetBackgroundColour(wxColour(0, 0, 255))
47
self.sashLayoutWindow4.SetAlignment(wxLAYOUT_BOTTOM)
48
self.sashLayoutWindow4.SetSashVisible(wxSASH_TOP, true)
49
self.sashLayoutWindow4.SetOrientation(wxLAYOUT_HORIZONTAL)
50
self.sashLayoutWindow4.SetDefaultSize(wxSize(308, 65))
51
self.sashLayoutWindow4.SetExtraBorderSize(10)
52
EVT_SASH_DRAGGED(self.sashLayoutWindow4, wxID_WXFRAME1SASHLAYOUTWINDOW4,
53
self.OnSashlayoutwindow4SashDragged)
55
self.sashLayoutWindow2 = wxSashLayoutWindow(id=wxID_WXFRAME1SASHLAYOUTWINDOW2,
56
name='sashLayoutWindow2', parent=self, pos=wxPoint(0, 50),
57
size=wxSize(112, 234), style=wxCLIP_CHILDREN | wxSW_3D)
58
self.sashLayoutWindow2.SetBackgroundColour(wxColour(128, 255, 0))
59
self.sashLayoutWindow2.SetExtraBorderSize(20)
60
self.sashLayoutWindow2.SetAlignment(wxLAYOUT_LEFT)
61
self.sashLayoutWindow2.SetOrientation(wxLAYOUT_VERTICAL)
62
self.sashLayoutWindow2.SetSashVisible(wxSASH_RIGHT, true)
63
self.sashLayoutWindow2.SetDefaultSize(wxSize(112, 113))
64
EVT_SASH_DRAGGED(self.sashLayoutWindow2, wxID_WXFRAME1SASHLAYOUTWINDOW2,
65
self.OnSashlayoutwindow2SashDragged)
67
self.sashLayoutWindow3 = wxSashLayoutWindow(id=wxID_WXFRAME1SASHLAYOUTWINDOW3,
68
name='sashLayoutWindow3', parent=self, pos=wxPoint(112, 50),
69
size=wxSize(136, 234), style=wxCLIP_CHILDREN | wxSW_3D)
70
self.sashLayoutWindow3.SetBackgroundColour(wxColour(0, 255, 255))
71
self.sashLayoutWindow3.SetAlignment(wxLAYOUT_LEFT)
72
self.sashLayoutWindow3.SetOrientation(wxLAYOUT_VERTICAL)
73
self.sashLayoutWindow3.SetSashVisible(wxSASH_RIGHT, true)
74
self.sashLayoutWindow3.SetDefaultSize(wxSize(136, 234))
75
EVT_SASH_DRAGGED(self.sashLayoutWindow3, wxID_WXFRAME1SASHLAYOUTWINDOW3,
76
self.OnSashlayoutwindow3SashDragged)
78
self.textCtrl1 = wxTextCtrl(id=wxID_WXFRAME1TEXTCTRL1, name='textCtrl1',
79
parent=self.sashLayoutWindow2, pos=wxPoint(20, 20),
80
size=wxSize(69, 194), style=0, value='textCtrl1')
82
self.staticText1 = wxStaticText(id=wxID_WXFRAME1STATICTEXT1,
83
label='staticText1', name='staticText1', parent=self.panel1,
84
pos=wxPoint(16, 16), size=wxSize(52, 13), style=0)
86
self.textCtrl2 = wxTextCtrl(id=wxID_WXFRAME1TEXTCTRL2, name='textCtrl2',
87
parent=self.sashLayoutWindow4, pos=wxPoint(10, 13),
88
size=wxSize(490, 42), style=0, value='textCtrl2')
90
def __init__(self, parent):
91
self._init_ctrls(parent)
93
def checkStatusRange(self, event):
94
return event.GetDragStatus() != wxSASH_STATUS_OUT_OF_RANGE
97
wxLayoutAlgorithm().LayoutWindow(self, self.panel1)
100
def OnWxframe1Size(self, event):
103
def OnSashlayoutwindow1SashDragged(self, event):
104
if self.checkStatusRange(event):
105
self.sashLayoutWindow1.SetDefaultSize(wxSize(1000, event.GetDragRect().height))
108
def OnSashlayoutwindow2SashDragged(self, event):
109
if self.checkStatusRange(event):
110
self.sashLayoutWindow2.SetDefaultSize(wxSize(event.GetDragRect().width, 1000))
113
def OnSashlayoutwindow3SashDragged(self, event):
114
if self.checkStatusRange(event):
115
self.sashLayoutWindow3.SetDefaultSize(wxSize(event.GetDragRect().width, 1000))
118
def OnSashlayoutwindow4SashDragged(self, event):
119
if self.checkStatusRange(event):
120
self.sashLayoutWindow4.SetDefaultSize(wxSize(1000, event.GetDragRect().height))
124
if __name__ == '__main__':
125
app = wxPySimpleApp()
126
wxInitAllImageHandlers()
8
[wxID_FRAME1, wxID_FRAME1PANEL1, wxID_FRAME1SASHLAYOUTWINDOW1,
9
wxID_FRAME1SASHLAYOUTWINDOW2, wxID_FRAME1SASHLAYOUTWINDOW3,
10
wxID_FRAME1SASHLAYOUTWINDOW4, wxID_FRAME1STATICTEXT1, wxID_FRAME1TEXTCTRL1,
12
] = [wx.NewId() for _init_ctrls in range(9)]
14
class Frame1(wx.Frame):
15
def _init_ctrls(self, prnt):
16
# generated method, don't edit
17
wx.Frame.__init__(self, id=wxID_FRAME1, name='Frame1', parent=prnt,
18
pos=wx.Point(327, 136), size=wx.Size(518, 376),
19
style=wx.DEFAULT_FRAME_STYLE, title='Sash layout')
20
self.SetClientSize(wx.Size(510, 349))
21
self.Bind(wx.EVT_SIZE, self.OnWxframe1Size)
23
self.panel1 = wx.Panel(id=wxID_FRAME1PANEL1, name='panel1', parent=self,
24
pos=wx.Point(248, 50), size=wx.Size(262, 234),
25
style=wx.TAB_TRAVERSAL)
27
self.sashLayoutWindow1 = wx.SashLayoutWindow(id=wxID_FRAME1SASHLAYOUTWINDOW1,
28
name='sashLayoutWindow1', parent=self, pos=wx.Point(0, 0),
29
size=wx.Size(510, 50), style=wx.CLIP_CHILDREN | wx.SW_3D)
30
self.sashLayoutWindow1.SetBackgroundColour(wx.Colour(255, 0, 0))
31
self.sashLayoutWindow1.SetOrientation(wx.LAYOUT_HORIZONTAL)
32
self.sashLayoutWindow1.SetAlignment(wx.LAYOUT_TOP)
33
self.sashLayoutWindow1.SetSashVisible(wx.SASH_BOTTOM, True)
34
self.sashLayoutWindow1.SetDefaultSize(wx.Size(510, 50))
35
self.sashLayoutWindow1.Bind(wx.EVT_SASH_DRAGGED,
36
self.OnSashlayoutwindow1SashDragged,
37
id=wxID_FRAME1SASHLAYOUTWINDOW1)
39
self.sashLayoutWindow4 = wx.SashLayoutWindow(id=wxID_FRAME1SASHLAYOUTWINDOW4,
40
name='sashLayoutWindow4', parent=self, pos=wx.Point(0, 284),
41
size=wx.Size(510, 65), style=wx.CLIP_CHILDREN | wx.SW_3D)
42
self.sashLayoutWindow4.SetBackgroundColour(wx.Colour(0, 0, 255))
43
self.sashLayoutWindow4.SetAlignment(wx.LAYOUT_BOTTOM)
44
self.sashLayoutWindow4.SetSashVisible(wx.SASH_TOP, True)
45
self.sashLayoutWindow4.SetOrientation(wx.LAYOUT_HORIZONTAL)
46
self.sashLayoutWindow4.SetDefaultSize(wx.Size(308, 65))
47
self.sashLayoutWindow4.SetExtraBorderSize(10)
48
self.sashLayoutWindow4.Bind(wx.EVT_SASH_DRAGGED,
49
self.OnSashlayoutwindow4SashDragged,
50
id=wxID_FRAME1SASHLAYOUTWINDOW4)
52
self.sashLayoutWindow2 = wx.SashLayoutWindow(id=wxID_FRAME1SASHLAYOUTWINDOW2,
53
name='sashLayoutWindow2', parent=self, pos=wx.Point(0, 50),
54
size=wx.Size(112, 234), style=wx.CLIP_CHILDREN | wx.SW_3D)
55
self.sashLayoutWindow2.SetBackgroundColour(wx.Colour(128, 255, 0))
56
self.sashLayoutWindow2.SetExtraBorderSize(20)
57
self.sashLayoutWindow2.SetAlignment(wx.LAYOUT_LEFT)
58
self.sashLayoutWindow2.SetOrientation(wx.LAYOUT_VERTICAL)
59
self.sashLayoutWindow2.SetSashVisible(wx.SASH_RIGHT, True)
60
self.sashLayoutWindow2.SetDefaultSize(wx.Size(112, 113))
61
self.sashLayoutWindow2.Bind(wx.EVT_SASH_DRAGGED,
62
self.OnSashlayoutwindow2SashDragged,
63
id=wxID_FRAME1SASHLAYOUTWINDOW2)
65
self.sashLayoutWindow3 = wx.SashLayoutWindow(id=wxID_FRAME1SASHLAYOUTWINDOW3,
66
name='sashLayoutWindow3', parent=self, pos=wx.Point(112, 50),
67
size=wx.Size(136, 234), style=wx.CLIP_CHILDREN | wx.SW_3D)
68
self.sashLayoutWindow3.SetBackgroundColour(wx.Colour(0, 255, 255))
69
self.sashLayoutWindow3.SetAlignment(wx.LAYOUT_LEFT)
70
self.sashLayoutWindow3.SetOrientation(wx.LAYOUT_VERTICAL)
71
self.sashLayoutWindow3.SetSashVisible(wx.SASH_RIGHT, True)
72
self.sashLayoutWindow3.SetDefaultSize(wx.Size(136, 234))
73
self.sashLayoutWindow3.Bind(wx.EVT_SASH_DRAGGED,
74
self.OnSashlayoutwindow3SashDragged,
75
id=wxID_FRAME1SASHLAYOUTWINDOW3)
77
self.textCtrl1 = wx.TextCtrl(id=wxID_FRAME1TEXTCTRL1, name='textCtrl1',
78
parent=self.sashLayoutWindow2, pos=wx.Point(20, 20),
79
size=wx.Size(69, 194), style=0, value='textCtrl1')
81
self.staticText1 = wx.StaticText(id=wxID_FRAME1STATICTEXT1,
82
label='staticText1', name='staticText1', parent=self.panel1,
83
pos=wx.Point(16, 16), size=wx.Size(52, 13), style=0)
85
self.textCtrl2 = wx.TextCtrl(id=wxID_FRAME1TEXTCTRL2, name='textCtrl2',
86
parent=self.sashLayoutWindow4, pos=wx.Point(10, 13),
87
size=wx.Size(490, 42), style=0, value='textCtrl2')
89
def __init__(self, parent):
90
self._init_ctrls(parent)
92
def checkStatusRange(self, event):
93
return event.GetDragStatus() != wx.SASH_STATUS_OUT_OF_RANGE
96
wx.LayoutAlgorithm().LayoutWindow(self, self.panel1)
99
def OnWxframe1Size(self, event):
102
def OnSashlayoutwindow1SashDragged(self, event):
103
if self.checkStatusRange(event):
104
self.sashLayoutWindow1.SetDefaultSize(wx.Size(1000, event.GetDragRect().height))
107
def OnSashlayoutwindow2SashDragged(self, event):
108
if self.checkStatusRange(event):
109
self.sashLayoutWindow2.SetDefaultSize(wx.Size(event.GetDragRect().width, 1000))
112
def OnSashlayoutwindow3SashDragged(self, event):
113
if self.checkStatusRange(event):
114
self.sashLayoutWindow3.SetDefaultSize(wx.Size(event.GetDragRect().width, 1000))
117
def OnSashlayoutwindow4SashDragged(self, event):
118
if self.checkStatusRange(event):
119
self.sashLayoutWindow4.SetDefaultSize(wx.Size(1000, event.GetDragRect().height))
123
if __name__ == '__main__':
124
app = wx.PySimpleApp()
125
wx.InitAllImageHandlers()