| 1 | #---------------------------------------------------------------------- |
| 2 | # Name: wx.lib.analogclockopts |
| 3 | # Purpose: An analog clock window - setup frame |
| 4 | # |
| 5 | # Author: E. A. Tacao |
| 6 | # |
| 7 | # Created: 15-February-2004 |
| 8 | #---------------------------------------------------------------------- |
| 9 | |
| 10 | # Originally generated by wx.Glade 0.3.1 on Wed Feb 18 00:05:35 2004 |
| 11 | # Converted to wx namespace by Peter Damoc |
| 12 | |
| 13 | """ |
| 14 | A configuration dialog (frame actually) for the AnalogClockWindow |
| 15 | """ |
| 16 | |
| 17 | |
| 18 | import wx |
| 19 | import wx.lib.colourselect as csel |
| 20 | import wx.lib.dialogs as dlgs |
| 21 | import string |
| 22 | |
| 23 | class ACCustomizationFrame(wx.Frame): |
| 24 | def __init__(self, parent, id, name, pos=wx.DefaultPosition, size=wx.DefaultSize, |
| 25 | style=wx.DEFAULT_FRAME_STYLE | wx.FRAME_NO_TASKBAR | wx.FRAME_FLOAT_ON_PARENT | wx.WANTS_CHARS): |
| 26 | # k=wx.NewId();ide=map(lambda x: x+k, range(0,100)) |
| 27 | ide = [wx.NewId() for i in range(100)] |
| 28 | |
| 29 | #kwds["style"] = wx.CAPTION|wx.SYSTEM_MENU |
| 30 | #wx.Frame.__init__(self, *args, **kwds) |
| 31 | wx.Frame.__init__(self, parent, id, name, pos, size, style) |
| 32 | self.parent=parent |
| 33 | self.panel_1 = wx.Panel(self, -1) |
| 34 | self.notebook_1 = wx.Notebook(self.panel_1, -1, style=0) |
| 35 | self.notebook_1_pane_3 = wx.Panel(self.notebook_1, -1) |
| 36 | self.notebook_1_pane_2 = wx.Panel(self.notebook_1, -1) |
| 37 | self.notebook_1_pane_1 = wx.Panel(self.notebook_1, -1) |
| 38 | self.label_top = wx.StaticText(self.panel_1, -1, "Use the options below to change the clock;\nthe main buttons on top of each category reset to its defaults.") |
| 39 | self.static_line_1 = wx.StaticLine(self.panel_1, -1) |
| 40 | self.button_1 = wx.Button(self.notebook_1_pane_1, ide[1], "SetClockStyle") |
| 41 | self.static_line_2 = wx.StaticLine(self.notebook_1_pane_1, -1) |
| 42 | self.button_2 = wx.Button(self.notebook_1_pane_1, ide[3], "styles...") |
| 43 | self.static_line_3 = wx.StaticLine(self.notebook_1_pane_1, -1, style=wx.LI_VERTICAL) |
| 44 | self.button_3 = wx.Button(self.notebook_1_pane_1, ide[2], "SetTickStyles") |
| 45 | self.static_line_4 = wx.StaticLine(self.notebook_1_pane_1, -1) |
| 46 | self.button_4 = wx.Button(self.notebook_1_pane_1, ide[4], "styles...") |
| 47 | self.button_22 = wx.Button(self.notebook_1_pane_1, ide[22], "minutes...") |
| 48 | self.static_line_5 = wx.StaticLine(self.notebook_1_pane_1, -1) |
| 49 | self.button_5 = wx.Button(self.notebook_1_pane_1, ide[5], "SetShadowColour") |
| 50 | self.static_line_6 = wx.StaticLine(self.notebook_1_pane_1, -1) |
| 51 | self.button_6 = csel.ColourSelect(self.notebook_1_pane_1, ide[6], "all...") |
| 52 | self.static_line_7 = wx.StaticLine(self.notebook_1_pane_1, -1, style=wx.LI_VERTICAL) |
| 53 | self.button_7 = wx.Button(self.notebook_1_pane_1, ide[7], "SetWatchPenBrush") |
| 54 | self.static_line_8 = wx.StaticLine(self.notebook_1_pane_1, -1) |
| 55 | self.button_8 = csel.ColourSelect(self.notebook_1_pane_1, ide[8], "Pen colour...") |
| 56 | self.button_9 = csel.ColourSelect(self.notebook_1_pane_1, ide[9], "Brush colour...") |
| 57 | self.button_10 = wx.Button(self.notebook_1_pane_2, ide[10], "SetTickColours") |
| 58 | self.static_line_8 = wx.StaticLine(self.notebook_1_pane_2, -1) |
| 59 | self.button_11 = csel.ColourSelect(self.notebook_1_pane_2, ide[11], "hours...", colour=self.parent.tickMarkHoursPen.GetColour()) |
| 60 | self.button_12 = csel.ColourSelect(self.notebook_1_pane_2, ide[12], "minutes...", colour=self.parent.tickMarkMinutesPen.GetColour()) |
| 61 | self.static_line_10 = wx.StaticLine(self.notebook_1_pane_2, -1, style=wx.LI_VERTICAL) |
| 62 | self.button_13 = wx.Button(self.notebook_1_pane_2, ide[13], "SetTickSizes") |
| 63 | self.static_line_11 = wx.StaticLine(self.notebook_1_pane_2, -1) |
| 64 | self.label_1 = wx.StaticText(self.notebook_1_pane_2, -1, "hours") |
| 65 | self.spin_ctrl_1 = wx.SpinCtrl(self.notebook_1_pane_2, ide[71], "10", min=1, max=100) |
| 66 | self.label_2 = wx.StaticText(self.notebook_1_pane_2, -1, "minutes") |
| 67 | self.spin_ctrl_2 = wx.SpinCtrl(self.notebook_1_pane_2, ide[72], "5", min=0, max=100) |
| 68 | self.label_3 = wx.StaticText(self.notebook_1_pane_2, -1, "offset") |
| 69 | self.spin_ctrl_3 = wx.SpinCtrl(self.notebook_1_pane_2, ide[73], "0", min=0, max=100) |
| 70 | self.static_line_12 = wx.StaticLine(self.notebook_1_pane_2, -1, style=wx.LI_VERTICAL) |
| 71 | self.button_14 = wx.Button(self.notebook_1_pane_2, ide[14], "SetTickFonts") |
| 72 | self.static_line_13 = wx.StaticLine(self.notebook_1_pane_2, -1) |
| 73 | self.button_15 = wx.Button(self.notebook_1_pane_2, ide[15], "hours...") |
| 74 | self.button_16 = wx.Button(self.notebook_1_pane_2, ide[16], "minutes...") |
| 75 | self.button_17 = wx.Button(self.notebook_1_pane_3, ide[17], "SetHandWeights") |
| 76 | self.static_line_14 = wx.StaticLine(self.notebook_1_pane_3, -1) |
| 77 | self.label_4 = wx.StaticText(self.notebook_1_pane_3, -1, "hours") |
| 78 | self.spin_ctrl_4 = wx.SpinCtrl(self.notebook_1_pane_3, ide[74], "5", min=0, max=100) |
| 79 | self.label_5 = wx.StaticText(self.notebook_1_pane_3, -1, "minutes") |
| 80 | self.spin_ctrl_5 = wx.SpinCtrl(self.notebook_1_pane_3, ide[75], "3", min=0, max=100) |
| 81 | self.label_6 = wx.StaticText(self.notebook_1_pane_3, -1, "seconds") |
| 82 | self.spin_ctrl_6 = wx.SpinCtrl(self.notebook_1_pane_3, ide[76], "1", min=0, max=100) |
| 83 | self.static_line_15 = wx.StaticLine(self.notebook_1_pane_3, -1, style=wx.LI_VERTICAL) |
| 84 | self.button_18 = wx.Button(self.notebook_1_pane_3, ide[18], "SetHandColours") |
| 85 | self.static_line_16 = wx.StaticLine(self.notebook_1_pane_3, -1) |
| 86 | self.button_19 = csel.ColourSelect(self.notebook_1_pane_3, ide[19], "hours...") |
| 87 | self.button_20 = csel.ColourSelect(self.notebook_1_pane_3, ide[20], "minutes...") |
| 88 | self.button_21 = csel.ColourSelect(self.notebook_1_pane_3, ide[21], "seconds...") |
| 89 | |
| 90 | self.__set_properties() |
| 91 | self.__do_layout() |
| 92 | |
| 93 | |
| 94 | self.Bind(wx.EVT_BUTTON, self.OnEventsHook, id=ide[0], id2=ide[29]) |
| 95 | self.Bind(csel.EVT_COLOURSELECT, self.OnEventsHook, id=ide[0], id2=ide[29]) |
| 96 | self.Bind(wx.EVT_SPINCTRL, self.OnEventsHook, id=ide[71], id2=ide[80]) |
| 97 | self.Bind(wx.EVT_RADIOBUTTON, self.OnEventsHook, id=ide[51], id2=ide[60]) |
| 98 | self.Bind(wx.EVT_WINDOW_DESTROY, self.OnQuit) |
| 99 | |
| 100 | self.ide=ide |
| 101 | |
| 102 | def __set_properties(self): |
| 103 | #self.SetTitle("AnalogClock Test") |
| 104 | self.spin_ctrl_1.SetSize((50, -1)) |
| 105 | self.spin_ctrl_2.SetSize((50, -1)) |
| 106 | self.spin_ctrl_3.SetSize((50, -1)) |
| 107 | self.spin_ctrl_4.SetSize((50, -1)) |
| 108 | self.spin_ctrl_5.SetSize((50, -1)) |
| 109 | self.spin_ctrl_6.SetSize((50, -1)) |
| 110 | |
| 111 | |
| 112 | def __do_layout(self): |
| 113 | sizer_frame = wx.BoxSizer(wx.HORIZONTAL) |
| 114 | sizer_main = wx.BoxSizer(wx.VERTICAL) |
| 115 | sizer_25 = wx.BoxSizer(wx.HORIZONTAL) |
| 116 | sizer_26 = wx.StaticBoxSizer(wx.StaticBox(self.notebook_1_pane_3, -1, ""), wx.VERTICAL) |
| 117 | sizer_27 = wx.BoxSizer(wx.HORIZONTAL) |
| 118 | sizer_31 = wx.BoxSizer(wx.VERTICAL) |
| 119 | sizer_33 = wx.BoxSizer(wx.HORIZONTAL) |
| 120 | sizer_32 = wx.BoxSizer(wx.HORIZONTAL) |
| 121 | sizer_28 = wx.BoxSizer(wx.VERTICAL) |
| 122 | sizer_30 = wx.BoxSizer(wx.HORIZONTAL) |
| 123 | sizer_29 = wx.BoxSizer(wx.HORIZONTAL) |
| 124 | sizer_12 = wx.BoxSizer(wx.HORIZONTAL) |
| 125 | sizer_13 = wx.StaticBoxSizer(wx.StaticBox(self.notebook_1_pane_2, -1, ""), wx.VERTICAL) |
| 126 | sizer_14 = wx.BoxSizer(wx.HORIZONTAL) |
| 127 | sizer_22 = wx.BoxSizer(wx.VERTICAL) |
| 128 | sizer_24 = wx.BoxSizer(wx.HORIZONTAL) |
| 129 | sizer_23 = wx.BoxSizer(wx.HORIZONTAL) |
| 130 | sizer_18 = wx.BoxSizer(wx.VERTICAL) |
| 131 | sizer_21 = wx.BoxSizer(wx.HORIZONTAL) |
| 132 | sizer_20 = wx.BoxSizer(wx.HORIZONTAL) |
| 133 | sizer_19 = wx.BoxSizer(wx.HORIZONTAL) |
| 134 | sizer_15 = wx.BoxSizer(wx.VERTICAL) |
| 135 | sizer_17 = wx.BoxSizer(wx.HORIZONTAL) |
| 136 | sizer_16 = wx.BoxSizer(wx.HORIZONTAL) |
| 137 | sizer_1 = wx.BoxSizer(wx.HORIZONTAL) |
| 138 | sizer_2 = wx.StaticBoxSizer(wx.StaticBox(self.notebook_1_pane_1, -1, ""), wx.VERTICAL) |
| 139 | sizer_8 = wx.BoxSizer(wx.HORIZONTAL) |
| 140 | sizer_11 = wx.BoxSizer(wx.VERTICAL) |
| 141 | sizer_12b = wx.BoxSizer(wx.HORIZONTAL) |
| 142 | sizer_9 = wx.BoxSizer(wx.VERTICAL) |
| 143 | sizer_10 = wx.BoxSizer(wx.HORIZONTAL) |
| 144 | sizer_3 = wx.BoxSizer(wx.HORIZONTAL) |
| 145 | sizer_6 = wx.BoxSizer(wx.VERTICAL) |
| 146 | sizer_7 = wx.BoxSizer(wx.HORIZONTAL) |
| 147 | sizer_4 = wx.BoxSizer(wx.VERTICAL) |
| 148 | sizer_5 = wx.BoxSizer(wx.HORIZONTAL) |
| 149 | sizer_main.Add(self.label_top, 0, wx.LEFT|wx.TOP, 5) |
| 150 | sizer_main.Add(self.static_line_1, 0, wx.TOP|wx.BOTTOM|wx.EXPAND, 10) |
| 151 | sizer_4.Add(self.button_1, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 152 | sizer_4.Add(self.static_line_2, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 153 | sizer_5.Add(self.button_2, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 154 | sizer_4.Add(sizer_5, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 155 | sizer_3.Add(sizer_4, 1, wx.EXPAND, 0) |
| 156 | sizer_3.Add(self.static_line_3, 0, wx.EXPAND, 0) |
| 157 | sizer_6.Add(self.button_3, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 158 | sizer_6.Add(self.static_line_4, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 159 | sizer_7.Add(self.button_4, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 160 | sizer_7.Add(self.button_22, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 161 | sizer_6.Add(sizer_7, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 162 | sizer_3.Add(sizer_6, 1, wx.EXPAND, 0) |
| 163 | sizer_2.Add(sizer_3, 1, wx.EXPAND, 0) |
| 164 | sizer_2.Add(self.static_line_5, 0, wx.EXPAND, 0) |
| 165 | sizer_9.Add(self.button_5, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 166 | sizer_9.Add(self.static_line_6, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 167 | sizer_10.Add(self.button_6, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 168 | sizer_9.Add(sizer_10, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 169 | sizer_8.Add(sizer_9, 1, wx.EXPAND, 0) |
| 170 | sizer_8.Add(self.static_line_7, 0, wx.EXPAND, 0) |
| 171 | sizer_11.Add(self.button_7, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 172 | sizer_11.Add(self.static_line_8, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 173 | sizer_12b.Add(self.button_8, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 174 | sizer_12b.Add(self.button_9, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 175 | sizer_11.Add(sizer_12b, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 176 | sizer_8.Add(sizer_11, 1, wx.EXPAND, 0) |
| 177 | sizer_2.Add(sizer_8, 1, wx.EXPAND, 0) |
| 178 | sizer_1.Add(sizer_2, 1, wx.EXPAND, 0) |
| 179 | self.notebook_1_pane_1.SetAutoLayout(1) |
| 180 | self.notebook_1_pane_1.SetSizer(sizer_1) |
| 181 | sizer_1.Fit(self.notebook_1_pane_1) |
| 182 | sizer_1.SetSizeHints(self.notebook_1_pane_1) |
| 183 | sizer_15.Add(self.button_10, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 184 | sizer_15.Add(self.static_line_8, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 185 | sizer_16.Add(self.button_11, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 186 | sizer_15.Add(sizer_16, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 187 | sizer_17.Add(self.button_12, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 188 | sizer_15.Add(sizer_17, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 189 | sizer_14.Add(sizer_15, 1, wx.EXPAND, 0) |
| 190 | sizer_14.Add(self.static_line_10, 0, wx.EXPAND, 0) |
| 191 | sizer_18.Add(self.button_13, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 192 | sizer_18.Add(self.static_line_11, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 193 | sizer_19.Add(self.label_1, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 194 | sizer_19.Add(self.spin_ctrl_1, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 195 | sizer_18.Add(sizer_19, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 196 | sizer_20.Add(self.label_2, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 197 | sizer_20.Add(self.spin_ctrl_2, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 198 | sizer_18.Add(sizer_20, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 199 | sizer_21.Add(self.label_3, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 200 | sizer_21.Add(self.spin_ctrl_3, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 201 | sizer_18.Add(sizer_21, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 202 | sizer_14.Add(sizer_18, 1, wx.EXPAND, 0) |
| 203 | sizer_14.Add(self.static_line_12, 0, wx.EXPAND, 0) |
| 204 | sizer_22.Add(self.button_14, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 205 | sizer_22.Add(self.static_line_13, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 206 | sizer_23.Add(self.button_15, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 207 | sizer_22.Add(sizer_23, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 208 | sizer_24.Add(self.button_16, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 209 | sizer_22.Add(sizer_24, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 210 | sizer_14.Add(sizer_22, 1, wx.EXPAND, 0) |
| 211 | sizer_13.Add(sizer_14, 1, wx.EXPAND, 0) |
| 212 | sizer_12.Add(sizer_13, 1, wx.EXPAND, 0) |
| 213 | self.notebook_1_pane_2.SetAutoLayout(1) |
| 214 | self.notebook_1_pane_2.SetSizer(sizer_12) |
| 215 | sizer_12.Fit(self.notebook_1_pane_2) |
| 216 | sizer_12.SetSizeHints(self.notebook_1_pane_2) |
| 217 | sizer_28.Add(self.button_17, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 218 | sizer_28.Add(self.static_line_14, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 219 | sizer_29.Add(self.label_4, 0, wx.ALL|wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL, 5) |
| 220 | sizer_29.Add(self.spin_ctrl_4, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 221 | sizer_29.Add(self.label_5, 0, wx.ALL|wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL, 5) |
| 222 | sizer_29.Add(self.spin_ctrl_5, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 223 | sizer_28.Add(sizer_29, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 224 | sizer_30.Add(self.label_6, 0, wx.ALL|wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL, 5) |
| 225 | sizer_30.Add(self.spin_ctrl_6, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 226 | sizer_28.Add(sizer_30, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 227 | sizer_27.Add(sizer_28, 1, wx.EXPAND, 0) |
| 228 | sizer_27.Add(self.static_line_15, 0, wx.EXPAND, 0) |
| 229 | sizer_31.Add(self.button_18, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 230 | sizer_31.Add(self.static_line_16, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 20) |
| 231 | sizer_32.Add(self.button_19, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 232 | sizer_32.Add(self.button_20, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 233 | sizer_31.Add(sizer_32, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 234 | sizer_33.Add(self.button_21, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5) |
| 235 | sizer_31.Add(sizer_33, 1, wx.ALIGN_CENTER_HORIZONTAL, 0) |
| 236 | sizer_27.Add(sizer_31, 1, wx.EXPAND, 0) |
| 237 | sizer_26.Add(sizer_27, 1, wx.EXPAND, 0) |
| 238 | sizer_25.Add(sizer_26, 1, wx.EXPAND, 0) |
| 239 | self.notebook_1_pane_3.SetAutoLayout(1) |
| 240 | self.notebook_1_pane_3.SetSizer(sizer_25) |
| 241 | sizer_25.Fit(self.notebook_1_pane_3) |
| 242 | sizer_25.SetSizeHints(self.notebook_1_pane_3) |
| 243 | self.notebook_1.AddPage(self.notebook_1_pane_1, "Clock") |
| 244 | self.notebook_1.AddPage(self.notebook_1_pane_2, "Ticks") |
| 245 | self.notebook_1.AddPage(self.notebook_1_pane_3, "Hands") |
| 246 | sizer_main.Add(wx.NotebookSizer(self.notebook_1), 1, wx.LEFT|wx.RIGHT|wx.BOTTOM|wx.EXPAND, 5) |
| 247 | self.panel_1.SetAutoLayout(1) |
| 248 | self.panel_1.SetSizer(sizer_main) |
| 249 | sizer_main.Fit(self.panel_1) |
| 250 | sizer_main.SetSizeHints(self.panel_1) |
| 251 | sizer_frame.Add(self.panel_1, 1, wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0) |
| 252 | self.SetAutoLayout(1) |
| 253 | self.SetSizer(sizer_frame) |
| 254 | sizer_frame.Fit(self) |
| 255 | sizer_frame.SetSizeHints(self) |
| 256 | self.Layout() |
| 257 | self.UpdateWidgets() |
| 258 | |
| 259 | def UpdateAll(self): |
| 260 | self.UpdateWidgets() |
| 261 | self.parent.OnSize(None) |
| 262 | |
| 263 | def UpdateWidgets(self): |
| 264 | self.button_6.SetColour(self.parent.shadowPenColour) |
| 265 | |
| 266 | bc=self.parent.watchPen |
| 267 | if bc: |
| 268 | bc=bc.GetColour() |
| 269 | else: |
| 270 | bc=self.parent.GetBackgroundColour() |
| 271 | self.button_8.SetColour(bc) |
| 272 | |
| 273 | bc=self.parent.watchBrush |
| 274 | if bc: |
| 275 | bc=bc.GetColour() |
| 276 | else: |
| 277 | bc=self.parent.GetBackgroundColour() |
| 278 | self.button_9.SetColour(bc) |
| 279 | |
| 280 | self.button_11.SetColour(self.parent.tickMarkHoursPen.GetColour()) |
| 281 | self.button_12.SetColour(self.parent.tickMarkMinutesPen.GetColour()) |
| 282 | self.button_19.SetColour(self.parent.handHoursColour) |
| 283 | self.button_20.SetColour(self.parent.handMinutesColour) |
| 284 | self.button_21.SetColour(self.parent.handSecondsColour) |
| 285 | |
| 286 | self.spin_ctrl_1.SetValue(self.parent.markSizeHour) |
| 287 | self.spin_ctrl_2.SetValue(self.parent.markSizeMin) |
| 288 | self.spin_ctrl_3.SetValue(self.parent.offM) |
| 289 | self.spin_ctrl_4.SetValue(self.parent.handHoursThickness) |
| 290 | self.spin_ctrl_5.SetValue(self.parent.handMinutesThickness) |
| 291 | self.spin_ctrl_6.SetValue(self.parent.handSecondsThickness) |
| 292 | |
| 293 | |
| 294 | def gfid(self, id, lista): |
| 295 | return self.ide.index(id) in lista |
| 296 | # for x in lista: |
| 297 | # if id==self.ide[x]: |
| 298 | # f=True |
| 299 | # break |
| 300 | # else: |
| 301 | # f=False |
| 302 | # return f |
| 303 | |
| 304 | def OnEventsHook(self, evt): |
| 305 | id=evt.GetId() |
| 306 | |
| 307 | if self.gfid(id, [6,8,9,11,12,19,20,21,23]): |
| 308 | self.OnSelectColour(evt) |
| 309 | |
| 310 | elif self.gfid(id, [15,16]): |
| 311 | self.OnSelectFont(evt) |
| 312 | |
| 313 | elif self.gfid(id, [71,72,73,74,75,76]): |
| 314 | self.OnSpinChange(evt) |
| 315 | |
| 316 | elif self.gfid(id, [3,4,22]): |
| 317 | self.OnChangeStyle(evt) |
| 318 | |
| 319 | elif self.gfid(id, [1,2,5,7,10,13,14,17,18]): |
| 320 | self.OnDefaults(evt) |
| 321 | |
| 322 | def OnSelectColour(self, evt): |
| 323 | id=evt.GetId();colour=evt.GetValue() |
| 324 | |
| 325 | if id==self.ide[6]: |
| 326 | self.parent.SetShadowColour(colour) |
| 327 | elif id==self.ide[8]: |
| 328 | self.parent.SetWatchPenBrush(p=wx.Pen(colour, 1, wx.SOLID)) |
| 329 | elif id==self.ide[9]: |
| 330 | self.parent.SetWatchPenBrush(b=wx.Brush(colour, wx.SOLID)) |
| 331 | elif id==self.ide[11]: |
| 332 | self.parent.SetTickColours(h=colour) |
| 333 | elif id==self.ide[12]: |
| 334 | self.parent.SetTickColours(m=colour) |
| 335 | elif id==self.ide[19]: |
| 336 | self.parent.SetHandColours(h=colour) |
| 337 | elif id==self.ide[20]: |
| 338 | self.parent.SetHandColours(m=colour) |
| 339 | elif id==self.ide[21]: |
| 340 | self.parent.SetHandColours(s=colour) |
| 341 | |
| 342 | |
| 343 | self.UpdateAll() |
| 344 | |
| 345 | |
| 346 | |
| 347 | def OnSelectFont(self, evt): |
| 348 | id=evt.GetId() |
| 349 | if id==self.ide[15]: |
| 350 | font=self.parent.tickMarkHoursFont;font.SetPointSize(self.parent.markSizeHour) |
| 351 | colour=self.parent.tickMarkHoursPen.GetColour() |
| 352 | else: |
| 353 | font=self.parent.tickMarkMinutesFont;font.SetPointSize(self.parent.markSizeMin) |
| 354 | colour=self.parent.tickMarkMinutesPen.GetColour() |
| 355 | |
| 356 | data = wx.FontData() |
| 357 | data.EnableEffects(True) |
| 358 | data.SetColour(colour) |
| 359 | data.SetInitialFont(font) |
| 360 | |
| 361 | dlg = wx.FontDialog(self, data) |
| 362 | if dlg.ShowModal() == wx.ID_OK: |
| 363 | data = dlg.GetFontData() |
| 364 | font = data.GetChosenFont() |
| 365 | colour = data.GetColour() |
| 366 | if id==self.ide[15]: |
| 367 | self.parent.SetTickFonts(h=font) |
| 368 | self.parent.SetTickColours(h=colour.Get()) |
| 369 | else: |
| 370 | self.parent.SetTickFonts(m=font) |
| 371 | self.parent.SetTickColours(m=colour.Get()) |
| 372 | dlg.Destroy() |
| 373 | |
| 374 | self.UpdateAll() |
| 375 | |
| 376 | def OnSpinChange(self, evt): |
| 377 | id=evt.GetId();v=evt.GetInt() |
| 378 | if id==self.ide[71]: |
| 379 | self.parent.SetTickSizes(h=v) |
| 380 | if id==self.ide[72]: |
| 381 | self.parent.SetTickSizes(m=v) |
| 382 | if id==self.ide[73]: |
| 383 | self.parent.SetMinutesOffset(v) |
| 384 | if id==self.ide[74]: |
| 385 | self.parent.SetHandWeights(h=v) |
| 386 | if id==self.ide[75]: |
| 387 | self.parent.SetHandWeights(m=v) |
| 388 | if id==self.ide[76]: |
| 389 | self.parent.SetHandWeights(s=v) |
| 390 | |
| 391 | self.UpdateAll() |
| 392 | |
| 393 | def OnChangeStyle(self, evt): |
| 394 | id=evt.GetId() |
| 395 | |
| 396 | if id==self.ide[3]: |
| 397 | x="""SHOW_QUARTERS_TICKS |
| 398 | SHOW_HOURS_TICKS |
| 399 | SHOW_MINUTES_TICKS |
| 400 | ROTATE_TICKS |
| 401 | SHOW_HOURS_HAND |
| 402 | SHOW_MINUTES_HAND |
| 403 | SHOW_SECONDS_HAND |
| 404 | SHOW_SHADOWS |
| 405 | OVERLAP_TICKS""".split() |
| 406 | m=map(lambda f: (self.parent.clockStyle & f)/f, map(lambda f: 2**x.index(f),x)) |
| 407 | |
| 408 | dlg = dlgs.MultipleChoiceDialog(self, |
| 409 | "Select some styles for the clock:", |
| 410 | "Styles", x) |
| 411 | for i in range(0,len(m)): |
| 412 | if m[i]: |
| 413 | dlg.lbox.SetSelection(i) |
| 414 | |
| 415 | if (dlg.ShowModal() == wx.ID_OK): |
| 416 | v=reduce(lambda x,y:x+y,map(lambda f: 2**f,dlg.GetValue())) |
| 417 | self.parent.SetClockStyle(v) |
| 418 | |
| 419 | elif id==self.ide[4]: |
| 420 | x="""TICKS_NONE |
| 421 | TICKS_SQUARE |
| 422 | TICKS_CIRCLE |
| 423 | TICKS_POLY |
| 424 | TICKS_DECIMAL |
| 425 | TICKS_ROMAN""".split() |
| 426 | m=map(lambda f: (self.parent.tickMarkHoursStyle & f)/f, map(lambda f: 2**x.index(f),x)) |
| 427 | |
| 428 | dlg = wx.SingleChoiceDialog(self, |
| 429 | "Select a style for the hours:", |
| 430 | "Styles", x, wx.CHOICEDLG_STYLE) |
| 431 | for i in range(0,len(m)): |
| 432 | if m[i]: |
| 433 | dlg.SetSelection(i) |
| 434 | |
| 435 | if dlg.ShowModal() == wx.ID_OK: |
| 436 | v=2**dlg.GetSelection() |
| 437 | self.parent.SetTickStyles(h=v) |
| 438 | dlg.Destroy() |
| 439 | |
| 440 | elif id==self.ide[22]: |
| 441 | tipo="for the minutes" |
| 442 | x="""TICKS_NONE |
| 443 | TICKS_SQUARE |
| 444 | TICKS_CIRCLE |
| 445 | TICKS_POLY |
| 446 | TICKS_DECIMAL |
| 447 | TICKS_ROMAN""".split() |
| 448 | m=map(lambda f: (self.parent.tickMarkMinutesStyle & f)/f, map(lambda f: 2**x.index(f),x)) |
| 449 | |
| 450 | dlg = wx.SingleChoiceDialog(self, |
| 451 | "Select a style for the minutes:", |
| 452 | "Styles", x, wx.CHOICEDLG_STYLE) |
| 453 | for i in range(0,len(m)): |
| 454 | if m[i]: |
| 455 | dlg.SetSelection(i) |
| 456 | |
| 457 | if dlg.ShowModal() == wx.ID_OK: |
| 458 | v=2**dlg.GetSelection() |
| 459 | self.parent.SetTickStyles(m=v) |
| 460 | dlg.Destroy() |
| 461 | |
| 462 | self.UpdateAll() |
| 463 | |
| 464 | def OnDefaults(self, evt): |
| 465 | id=evt.GetId() |
| 466 | if id==self.ide[1]: |
| 467 | self.parent.SetClockStyle(142) |
| 468 | elif id==self.ide[2]: |
| 469 | self.parent.SetTickStyles(8, 4) |
| 470 | elif id==self.ide[5]: |
| 471 | self.parent.SetShadowColour((128,128,128)) |
| 472 | elif id==self.ide[7]: |
| 473 | colour=self.parent.GetBackgroundColour() |
| 474 | self.parent.SetWatchPenBrush(p=wx.Pen(colour, 1, wx.SOLID), b=wx.Brush(colour, wx.SOLID)) |
| 475 | elif id==self.ide[10]: |
| 476 | colour=(0, 0, 0) |
| 477 | self.parent.SetTickColours(h=colour, m=colour) |
| 478 | elif id==self.ide[13]: |
| 479 | self.parent.SetTickSizes(h=10, m=5) |
| 480 | self.parent.SetMinutesOffset(0) |
| 481 | elif id==self.ide[14]: |
| 482 | self.parent.SetTickFonts(wx.Font(1, wx.SWISS, wx.NORMAL, wx.BOLD)) |
| 483 | elif id==self.ide[17]: |
| 484 | self.parent.SetHandWeights(h=5, m=3, s=1) |
| 485 | elif id==self.ide[18]: |
| 486 | colour=(0, 0, 0) |
| 487 | self.parent.SetHandColours(h=colour, m=colour, s=colour) |
| 488 | |
| 489 | self.UpdateAll() |
| 490 | |
| 491 | |
| 492 | def OnQuit(self, evt): |
| 493 | self.parent.prefs_open=False |
| 494 | |
| 495 | |
| 496 | # |
| 497 | ## |
| 498 | ### eof |
| 499 | |
| 500 | |
| 501 | |