]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/env python | |
2 | #---------------------------------------------------------------------------- | |
3 | # Name: TstLstIcon.py | |
4 | # Purpose: Lest Icon List | |
5 | # | |
6 | # Author: Lorne White | |
7 | # | |
8 | # Version: 0.8 | |
9 | # Licence: wxWindows, wxPython license | |
10 | #---------------------------------------------------------------------------- | |
11 | ||
12 | import sys, os | |
13 | from wxPython.wx import * | |
14 | ||
15 | class AppFrame(wxFrame): | |
16 | def __init__(self, parent, id=-1, title="New"): | |
17 | wxFrame.__init__(self, parent, id, title, wxPyDefaultPosition, wxSize(420, 320)) | |
18 | if wxPlatform == '__WXMSW__': | |
19 | self.icon = wxIcon('bitmaps/mondrian.ico', wxBITMAP_TYPE_ICO) | |
20 | self.SetIcon(self.icon) | |
21 | ||
22 | self.CreateStatusBar() | |
23 | ||
24 | self.mainmenu = wxMenuBar() | |
25 | menu = wxMenu() | |
26 | ||
27 | menu = self.MakeFileMenu() | |
28 | self.mainmenu.Append(menu, '&File') | |
29 | ||
30 | self.SetMenuBar(self.mainmenu) | |
31 | ||
32 | self.il = wxImageList(32, 32) | |
33 | self.idx1 = idx1 = self.il.Add(wxNoRefBitmap('table.bmp', wxBITMAP_TYPE_BMP)) | |
34 | self.idx2 = idx2 = self.il.Add(wxNoRefBitmap('query.bmp', wxBITMAP_TYPE_BMP)) | |
35 | ||
36 | self.nb = nb = wxNotebook(self, -1) | |
37 | ||
38 | self.list = wxListCtrl(nb, 1100, wxDefaultPosition, wxDefaultSize) | |
39 | ||
40 | nb.AddPage(self.list, "Tables") | |
41 | ||
42 | self.list.SetSingleStyle(wxLC_ICON) | |
43 | self.list.SetWindowStyleFlag(wxSTATIC_BORDER|wxVSCROLL) | |
44 | self.list.SetImageList(self.il, wxIMAGE_LIST_NORMAL) | |
45 | ||
46 | self.qlist = wxListCtrl(nb, 1200, wxDefaultPosition, wxDefaultSize) | |
47 | nb.AddPage(self.qlist, "Queries") | |
48 | ||
49 | self.qlist.SetSingleStyle(wxLC_ICON) | |
50 | self.qlist.SetWindowStyleFlag(wxSTATIC_BORDER|wxVSCROLL) | |
51 | self.qlist.SetImageList(self.il, wxIMAGE_LIST_NORMAL) | |
52 | ||
53 | self.UpdateView2() | |
54 | self.UpdateView1() | |
55 | ||
56 | self.nb.SetSelection(1) | |
57 | self.nb.SetSelection(0) | |
58 | #self.nb.Refresh() | |
59 | #self.nb.ResizeChildren() | |
60 | ||
61 | def MakeFileMenu(self): | |
62 | self.fl_mn = menu = wxMenu() | |
63 | ||
64 | mID = NewId() | |
65 | menu.Append(mID, 'E&xit', 'Exit') | |
66 | EVT_MENU(self, mID, self.OnFileExit) | |
67 | ||
68 | return menu | |
69 | ||
70 | ||
71 | def UpdateView1(self): | |
72 | vset = "ViewA " | |
73 | for i in range(20): | |
74 | self.list.InsertImageStringItem(i, vset + str(i), self.idx1) | |
75 | ||
76 | def UpdateView2(self): | |
77 | vset = "ViewB " | |
78 | for i in range(5): | |
79 | self.qlist.InsertImageStringItem(i, vset + str(i), self.idx2) | |
80 | ||
81 | def OnFileExit(self, event): | |
82 | self.Close() | |
83 | ||
84 | #--------------------------------------------------------------------------- | |
85 | ||
86 | ||
87 | class MyApp(wxApp): | |
88 | def OnInit(self): | |
89 | frame = AppFrame(NULL, -1, "Demo") | |
90 | frame.Show(true) | |
91 | self.SetTopWindow(frame) | |
92 | return true | |
93 | ||
94 | #--------------------------------------------------------------------------- | |
95 | ||
96 | ||
97 | def main(): | |
98 | app = MyApp(0) | |
99 | app.MainLoop() | |
100 | ||
101 | ||
102 | def t(): | |
103 | import pdb | |
104 | pdb.run('main()') | |
105 | ||
106 | ||
107 | if __name__ == '__main__': | |
108 | main() |