wxWidgets/wxPython/tests/TstLstIcon.py
Bryan Petty f6bcfd974e merged 2.2 branch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-07-15 19:51:35 +00:00

109 lines
2.9 KiB
Python

#!/bin/env python
#----------------------------------------------------------------------------
# Name: TstLstIcon.py
# Purpose: Lest Icon List
#
# Author: Lorne White
#
# Version: 0.8
# Licence: wxWindows, wxPython license
#----------------------------------------------------------------------------
import sys, os
from wxPython.wx import *
class AppFrame(wxFrame):
def __init__(self, parent, id=-1, title="New"):
wxFrame.__init__(self, parent, id, title, wxPyDefaultPosition, wxSize(420, 320))
if wxPlatform == '__WXMSW__':
self.icon = wxIcon('bitmaps/mondrian.ico', wxBITMAP_TYPE_ICO)
self.SetIcon(self.icon)
self.CreateStatusBar()
self.mainmenu = wxMenuBar()
menu = wxMenu()
menu = self.MakeFileMenu()
self.mainmenu.Append(menu, '&File')
self.SetMenuBar(self.mainmenu)
self.il = wxImageList(32, 32)
self.idx1 = idx1 = self.il.Add(wxNoRefBitmap('table.bmp', wxBITMAP_TYPE_BMP))
self.idx2 = idx2 = self.il.Add(wxNoRefBitmap('query.bmp', wxBITMAP_TYPE_BMP))
self.nb = nb = wxNotebook(self, -1)
self.list = wxListCtrl(nb, 1100, wxDefaultPosition, wxDefaultSize)
nb.AddPage(self.list, "Tables")
self.list.SetSingleStyle(wxLC_ICON)
self.list.SetWindowStyleFlag(wxSTATIC_BORDER|wxVSCROLL)
self.list.SetImageList(self.il, wxIMAGE_LIST_NORMAL)
self.qlist = wxListCtrl(nb, 1200, wxDefaultPosition, wxDefaultSize)
nb.AddPage(self.qlist, "Queries")
self.qlist.SetSingleStyle(wxLC_ICON)
self.qlist.SetWindowStyleFlag(wxSTATIC_BORDER|wxVSCROLL)
self.qlist.SetImageList(self.il, wxIMAGE_LIST_NORMAL)
self.UpdateView2()
self.UpdateView1()
self.nb.SetSelection(1)
self.nb.SetSelection(0)
#self.nb.Refresh()
#self.nb.ResizeChildren()
def MakeFileMenu(self):
self.fl_mn = menu = wxMenu()
mID = NewId()
menu.Append(mID, 'E&xit', 'Exit')
EVT_MENU(self, mID, self.OnFileExit)
return menu
def UpdateView1(self):
vset = "ViewA "
for i in range(20):
self.list.InsertImageStringItem(i, vset + str(i), self.idx1)
def UpdateView2(self):
vset = "ViewB "
for i in range(5):
self.qlist.InsertImageStringItem(i, vset + str(i), self.idx2)
def OnFileExit(self, event):
self.Close()
#---------------------------------------------------------------------------
class MyApp(wxApp):
def OnInit(self):
frame = AppFrame(NULL, -1, "Demo")
frame.Show(true)
self.SetTopWindow(frame)
return true
#---------------------------------------------------------------------------
def main():
app = MyApp(0)
app.MainLoop()
def t():
import pdb
pdb.run('main()')
if __name__ == '__main__':
main()