// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
//
void PosLmLandmarkHandler::SetIconL(
    RDbView& aView,
    const CPosLandmark& aLandmark,
    const TUint32 aIconPathId)
    {
    TPtrC path;
    TInt iconIndex;
    TInt maskIndex;

    if (aLandmark.GetIcon(path, iconIndex, maskIndex) == KErrNone)
        {
        aView.SetColL(EPosLmLcIconIdCol, aIconPathId);
        aView.SetColL(EPosLmLcIconPicNrCol, iconIndex);
        aView.SetColL(EPosLmLcMaskPicNrCol, maskIndex);
        }
    else
        {
        aView.SetColNullL(EPosLmLcIconIdCol);
        aView.SetColNullL(EPosLmLcIconPicNrCol);
        aView.SetColNullL(EPosLmLcMaskPicNrCol);
        }
    }
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
//
void PosLmLandmarkHandler::SetCoverageRadiusL(
    RDbView& aView,
    const CPosLandmark& aLandmark)
    {
    TReal32 covRadius;

    if (aLandmark.GetCoverageRadius(covRadius) == KErrNone)
        {
        aView.SetColL(EPosLmLcCoverageRadiusCol, covRadius);
        }
    else
        {
        aView.SetColNullL(EPosLmLcCoverageRadiusCol);
        }
    }
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
//
void PosLmLandmarkHandler::SetLandmarkDescriptionL(
    RDbView& aView,
    const CPosLandmark& aLandmark)
    {
    TPtrC description;

    if (aLandmark.GetLandmarkDescription(description) == KErrNone)
        {
        PosLmLongTextColHandler::WriteToLongTextColumnL(description, aView,
            EPosLmLcDescriptionCol);
        }
    else
        {
        aView.SetColNullL(EPosLmLcDescriptionCol);
        }
    }
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
//
void PosLmLandmarkHandler::SetLandmarkNameL(
    RDbView& aView,
    const CPosLandmark& aLandmark)
    {
    TPtrC name;

    if (aLandmark.GetLandmarkName(name) == KErrNone)
        {
        PosLmLongTextColHandler::WriteToLongTextColumnL(name, aView,
            EPosLmLcNameCol);
        }
    else
        {
        aView.SetColNullL(EPosLmLcNameCol);
        }
    }
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
//
void PosLmLandmarkHandler::SetPositionL(
    RDbView& aView,
    const CPosLandmark& aLandmark)
    {
    TLocality position;

    if (aLandmark.GetPosition(position) == KErrNone)
        {
        aView.SetColL(EPosLmLcLatitudeCol, position.Latitude());
        aView.SetColL(EPosLmLcLongitudeCol, position.Longitude());

        if (!Math::IsNaN(position.Altitude()))
            {
            aView.SetColL(EPosLmLcAltitudeCol, position.Altitude());
            }
        else
            {
            aView.SetColNullL(EPosLmLcAltitudeCol);
            }

        if (!Math::IsNaN(position.HorizontalAccuracy()))
            {
            aView.SetColL(EPosLmLcHorizAccCol, position.HorizontalAccuracy());
            }
        else
            {
            aView.SetColNullL(EPosLmLcHorizAccCol);
            }

        if (!Math::IsNaN(position.VerticalAccuracy()))
            {
            aView.SetColL(EPosLmLcVertAccCol, position.VerticalAccuracy());
            }
        else
            {
            aView.SetColNullL(EPosLmLcVertAccCol);
            }
        }
    else
        {
        aView.SetColNullL(EPosLmLcLatitudeCol);
        aView.SetColNullL(EPosLmLcLongitudeCol);
        aView.SetColNullL(EPosLmLcAltitudeCol);
        aView.SetColNullL(EPosLmLcHorizAccCol);
        aView.SetColNullL(EPosLmLcVertAccCol);
        }
    }