wxString CompDateAxis::GetSpanLabel(wxDateTime date, wxDateSpan span) { int days = span.GetDays(); int weeks = span.GetWeeks(); int months = span.GetMonths(); int years = span.GetYears(); if (days != 0 && weeks == 0 && months == 0 && years == 0) { // days span int startDay = date.GetDay(); int endDay = startDay + days; wxDateTime::wxDateTime_t maxDay = wxDateTime::GetNumberOfDays(date.GetMonth(), date.GetYear()); if (endDay > maxDay) { endDay -= maxDay; } return FormatInterval(startDay, endDay); } else if (days == 0 && weeks != 0 && months == 0 && years == 0) { // weeks span int startWeek = date.GetWeekOfMonth(); int endWeek = startWeek + weeks; return FormatInterval(startWeek, endWeek); } else if (days == 0 && weeks == 0 && months != 0 && years == 0) { // monthes span int startMonth = MonthNum(date.GetMonth()); int endMonth = startMonth + months; if (endMonth > 12) { endMonth = endMonth % 12; } if (months == 1) { return wxDateTime::GetMonthName(MonthFromNum(startMonth)); } else { return wxString::Format(wxT("%s-%s"), wxDateTime::GetMonthName(MonthFromNum(startMonth)).c_str(), wxDateTime::GetMonthName(MonthFromNum(endMonth)).c_str()); } } else if (days == 0 && weeks == 0 && months == 0 && years != 0) { // years span int startYear = date.GetYear(); int endYear = startYear + years; return FormatInterval(startYear, endYear); } else { // we have unaligned span, so print start-end dates wxDateTime endDate = date; endDate += span; return wxString::Format(wxT("%s-%s"), date.Format(wxT("%d-%m-%y")).c_str(), endDate.Format(wxT("%d-%m-%y")).c_str()); } }
QDate wxQtConvertDate(const wxDateTime& date) { if ( date.IsValid() ) return QDate(date.GetYear(), date.GetMonth() + 1, date.GetDay()); else return QDate(); }
INLINE void wxeReturn::addDate(wxDateTime dateTime) { addInt(dateTime.GetYear()); addInt(dateTime.GetMonth()+1); // c++ month is zero based addInt(dateTime.GetDay()); addTupleCount(3); }
void DashboardInstrument_Moon::SetUtcTime( wxDateTime data ) { if (data.IsValid()) { m_phase = moon_phase(data.GetYear(), data.GetMonth() + 1, data.GetDay()); } }
void wxMysqlPreparedStatementParameter::SetDate(const wxDateTime& dateValue) { m_Data.dateValue.year = dateValue.GetYear(); m_Data.dateValue.month = dateValue.GetMonth(); m_Data.dateValue.day = dateValue.GetDay(); m_Data.dateValue.hour = dateValue.GetHour(); m_Data.dateValue.minute = dateValue.GetMinute(); m_Data.dateValue.second = dateValue.GetSecond(); m_pBind->buffer_type = MYSQL_TYPE_DATETIME; m_pBind->buffer = (void*)&m_Data.dateValue; }
wxDateTime RoundDateToSpan(wxDateTime date, wxDateSpan span) { wxDateTime::wxDateTime_t day = date.GetDay(); int month = MonthNum(date.GetMonth()); wxDateTime::wxDateTime_t year = date.GetYear(); wxDateTime::wxDateTime_t modDays = Mod(day - 1, span.GetTotalDays()); wxDateTime::wxDateTime_t modMonths = Mod(month - 1, span.GetMonths()); wxDateTime::wxDateTime_t modYears = Mod(year, span.GetYears()); return wxDateTime(day - modDays, MonthFromNum(month - modMonths), year - modYears); }
static inline std::tm to_tm(const wxDateTime& datetime) { std::tm result; result.tm_sec = datetime.GetSecond(); result.tm_min = datetime.GetMinute(); result.tm_hour = datetime.GetHour(); result.tm_mday = datetime.GetDay(); result.tm_mon = datetime.GetMonth(); result.tm_year = datetime.GetYear(); result.tm_wday = datetime.GetWeekDay(); result.tm_yday = datetime.GetDayOfYear(); result.tm_isdst= datetime.IsDST(); return result; }
wxOdbcParameter::wxOdbcParameter(const wxDateTime& dateValue) { m_nParameterType = wxOdbcParameter::PARAM_DATETIME; m_DateValue.year = dateValue.GetYear(); m_DateValue.month = dateValue.GetMonth()+1; m_DateValue.day = dateValue.GetDay(); m_DateValue.hour = dateValue.GetHour(); m_DateValue.minute = dateValue.GetMinute(); m_DateValue.second = dateValue.GetSecond(); m_DateValue.fraction = dateValue.GetMillisecond(); m_nBufferLength = 0; }
//* Date Functions----------------------------------------------------------*// const wxString mmGetNiceDateSimpleString(const wxDateTime &dt) { wxString dateFmt = mmOptions::instance().dateFormat_; dateFmt.Replace("%Y%m%d", "%Y %m %d"); dateFmt.Replace(".", " "); dateFmt.Replace(",", " "); dateFmt.Replace("/", " "); dateFmt.Replace("-", " "); dateFmt.Replace("%d", wxString::Format("%d", dt.GetDay())); dateFmt.Replace("%Y", wxString::Format("%d", dt.GetYear())); dateFmt.Replace("%y", wxString::Format("%d", dt.GetYear()).Mid(2,2)); dateFmt.Replace("%m", wxGetTranslation(wxDateTime::GetEnglishMonthName(dt.GetMonth()))); return dateFmt; }
/* rebuild the map at a given date */ bool MagneticPlotMap::Recompute(wxDateTime date) { if(!m_bEnabled) return true; UserDate.Year = date.GetYear(); UserDate.Month = date.GetMonth(); UserDate.Day = date.GetDay(); char err[255]; WMM_DateToYear(&UserDate, err); /* Time adjust the coefficients, Equation 19, WMM Technical report */ WMM_TimelyModifyMagneticModel(UserDate, MagneticModel, TimedMagneticModel); return IsoBarMap::Recompute() }
MysqlParameter::MysqlParameter(const wxDateTime& dateValue) { m_nParameterType = MysqlParameter::PARAM_DATETIME; m_pDate = new MYSQL_TIME(); memset(m_pDate, 0, sizeof(MYSQL_TIME)); m_pDate->year = dateValue.GetYear(); m_pDate->month = dateValue.GetMonth()+1; m_pDate->day = dateValue.GetDay(); m_pDate->hour = dateValue.GetHour(); m_pDate->minute = dateValue.GetMinute(); m_pDate->second = dateValue.GetSecond(); m_pDate->neg = 0; m_nBufferLength = sizeof(MYSQL_TIME); }
// ------------------------------------------------------- // GRIBMELINE is a misnomer void climatology_pi::SendTimelineMessage(wxDateTime time) { Json::Value v; if (time.IsValid()) { v["Day"] = time.GetDay(); v["Month"] = time.GetMonth(); v["Year"] = time.GetYear(); v["Hour"] = time.GetHour(); v["Minute"] = time.GetMinute(); v["Second"] = time.GetSecond(); } else { v["Day"] = -1; v["Month"] = -1; v["Year"] = -1; v["Hour"] = -1; v["Minute"] = -1; v["Second"] = -1; } Json::FastWriter writer; SendPluginMessage("GRIB_TIMELINE", writer.write( v )); }
const wxDateTime getUserDefinedFinancialYear(bool prevDayRequired) { long monthNum; mmOptions::instance().financialYearStartMonthString_.ToLong(&monthNum); if (monthNum > 0) //Test required for compatability with previous version monthNum--; const wxDateTime today = wxDateTime::Today(); int year = today.GetYear(); if (today.GetMonth() < monthNum) year--; int dayNum = wxAtoi(mmOptions::instance().financialYearStartDayString_); if (dayNum <= 0 || dayNum > wxDateTime::GetNumberOfDays((wxDateTime::Month)monthNum, year)) dayNum = 1; wxDateTime financialYear(dayNum, (wxDateTime::Month)monthNum, year); if (prevDayRequired) financialYear.Subtract(wxDateSpan::Day()); return financialYear; }
static void ConvertWxToFileTime(FILETIME *ft, const wxDateTime& dt) { SYSTEMTIME st; st.wDay = dt.GetDay(); st.wMonth = (WORD)(dt.GetMonth() + 1); st.wYear = (WORD)dt.GetYear(); st.wHour = dt.GetHour(); st.wMinute = dt.GetMinute(); st.wSecond = dt.GetSecond(); st.wMilliseconds = dt.GetMillisecond(); FILETIME ftLocal; if ( !::SystemTimeToFileTime(&st, &ftLocal) ) { wxLogLastError(_T("SystemTimeToFileTime")); } if ( !::LocalFileTimeToFileTime(&ftLocal, ft) ) { wxLogLastError(_T("LocalFileTimeToFileTime")); } }
bool wxGtkCalendarCtrl::SetDate(const wxDateTime& date) { if ( date.IsValid() && !IsInValidRange(date) ) return false; g_signal_handlers_block_by_func(m_widget, (gpointer) gtk_day_selected_callback, this); g_signal_handlers_block_by_func(m_widget, (gpointer) gtk_month_changed_callback, this); m_selectedDate = date; int year = date.GetYear(); int month = date.GetMonth(); int day = date.GetDay(); gtk_calendar_select_month(GTK_CALENDAR(m_widget), month, year); gtk_calendar_select_day(GTK_CALENDAR(m_widget), day); g_signal_handlers_unblock_by_func( m_widget, (gpointer) gtk_month_changed_callback, this); g_signal_handlers_unblock_by_func( m_widget, (gpointer) gtk_day_selected_callback, this); return true; }
void wxMaskController::SetDateTimeValue(wxDateTime& value) { wxFieldMaskData *pobjData = NULL, *pobjDataNext = NULL; wxString str_Value; long length; int year_len; if(m_listData.GetCount() == 0 && value.IsValid()) return; for(long pos = 0;pos < (long) m_listData.GetCount();pos++) { pobjData = (wxFieldMaskData *) (m_listData.Item(pos))->GetData(); if(pobjData->m_eType == MaskDataTypeDIGIT) { if(pobjData->m_eSubType == MaskDataSubTypeDATEDAY) { pobjDataNext = (wxFieldMaskData *) (pos < (long) (m_listData.GetCount()-1) ? (m_listData.Item(pos+1))->GetData() : NULL); if(pobjDataNext) { if(pobjData->m_eType == MaskDataTypeDIGIT && pobjData->m_eSubType == MaskDataSubTypeDATEDAY) str_Value = wxString::Format(_("%02d"), value.GetDay()); else str_Value = wxString::Format(_("%d"), value.GetDay() % 10); } } else if(pobjData->m_eSubType == MaskDataSubTypeDATEMONTH) { pobjDataNext = (wxFieldMaskData *) (pos < (long) (m_listData.GetCount()-1) ? (m_listData.Item(pos+1))->GetData() : NULL); if(pobjDataNext) { if(pobjData->m_eType == MaskDataTypeDIGIT && pobjData->m_eSubType == MaskDataSubTypeDATEMONTH) str_Value = wxString::Format(_("%02d"), value.GetMonth()); else str_Value = wxString::Format(_("%d"), value.GetMonth() % 10); } } else if(pobjData->m_eSubType == MaskDataSubTypeDATEYEAR) { year_len = 1; for(long i = pos; i < (long) m_listData.GetCount();i++) { pobjDataNext = (wxFieldMaskData *) (m_listData.Item(pos+1))->GetData(); if(pobjDataNext->m_eType == MaskDataTypeDIGIT && pobjDataNext->m_eSubType == MaskDataSubTypeDATEYEAR) year_len++; else break; } str_Value = (wxString::Format(_("%04d"), value.GetYear())).Right(year_len);; } else if(pobjData->m_eSubType == MaskDataSubTypeTIMEHOUR) { pobjDataNext = (wxFieldMaskData *) (pos < (long) (m_listData.GetCount()-1) ? (m_listData.Item(pos+1))->GetData() : NULL); if(pobjDataNext) { if(pobjData->m_eType == MaskDataTypeDIGIT && pobjData->m_eSubType == MaskDataSubTypeTIMEHOUR) str_Value = wxString::Format(_("%02d"), value.GetHour()); else str_Value = wxString::Format(_("%d"), value.GetHour() % 10); } } else if(pobjData->m_eSubType == MaskDataSubTypeTIMEMINUTE) { pobjDataNext = (wxFieldMaskData *) (pos < (long) (m_listData.GetCount()-1) ? (m_listData.Item(pos+1))->GetData() : NULL); if(pobjDataNext) { if(pobjData->m_eType == MaskDataTypeDIGIT && pobjData->m_eSubType == MaskDataSubTypeTIMEMINUTE) str_Value = wxString::Format(_("%02d"), value.GetMinute()); else str_Value = wxString::Format(_("%d"), value.GetMinute() % 10); } } else if(pobjData->m_eSubType == MaskDataSubTypeTIMESECOND) { pobjDataNext = (wxFieldMaskData *) (pos < (long) (m_listData.GetCount()-1) ? (m_listData.Item(pos+1))->GetData() : NULL); if(pobjDataNext) { if(pobjData->m_eType == MaskDataTypeDIGIT && pobjData->m_eSubType == MaskDataSubTypeTIMESECOND) str_Value = wxString::Format(_("%02d"), value.GetSecond()); else str_Value = wxString::Format(_("%d"), value.GetSecond() % 10); } } length = (long)str_Value.Length(); if(pos + length > (long) m_listData.GetCount()) length = (long) str_Value.Length() - pos; for(long i = pos; pos < (long) (i + length);pos++) SetAt(pos, str_Value.GetChar(pos-i)); } } Update(); }