void ServerPingSettings::HandleLVNGetDispInfo(NMLVDISPINFO *lvdi)
{
	Pinger *pinger = pingers->GetElement(lvdi->item.iItem);

	String pszText = " ";

	switch (lvdi->item.iSubItem) {
        case 0: {
			lvdi->item.pszText = AddPool(pinger->GetServiceName());
            break;
		}     
        case 1: {
            lvdi->item.pszText = AddPool(pinger->GetServerName());
            break;
		}
		case 2: {
			int latestPing = pinger->GetLatestPing();
			if (latestPing > -1) {
				pszText = latestPing;
			}
			lvdi->item.pszText = AddPool(pszText);
			break;
		}
		case 3: {
			double averagePing = pinger->Average();
			if (_finite(averagePing)) {
				pszText = FloatString(pinger->Average());
			}
			lvdi->item.pszText = AddPool(pszText);
			break;
		}
		case 4: {
			double standardDeviation = pinger->StandardDeviation();
			if (_finite(standardDeviation)) {
				pszText = FloatString(abs(standardDeviation));
			}
			lvdi->item.pszText = AddPool(pszText);
			break;
		}
        default:
            break;
	}
}
Esempio n. 2
0
void  XElement::SetFloat(CTSTR lpName, float number)
{
    assert(lpName);

    String floatStr = FloatString(number);

    XDataItem *item = GetDataItem(lpName);
    if(item)
    {
        item->strData = floatStr;
        return;
    }

    SubItems << new XDataItem(lpName, floatStr);
}
Esempio n. 3
0
void  XElement::AddFloat(CTSTR lpName, float number)
{
    assert(lpName);

    SubItems << new XDataItem(lpName, FloatString(number));
}