wx.lib.calendar feels a little rusty overall... The main visible issue being that for most months, day numbers ends up in the wrong (day name) column: this is because the underlaying wx.lib.CDate.julianDay still uses the "old" division operator which in Python 3 results in rounding errors.
But the real question here is why we still have to rely on this old messy way of going through a manual calculation of the Julian day, only to know the weekday name: just ask datetime.datetime.weekday...
We should probably get rid of wx.lib.CDate once and for all, and just rely on datetime.date for wx.lib.Calendar.
Another, unrelated, issue is that key navigation across month boundaries fails because the event callback directly calls Calendar.DoDrawing, which results in attempting to create a wx.PaintDC outside a EVT_PAINT handler...
And then there are some minor annoyances here and there, like the "year" spin control in CalenDlg being capped at 2010 (it must have seemed a very distant future, back then!) and so on.
Is anyone already working on these things? Or maybe I could try to give a first stab at it myself...
wx.lib.calendar feels a little rusty overall... The main visible issue being that for most months, day numbers ends up in the wrong (day name) column: this is because the underlaying wx.lib.CDate.julianDay still uses the "old" division operator which in Python 3 results in rounding errors.
But the real question here is why we still have to rely on this old messy way of going through a manual calculation of the Julian day, only to know the weekday name: just ask datetime.datetime.weekday...
We should probably get rid of wx.lib.CDate once and for all, and just rely on datetime.date for wx.lib.Calendar.
Another, unrelated, issue is that key navigation across month boundaries fails because the event callback directly calls Calendar.DoDrawing, which results in attempting to create a wx.PaintDC outside a EVT_PAINT handler...
And then there are some minor annoyances here and there, like the "year" spin control in CalenDlg being capped at 2010 (it must have seemed a very distant future, back then!) and so on.
Is anyone already working on these things? Or maybe I could try to give a first stab at it myself...