void CTDLFindTaskExpressionListCtrl::UpdateValueColumnText(int nRow) { ASSERT(nRow >= 0 && nRow < m_aSearchParams.GetSize()); ASSERT(m_aSearchParams.GetSize() >= GetItemCount() - 1); if (nRow < 0 || nRow >= m_aSearchParams.GetSize()) return; if (m_aSearchParams.GetSize() < GetItemCount() - 1) return; const SEARCHPARAM& sp = m_aSearchParams[nRow]; CString sValue; // value (but not boolean) if (sp.GetOperator() != FOP_SET && sp.GetOperator() != FOP_NOT_SET) { try { switch (sp.GetAttribType()) { case FT_STRING: case FT_DATE_REL: case FT_INTEGER: case FT_DOUBLE: sValue = sp.ValueAsString(); break; case FT_DATE: sValue = sp.ValueAsDate().Format(VAR_DATEVALUEONLY); break; case FT_TIME: sValue = CTimeHelper().FormatTime(sp.ValueAsDouble(), sp.GetFlags(), 2); break; case FT_BOOL: // handled by operator break; } } catch (...) { // bad value but we continue sValue.Empty(); } } SetItemText(nRow, VALUE, sValue); }
double CTDLAddLoggedTimeDlg::GetLoggedTime() const // in hours { return CTimeHelper().GetTime(m_dLoggedTime, m_nUnits, THU_HOURS); }