]>
Commit | Line | Data |
---|---|---|
34a544a6 | 1 | |
8fa876ca | 2 | import wx |
cf694132 RD |
3 | |
4 | #--------------------------------------------------------------------------- | |
5 | ||
34a544a6 RD |
6 | class TestPanel(wx.Panel): |
7 | def __init__(self, parent, log): | |
8 | self.log = log | |
9 | wx.Panel.__init__(self, parent, -1) | |
10 | ||
11 | b = wx.Button(self, -1, "Create and Show a ColourDialog", (50,50)) | |
12 | self.Bind(wx.EVT_BUTTON, self.OnButton, b) | |
13 | ||
14 | ||
15 | def OnButton(self, evt): | |
16 | dlg = wx.ColourDialog(self) | |
17 | ||
18 | # Ensure the full colour dialog is displayed, | |
19 | # not the abbreviated version. | |
20 | dlg.GetColourData().SetChooseFull(True) | |
8fa876ca | 21 | |
34a544a6 | 22 | if dlg.ShowModal() == wx.ID_OK: |
8fa876ca | 23 | |
34a544a6 RD |
24 | # If the user selected OK, then the dialog's wx.ColourData will |
25 | # contain valid information. Fetch the data ... | |
26 | data = dlg.GetColourData() | |
8fa876ca | 27 | |
34a544a6 RD |
28 | # ... then do something with it. The actual colour data will be |
29 | # returned as a three-tuple (r, g, b) in this particular case. | |
30 | self.log.WriteText('You selected: %s\n' % str(data.GetColour().Get())) | |
31 | ||
32 | # Once the dialog is destroyed, Mr. wx.ColourData is no longer your | |
33 | # friend. Don't use it again! | |
34 | dlg.Destroy() | |
35 | ||
36 | #--------------------------------------------------------------------------- | |
37 | ||
38 | ||
39 | def runTest(frame, nb, log): | |
40 | win = TestPanel(nb, log) | |
41 | return win | |
8fa876ca | 42 | |
cf694132 RD |
43 | |
44 | #--------------------------------------------------------------------------- | |
45 | ||
46 | ||
cf694132 RD |
47 | overview = """\ |
48 | This class represents the colour chooser dialog. | |
49 | ||
8fa876ca | 50 | Use of this dialog is a multi-stage process. |
cf694132 | 51 | |
8fa876ca RD |
52 | The actual information about how to display the dialog and the colors in the |
53 | dialog's 'registers' are contained in a wx.ColourData instance that is created by | |
54 | the dialog at init time. Before displaying the dialog, you may alter these settings | |
55 | to suit your needs. In the example, we set the dialog up to show the extended colour | |
56 | data selection pane. Otherwise, only the more compact and less extensive colour | |
57 | dialog is shown. You may also preset the colour as well as other items. | |
1fded56b | 58 | |
95bfd958 | 59 | If the user selects something and selects OK, then the wx.ColourData instance contains |
8fa876ca RD |
60 | the colour data that the user selected. Before destroying the dialog, retrieve the data. |
61 | <b>Do not try to retain the wx.ColourData instance.</b> It will probably not be valid | |
62 | after the dialog is destroyed. | |
1fded56b | 63 | |
95bfd958 | 64 | Along with he wx.ColourDialog documentation, see also the wx.ColourData documentation |
8fa876ca RD |
65 | for details. |
66 | """ | |
1fded56b RD |
67 | |
68 | if __name__ == '__main__': | |
69 | import sys,os | |
70 | import run | |
8eca4fef | 71 | run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:]) |
1fded56b | 72 |