]> git.saurik.com Git - wxWidgets.git/blame - wxPython/demo/ColourSelect.py
added wxStringBuffer helper
[wxWidgets.git] / wxPython / demo / ColourSelect.py
CommitLineData
49875c53
RD
1
2#----------------------------------------------------------------------------
3# Name: ColourSelect.py
4# Purpose: Colour Selection control display testing on panel for wxPython demo
5#
6# Author: Lorne White (email: lorne.white@telusplanet.net)
7#
572c7069
RD
8# Version 0.6
9# Date: Nov 14, 2001
49875c53 10# Licence: wxWindows license
572c7069
RD
11
12# Change Log: Add Label parameter to accommodate updated library code
13
49875c53
RD
14#----------------------------------------------------------------------------
15
16from wxPython.wx import *
17from wxPython.lib.colourselect import *
18import string
19
20#---------------------------------------------------------------------------
21
22class TestColourSelect(wxPanel):
23 def __init__(self, parent, log):
24 self.log = log
25 wxPanel.__init__(self, parent, -1)
26
27 wxStaticText(self, -1, "This example uses a colour selection control based on the wxButton and wxColourDialog Classes. Click Button to get Colour Values",
28 wxPoint(10, 20), wxSize(400, 60))
29
30 self.x_pos = 30
31 self.y_pos = 100
32 delta = 40
e189b070 33
49875c53 34 mID = NewId()
e189b070 35 wxButton(self, mID, "Get All Colours", wxPoint(self.x_pos, self.y_pos))
49875c53
RD
36 EVT_BUTTON(self, mID, self.OnClick)
37 self.y_pos = self.y_pos + delta
38
39 wxStaticText(self, -1, "Default", wxPoint(self.x_pos, self.y_pos), wxSize(-1, -1)) # name
d56cebe7 40 self.colour_def = ColourSelect(self, -1, pos=wxPoint(self.x_pos+100, self.y_pos)) # default colour selection control
49875c53
RD
41
42 self.y_pos = self.y_pos + delta
43 colours = [[255, 255, 0], [255, 0, 255], [0, 255, 0], [0, 0, 255]] # list of initial colours for display
44 self.names = names = [ "Default Size", "Another Size", "Another Colour", "Larger"] # display names
d56cebe7 45 sizes = [ wxDefaultSize, wxSize(60, 20), wxDefaultSize, wxSize(60, 60)] # button sizes
49875c53
RD
46 self.set_val = []
47
48 for i in range(len(colours)):
49 wxStaticText(self, -1, names[i], wxPoint(self.x_pos, self.y_pos), wxSize(-1, -1)) # name
50
572c7069 51 val = ColourSelect(self, -1, "", colours[i], wxPoint(self.x_pos+100, self.y_pos), sizes[i]) # colour selection button
49875c53
RD
52 self.set_val.append(val) # store control for reference
53 self.y_pos = self.y_pos + delta
54
572c7069
RD
55 self.y_pos = self.y_pos - delta
56 ColourSelect(self, -1, "Color Label", colours[0], wxPoint(self.x_pos+200, self.y_pos), sizes[0]) # colour selection button
57
d56cebe7 58
49875c53
RD
59 def OnClick(self, event):
60 result = []
61 colour = self.colour_def.GetColour() # default control value
62 result.append("Default: " + str(colour))
e189b070 63
49875c53
RD
64 for i in range(len(self.set_val)):
65 val = self.set_val[i]
66 colour = val.GetColour() # get the colour selection button result
67 name = self.names[i]
68 result.append(name + ": " + str(colour)) # create string list for easy viewing of results
69 out_result = string.joinfields(result, ', ')
3fa82630 70 self.log.WriteText("Colour Results :" + out_result + "\n")
e189b070 71
49875c53
RD
72#---------------------------------------------------------------------------
73
74def runTest(frame, nb, log):
75 win = TestColourSelect(nb, log)
76 return win
77
78#---------------------------------------------------------------------------
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94overview = """\
49875c53 95
49875c53 96"""