#---------------------------------------------------------------------- # Name: wxPython.lib.YAanalogclockOpts # Purpose: An analog clock window - setup frame # # Author: E. A. Tacao # # Created: 15-February-2004 #---------------------------------------------------------------------- # generated by wxGlade 0.3.1 on Wed Feb 18 00:05:35 2004 from wxPython.wx import * from wxPython.lib.dialogs import wxMultipleChoiceDialog from wxPython.lib.colourselect import ColourSelect, wxEVT_COMMAND_COLOURSELECT import string class ACCustomizationFrame(wxFrame): def __init__(self, parent, id, name, pos=wxDefaultPosition, size=wxDefaultSize, style=wxDEFAULT_FRAME_STYLE | wxFRAME_NO_TASKBAR | wxFRAME_FLOAT_ON_PARENT | wxWANTS_CHARS): k=wxNewId();ide=map(lambda x: x+k, range(0,100)) # begin wxGlade: ACCustomizationFrame.__init__ #kwds["style"] = wxCAPTION|wxSYSTEM_MENU #wxFrame.__init__(self, *args, **kwds) wxFrame.__init__(self, parent, id, name, pos, size, style) self.parent=parent self.panel_1 = wxPanel(self, -1) self.notebook_1 = wxNotebook(self.panel_1, -1, style=0) self.notebook_1_pane_3 = wxPanel(self.notebook_1, -1) self.notebook_1_pane_2 = wxPanel(self.notebook_1, -1) self.notebook_1_pane_1 = wxPanel(self.notebook_1, -1) self.label_top = wxStaticText(self.panel_1, -1, "Use the options below to change the clock;\nthe main buttons on top of each category reset to its defaults.") self.static_line_1 = wxStaticLine(self.panel_1, -1) self.button_1 = wxButton(self.notebook_1_pane_1, ide[1], "SetClockStyle") self.static_line_2 = wxStaticLine(self.notebook_1_pane_1, -1) self.button_2 = wxButton(self.notebook_1_pane_1, ide[3], "styles...") self.static_line_3 = wxStaticLine(self.notebook_1_pane_1, -1, style=wxLI_VERTICAL) self.button_3 = wxButton(self.notebook_1_pane_1, ide[2], "SetTickStyles") self.static_line_4 = wxStaticLine(self.notebook_1_pane_1, -1) self.button_4 = wxButton(self.notebook_1_pane_1, ide[4], "styles...") self.button_22 = wxButton(self.notebook_1_pane_1, ide[22], "minutes...") self.static_line_5 = wxStaticLine(self.notebook_1_pane_1, -1) self.button_5 = wxButton(self.notebook_1_pane_1, ide[5], "SetShadowColour") self.static_line_6 = wxStaticLine(self.notebook_1_pane_1, -1) self.button_6 = ColourSelect(self.notebook_1_pane_1, ide[6], "all...") self.static_line_7 = wxStaticLine(self.notebook_1_pane_1, -1, style=wxLI_VERTICAL) self.button_7 = wxButton(self.notebook_1_pane_1, ide[7], "SetWatchPenBrush") self.static_line_8 = wxStaticLine(self.notebook_1_pane_1, -1) self.button_8 = ColourSelect(self.notebook_1_pane_1, ide[8], "Pen colour...") self.button_9 = ColourSelect(self.notebook_1_pane_1, ide[9], "Brush colour...") self.button_10 = wxButton(self.notebook_1_pane_2, ide[10], "SetTickColours") self.static_line_8 = wxStaticLine(self.notebook_1_pane_2, -1) self.button_11 = ColourSelect(self.notebook_1_pane_2, ide[11], "hours...", colour=self.parent.tickMarkHoursPen.GetColour()) self.button_12 = ColourSelect(self.notebook_1_pane_2, ide[12], "minutes...", colour=self.parent.tickMarkMinutesPen.GetColour()) self.static_line_10 = wxStaticLine(self.notebook_1_pane_2, -1, style=wxLI_VERTICAL) self.button_13 = wxButton(self.notebook_1_pane_2, ide[13], "SetTickSizes") self.static_line_11 = wxStaticLine(self.notebook_1_pane_2, -1) self.label_1 = wxStaticText(self.notebook_1_pane_2, -1, "hours") self.spin_ctrl_1 = wxSpinCtrl(self.notebook_1_pane_2, ide[71], "10", min=1, max=100) self.label_2 = wxStaticText(self.notebook_1_pane_2, -1, "minutes") self.spin_ctrl_2 = wxSpinCtrl(self.notebook_1_pane_2, ide[72], "5", min=0, max=100) self.label_3 = wxStaticText(self.notebook_1_pane_2, -1, "offset") self.spin_ctrl_3 = wxSpinCtrl(self.notebook_1_pane_2, ide[73], "0", min=0, max=100) self.static_line_12 = wxStaticLine(self.notebook_1_pane_2, -1, style=wxLI_VERTICAL) self.button_14 = wxButton(self.notebook_1_pane_2, ide[14], "SetTickFonts") self.static_line_13 = wxStaticLine(self.notebook_1_pane_2, -1) self.button_15 = wxButton(self.notebook_1_pane_2, ide[15], "hours...") self.button_16 = wxButton(self.notebook_1_pane_2, ide[16], "minutes...") self.button_17 = wxButton(self.notebook_1_pane_3, ide[17], "SetHandWeights") self.static_line_14 = wxStaticLine(self.notebook_1_pane_3, -1) self.label_4 = wxStaticText(self.notebook_1_pane_3, -1, "hours") self.spin_ctrl_4 = wxSpinCtrl(self.notebook_1_pane_3, ide[74], "5", min=0, max=100) self.label_5 = wxStaticText(self.notebook_1_pane_3, -1, "minutes") self.spin_ctrl_5 = wxSpinCtrl(self.notebook_1_pane_3, ide[75], "3", min=0, max=100) self.label_6 = wxStaticText(self.notebook_1_pane_3, -1, "seconds") self.spin_ctrl_6 = wxSpinCtrl(self.notebook_1_pane_3, ide[76], "1", min=0, max=100) self.static_line_15 = wxStaticLine(self.notebook_1_pane_3, -1, style=wxLI_VERTICAL) self.button_18 = wxButton(self.notebook_1_pane_3, ide[18], "SetHandColours") self.static_line_16 = wxStaticLine(self.notebook_1_pane_3, -1) self.button_19 = ColourSelect(self.notebook_1_pane_3, ide[19], "hours...") self.button_20 = ColourSelect(self.notebook_1_pane_3, ide[20], "minutes...") self.button_21 = ColourSelect(self.notebook_1_pane_3, ide[21], "seconds...") self.__set_properties() self.__do_layout() # end wxGlade EVT_COMMAND_RANGE(self, ide[0], ide[29], wxEVT_COMMAND_BUTTON_CLICKED, self.OnEventsHook) EVT_COMMAND_RANGE(self, ide[0], ide[29], wxEVT_COMMAND_COLOURSELECT, self.OnEventsHook) EVT_COMMAND_RANGE(self, ide[71], ide[80], wxEVT_COMMAND_SPINCTRL_UPDATED, self.OnEventsHook) EVT_COMMAND_RANGE(self, ide[51], ide[60], wxEVT_COMMAND_RADIOBUTTON_SELECTED, self.OnEventsHook) EVT_WINDOW_DESTROY(self, self.OnQuit) self.ide=ide def __set_properties(self): # begin wxGlade: ACCustomizationFrame.__set_properties #self.SetTitle("AnalogClock Test") self.spin_ctrl_1.SetSize((50, -1)) self.spin_ctrl_2.SetSize((50, -1)) self.spin_ctrl_3.SetSize((50, -1)) self.spin_ctrl_4.SetSize((50, -1)) self.spin_ctrl_5.SetSize((50, -1)) self.spin_ctrl_6.SetSize((50, -1)) # end wxGlade def __do_layout(self): # begin wxGlade: ACCustomizationFrame.__do_layout sizer_frame = wxBoxSizer(wxHORIZONTAL) sizer_main = wxBoxSizer(wxVERTICAL) sizer_25 = wxBoxSizer(wxHORIZONTAL) sizer_26 = wxStaticBoxSizer(wxStaticBox(self.notebook_1_pane_3, -1, ""), wxVERTICAL) sizer_27 = wxBoxSizer(wxHORIZONTAL) sizer_31 = wxBoxSizer(wxVERTICAL) sizer_33 = wxBoxSizer(wxHORIZONTAL) sizer_32 = wxBoxSizer(wxHORIZONTAL) sizer_28 = wxBoxSizer(wxVERTICAL) sizer_30 = wxBoxSizer(wxHORIZONTAL) sizer_29 = wxBoxSizer(wxHORIZONTAL) sizer_12 = wxBoxSizer(wxHORIZONTAL) sizer_13 = wxStaticBoxSizer(wxStaticBox(self.notebook_1_pane_2, -1, ""), wxVERTICAL) sizer_14 = wxBoxSizer(wxHORIZONTAL) sizer_22 = wxBoxSizer(wxVERTICAL) sizer_24 = wxBoxSizer(wxHORIZONTAL) sizer_23 = wxBoxSizer(wxHORIZONTAL) sizer_18 = wxBoxSizer(wxVERTICAL) sizer_21 = wxBoxSizer(wxHORIZONTAL) sizer_20 = wxBoxSizer(wxHORIZONTAL) sizer_19 = wxBoxSizer(wxHORIZONTAL) sizer_15 = wxBoxSizer(wxVERTICAL) sizer_17 = wxBoxSizer(wxHORIZONTAL) sizer_16 = wxBoxSizer(wxHORIZONTAL) sizer_1 = wxBoxSizer(wxHORIZONTAL) sizer_2 = wxStaticBoxSizer(wxStaticBox(self.notebook_1_pane_1, -1, ""), wxVERTICAL) sizer_8 = wxBoxSizer(wxHORIZONTAL) sizer_11 = wxBoxSizer(wxVERTICAL) sizer_12b = wxBoxSizer(wxHORIZONTAL) sizer_9 = wxBoxSizer(wxVERTICAL) sizer_10 = wxBoxSizer(wxHORIZONTAL) sizer_3 = wxBoxSizer(wxHORIZONTAL) sizer_6 = wxBoxSizer(wxVERTICAL) sizer_7 = wxBoxSizer(wxHORIZONTAL) sizer_4 = wxBoxSizer(wxVERTICAL) sizer_5 = wxBoxSizer(wxHORIZONTAL) sizer_main.Add(self.label_top, 0, wxLEFT|wxTOP, 5) sizer_main.Add(self.static_line_1, 0, wxTOP|wxBOTTOM|wxEXPAND, 10) sizer_4.Add(self.button_1, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_4.Add(self.static_line_2, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_5.Add(self.button_2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_4.Add(sizer_5, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_3.Add(sizer_4, 1, wxEXPAND, 0) sizer_3.Add(self.static_line_3, 0, wxEXPAND, 0) sizer_6.Add(self.button_3, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_6.Add(self.static_line_4, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_7.Add(self.button_4, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_7.Add(self.button_22, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_6.Add(sizer_7, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_3.Add(sizer_6, 1, wxEXPAND, 0) sizer_2.Add(sizer_3, 1, wxEXPAND, 0) sizer_2.Add(self.static_line_5, 0, wxEXPAND, 0) sizer_9.Add(self.button_5, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_9.Add(self.static_line_6, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_10.Add(self.button_6, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_9.Add(sizer_10, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_8.Add(sizer_9, 1, wxEXPAND, 0) sizer_8.Add(self.static_line_7, 0, wxEXPAND, 0) sizer_11.Add(self.button_7, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_11.Add(self.static_line_8, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_12b.Add(self.button_8, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_12b.Add(self.button_9, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_11.Add(sizer_12b, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_8.Add(sizer_11, 1, wxEXPAND, 0) sizer_2.Add(sizer_8, 1, wxEXPAND, 0) sizer_1.Add(sizer_2, 1, wxEXPAND, 0) self.notebook_1_pane_1.SetAutoLayout(1) self.notebook_1_pane_1.SetSizer(sizer_1) sizer_1.Fit(self.notebook_1_pane_1) sizer_1.SetSizeHints(self.notebook_1_pane_1) sizer_15.Add(self.button_10, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_15.Add(self.static_line_8, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_16.Add(self.button_11, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_15.Add(sizer_16, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_17.Add(self.button_12, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_15.Add(sizer_17, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_14.Add(sizer_15, 1, wxEXPAND, 0) sizer_14.Add(self.static_line_10, 0, wxEXPAND, 0) sizer_18.Add(self.button_13, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_18.Add(self.static_line_11, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_19.Add(self.label_1, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_19.Add(self.spin_ctrl_1, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_18.Add(sizer_19, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_20.Add(self.label_2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_20.Add(self.spin_ctrl_2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_18.Add(sizer_20, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_21.Add(self.label_3, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_21.Add(self.spin_ctrl_3, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_18.Add(sizer_21, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_14.Add(sizer_18, 1, wxEXPAND, 0) sizer_14.Add(self.static_line_12, 0, wxEXPAND, 0) sizer_22.Add(self.button_14, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_22.Add(self.static_line_13, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_23.Add(self.button_15, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_22.Add(sizer_23, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_24.Add(self.button_16, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_22.Add(sizer_24, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_14.Add(sizer_22, 1, wxEXPAND, 0) sizer_13.Add(sizer_14, 1, wxEXPAND, 0) sizer_12.Add(sizer_13, 1, wxEXPAND, 0) self.notebook_1_pane_2.SetAutoLayout(1) self.notebook_1_pane_2.SetSizer(sizer_12) sizer_12.Fit(self.notebook_1_pane_2) sizer_12.SetSizeHints(self.notebook_1_pane_2) sizer_28.Add(self.button_17, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_28.Add(self.static_line_14, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_29.Add(self.label_4, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5) sizer_29.Add(self.spin_ctrl_4, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_29.Add(self.label_5, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5) sizer_29.Add(self.spin_ctrl_5, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_28.Add(sizer_29, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_30.Add(self.label_6, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5) sizer_30.Add(self.spin_ctrl_6, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_28.Add(sizer_30, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_27.Add(sizer_28, 1, wxEXPAND, 0) sizer_27.Add(self.static_line_15, 0, wxEXPAND, 0) sizer_31.Add(self.button_18, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5) sizer_31.Add(self.static_line_16, 0, wxLEFT|wxRIGHT|wxEXPAND, 20) sizer_32.Add(self.button_19, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_32.Add(self.button_20, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_31.Add(sizer_32, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_33.Add(self.button_21, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5) sizer_31.Add(sizer_33, 1, wxALIGN_CENTER_HORIZONTAL, 0) sizer_27.Add(sizer_31, 1, wxEXPAND, 0) sizer_26.Add(sizer_27, 1, wxEXPAND, 0) sizer_25.Add(sizer_26, 1, wxEXPAND, 0) self.notebook_1_pane_3.SetAutoLayout(1) self.notebook_1_pane_3.SetSizer(sizer_25) sizer_25.Fit(self.notebook_1_pane_3) sizer_25.SetSizeHints(self.notebook_1_pane_3) self.notebook_1.AddPage(self.notebook_1_pane_1, "Clock") self.notebook_1.AddPage(self.notebook_1_pane_2, "Ticks") self.notebook_1.AddPage(self.notebook_1_pane_3, "Hands") sizer_main.Add(wxNotebookSizer(self.notebook_1), 1, wxLEFT|wxRIGHT|wxBOTTOM|wxEXPAND, 5) self.panel_1.SetAutoLayout(1) self.panel_1.SetSizer(sizer_main) sizer_main.Fit(self.panel_1) sizer_main.SetSizeHints(self.panel_1) sizer_frame.Add(self.panel_1, 1, wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 0) self.SetAutoLayout(1) self.SetSizer(sizer_frame) sizer_frame.Fit(self) sizer_frame.SetSizeHints(self) self.Layout() # end wxGlade self.UpdateWidgets() def UpdateAll(self): self.UpdateWidgets() self.parent.OnSize(None) def UpdateWidgets(self): self.button_6.SetColour(self.parent.shadowPenColour) bc=self.parent.watchPen if bc: bc=bc.GetColour() else: bc=self.parent.GetBackgroundColour() self.button_8.SetColour(bc) bc=self.parent.watchBrush if bc: bc=bc.GetColour() else: bc=self.parent.GetBackgroundColour() self.button_9.SetColour(bc) self.button_11.SetColour(self.parent.tickMarkHoursPen.GetColour()) self.button_12.SetColour(self.parent.tickMarkMinutesPen.GetColour()) self.button_19.SetColour(self.parent.handHoursColour) self.button_20.SetColour(self.parent.handMinutesColour) self.button_21.SetColour(self.parent.handSecondsColour) self.spin_ctrl_1.SetValue(self.parent.markSizeHour) self.spin_ctrl_2.SetValue(self.parent.markSizeMin) self.spin_ctrl_3.SetValue(self.parent.offM) self.spin_ctrl_4.SetValue(self.parent.handHoursThickness) self.spin_ctrl_5.SetValue(self.parent.handMinutesThickness) self.spin_ctrl_6.SetValue(self.parent.handSecondsThickness) def gfid(self, id, lista): for x in lista: if id==self.ide[x]: f=True break else: f=False return f def OnEventsHook(self, evt): id=evt.GetId() if self.gfid(id, [6,8,9,11,12,19,20,21,23]): self.OnSelectColour(evt) elif self.gfid(id, [15,16]): self.OnSelectFont(evt) elif self.gfid(id, [71,72,73,74,75,76]): self.OnSpinChange(evt) elif self.gfid(id, [3,4,22]): self.OnChangeStyle(evt) elif self.gfid(id, [1,2,5,7,10,13,14,17,18]): self.OnDefaults(evt) def OnSelectColour(self, evt): id=evt.GetId();colour=evt.GetValue() if id==self.ide[6]: self.parent.SetShadowColour(colour) elif id==self.ide[8]: self.parent.SetWatchPenBrush(p=wxPen(colour, 1, wxSOLID)) elif id==self.ide[9]: self.parent.SetWatchPenBrush(b=wxBrush(colour, wxSOLID)) elif id==self.ide[11]: self.parent.SetTickColours(h=colour) elif id==self.ide[12]: self.parent.SetTickColours(m=colour) elif id==self.ide[19]: self.parent.SetHandColours(h=colour) elif id==self.ide[20]: self.parent.SetHandColours(m=colour) elif id==self.ide[21]: self.parent.SetHandColours(s=colour) self.UpdateAll() def OnSelectFont(self, evt): id=evt.GetId() if id==self.ide[15]: font=self.parent.tickMarkHoursFont;font.SetPointSize(self.parent.markSizeHour) colour=self.parent.tickMarkHoursPen.GetColour() else: font=self.parent.tickMarkMinutesFont;font.SetPointSize(self.parent.markSizeMin) colour=self.parent.tickMarkMinutesPen.GetColour() data = wxFontData() data.EnableEffects(True) data.SetColour(colour) data.SetInitialFont(font) dlg = wxFontDialog(self, data) if dlg.ShowModal() == wxID_OK: data = dlg.GetFontData() font = data.GetChosenFont() colour = data.GetColour() if id==self.ide[15]: self.parent.SetTickFonts(h=font) self.parent.SetTickColours(h=colour.Get()) else: self.parent.SetTickFonts(m=font) self.parent.SetTickColours(m=colour.Get()) dlg.Destroy() self.UpdateAll() def OnSpinChange(self, evt): id=evt.GetId();v=evt.GetInt() if id==self.ide[71]: self.parent.SetTickSizes(h=v) if id==self.ide[72]: self.parent.SetTickSizes(m=v) if id==self.ide[73]: self.parent.SetMinutesOffset(v) if id==self.ide[74]: self.parent.SetHandWeights(h=v) if id==self.ide[75]: self.parent.SetHandWeights(m=v) if id==self.ide[76]: self.parent.SetHandWeights(s=v) self.UpdateAll() def OnChangeStyle(self, evt): id=evt.GetId() if id==self.ide[3]: x="""SHOW_QUARTERS_TICKS SHOW_HOURS_TICKS SHOW_MINUTES_TICKS ROTATE_TICKS SHOW_HOURS_HAND SHOW_MINUTES_HAND SHOW_SECONDS_HAND SHOW_SHADOWS OVERLAP_TICKS""".split() m=map(lambda f: (self.parent.clockStyle & f)/f, map(lambda f: 2**x.index(f),x)) dlg = wxMultipleChoiceDialog(self, "Select some styles for the clock:", "Styles", x) for i in range(0,len(m)): if m[i]: dlg.lbox.SetSelection(i) if (dlg.ShowModal() == wxID_OK): v=reduce(lambda x,y:x+y,map(lambda f: 2**f,dlg.GetValue())) self.parent.SetClockStyle(v) elif id==self.ide[4]: x="""TICKS_NONE TICKS_SQUARE TICKS_CIRCLE TICKS_POLY TICKS_DECIMAL TICKS_ROMAN""".split() m=map(lambda f: (self.parent.tickMarkHoursStyle & f)/f, map(lambda f: 2**x.index(f),x)) dlg = wxSingleChoiceDialog(self, "Select a style for the hours:", "Styles", x, wxCHOICEDLG_STYLE) for i in range(0,len(m)): if m[i]: dlg.SetSelection(i) if dlg.ShowModal() == wxID_OK: v=2**dlg.GetSelection() self.parent.SetTickStyles(h=v) dlg.Destroy() elif id==self.ide[22]: tipo="for the minutes" x="""TICKS_NONE TICKS_SQUARE TICKS_CIRCLE TICKS_POLY TICKS_DECIMAL TICKS_ROMAN""".split() m=map(lambda f: (self.parent.tickMarkMinutesStyle & f)/f, map(lambda f: 2**x.index(f),x)) dlg = wxSingleChoiceDialog(self, "Select a style for the minutes:", "Styles", x, wxCHOICEDLG_STYLE) for i in range(0,len(m)): if m[i]: dlg.SetSelection(i) if dlg.ShowModal() == wxID_OK: v=2**dlg.GetSelection() self.parent.SetTickStyles(m=v) dlg.Destroy() self.UpdateAll() def OnDefaults(self, evt): id=evt.GetId() if id==self.ide[1]: self.parent.SetClockStyle(142) elif id==self.ide[2]: self.parent.SetTickStyles(8, 4) elif id==self.ide[5]: self.parent.SetShadowColour((128,128,128)) elif id==self.ide[7]: colour=self.parent.GetBackgroundColour() self.parent.SetWatchPenBrush(p=wxPen(colour, 1, wxSOLID), b=wxBrush(colour, wxSOLID)) elif id==self.ide[10]: colour=(0, 0, 0) self.parent.SetTickColours(h=colour, m=colour) elif id==self.ide[13]: self.parent.SetTickSizes(h=10, m=5) self.parent.SetMinutesOffset(0) elif id==self.ide[14]: self.parent.SetTickFonts(wxFont(1, wxSWISS, wxNORMAL, wxBOLD)) elif id==self.ide[17]: self.parent.SetHandWeights(h=5, m=3, s=1) elif id==self.ide[18]: colour=(0, 0, 0) self.parent.SetHandColours(h=colour, m=colour, s=colour) self.UpdateAll() def OnQuit(self, evt): self.parent.prefs_open=False # ## ### eof