long operator-(const wxDate &dt) const
{ return GetJulianDate() - dt.GetJulianDate(); }
- wxDate &operator+=(long i) { m_date += wxTimeSpan::Days(i); return *this; }
- wxDate &operator-=(long i) { m_date -= wxTimeSpan::Days(i); return *this; }
+ wxDate &operator+=(long i) { m_date += wxTimeSpan::Days((int)i); return *this; }
+ wxDate &operator-=(long i) { m_date -= wxTimeSpan::Days((int)i); return *this; }
wxDate &operator++() { return *this += 1; }
wxDate &operator++(int) { return *this += 1; }
wxDate Previous(int dayOfWeek) const
{
+ wxDate prev = *this;
int dow = GetDayOfWeek();
- if ( dayOfWeek <= dow )
- return *this - (dow - dayOfWeek);
- else
- return *this - 7 + (dayOfWeek - dow);
+ prev -= dayOfWeek > dow ? 7 - (dayOfWeek - dow) : dow - dayOfWeek;
+
+ return prev;
}
wxString FormatDate(int type = -1) const