* Copyright 2009-2012, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#include "TargetAddressTableColumn.h"
#include <stdio.h>
TargetAddressTableColumn::TargetAddressTableColumn(int32 modelIndex,
const char* title, float width, float minWidth, float maxWidth,
uint32 truncate, alignment align)
:
StringTableColumn(modelIndex, title, width, minWidth, maxWidth, truncate,
align)
{
}
BField*
TargetAddressTableColumn::PrepareField(const BVariant& value) const
{
char buffer[64];
snprintf(buffer, sizeof(buffer), "%#" B_PRIx64, value.ToUInt64());
return StringTableColumn::PrepareField(
BVariant(buffer, B_VARIANT_DONT_COPY_DATA));
}
int
TargetAddressTableColumn::CompareValues(const BVariant& a, const BVariant& b)
{
uint64 valueA = a.ToUInt64();
uint64 valueB = b.ToUInt64();
return valueA < valueB ? -1 : (valueA == valueB ? 0 : 1);
}