File: wxXrcPanel.py

package info (click to toggle)
boa-constructor 0.4.4cvs20050714-4
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 10,080 kB
  • ctags: 9,175
  • sloc: python: 56,189; sh: 545; makefile: 40
file content (72 lines) | stat: -rw-r--r-- 2,451 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#Boa:Frame:wxFrame1

""" This example demonstrates how to load .xrc files created e.g. by XRCed.

Support only allows creating/linking the components. The contents of the
xcr file is not displayed at design-time and can certainly not be managed in
the Designer.

Note that the XRCSupport plug-in must be installed. """

import wx
import wx.xrc

def create(parent):
    return wxFrame1(parent)

[wxID_WXFRAME1, wxID_WXFRAME1BOAXRCPANEL, wxID_WXFRAME1BUTTON1, 
 wxID_WXFRAME1PANEL1, 
] = [wx.NewId() for _init_ctrls in range(4)]

class wxFrame1(wx.Frame):
    def _init_utils(self):
        # generated method, don't edit
        self.xmlResource1 = wx.xrc.XmlResource(filemask='Input.xrc')

    def _init_ctrls(self, prnt):
        # generated method, don't edit
        wx.Frame.__init__(self, id=wxID_WXFRAME1, name='', parent=prnt,
              pos=wx.Point(250, 248), size=wx.Size(240, 165),
              style=wx.DEFAULT_FRAME_STYLE, title='wxFrame1')
        self._init_utils()
        self.SetClientSize(wx.Size(232, 138))

        self.panel1 = wx.Panel(id=wxID_WXFRAME1PANEL1, name='panel1',
              parent=self, pos=wx.Point(0, 0), size=wx.Size(232, 138),
              style=wx.TAB_TRAVERSAL)

        self.boaXrcPanel = self.xmlResource1.LoadPanel(name='boaXrcPanel',
              parent=self.panel1)
        self.boaXrcPanel.SetSize(wx.Size(216, 88))
        self.boaXrcPanel.SetPosition(wx.Point(8, 8))

        self.button1 = wx.Button(id=wxID_WXFRAME1BUTTON1, label='OK',
              name='button1', parent=self.panel1, pos=wx.Point(144, 104),
              size=wx.Size(75, 23), style=0)
        self.button1.Bind(wx.EVT_BUTTON, self.OnButton1Button,
              id=wxID_WXFRAME1BUTTON1)

    def __init__(self, parent):
        self._init_ctrls(parent)

        # to reference an xrc control
        self.xrcLabel = wx.xrc.XRCCTRL(self, 'inputLbl')
        self.xrcTextCtrl = wx.xrc.XRCCTRL(self, 'inputCtrl')
        self.xrcCheck = wx.xrc.XRCCTRL(self, 'inputCheck')
        # to bind an event to an xrc control
        self.Bind(wx.EVT_CHECKBOX, self.OnCheckbox, id=self.xrcCheck.GetId())

    def OnButton1Button(self, event):
        print 'Entered %s'%self.xrcTextCtrl.GetValue()
        self.Close()

    def OnCheckbox(self, event):
        print 'Checkbox clicked'


if __name__ == '__main__':
    app = wx.PySimpleApp()
    wx.InitAllImageHandlers()
    frame = create(None)
    frame.Show()
    app.MainLoop()