X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Fui%2Ffriendlistitem.cpp;h=c4491f24322e53e3ded3ff861e0c4d252b1aa8ab;hb=fd7e46af213cf0c7f020bd849977c4c86298d735;hp=f2e4e057ba1484a6c37c9153109c19c451a908bb;hpb=32e0de6a0483d55dc19bf19fb435b501c93c637a;p=situare diff --git a/src/ui/friendlistitem.cpp b/src/ui/friendlistitem.cpp index f2e4e05..c4491f2 100644 --- a/src/ui/friendlistitem.cpp +++ b/src/ui/friendlistitem.cpp @@ -29,10 +29,6 @@ #include "friendlistitem.h" -const int AEROPLANE_DISTANCE = 5000;///< Aeroplane distance limit for distance icon -const int CAR_DISTANCE = 500; ///< Car distance limit for distance icon -const int WALK_DISTANCE = 5; ///< Walk distance limit for distance icon - FriendListItem::FriendListItem() { qDebug() << __PRETTY_FUNCTION__; @@ -40,7 +36,7 @@ FriendListItem::FriendListItem() setSubitemTextWidth(SUBITEM_TEXT_MAX_WIDTH); } -GeoCoordinate FriendListItem::coordinates() +GeoCoordinate FriendListItem::coordinates() const { qDebug() << __PRETTY_FUNCTION__; @@ -51,36 +47,33 @@ void FriendListItem::setUserData(User *user) { qDebug() << __PRETTY_FUNCTION__; - if(user) { - - QString unit; - double value; - user->distance(value, unit); - QString distanceText = QString::number(value) + " " + unit; - setData(DISTANCE_TEXT_DISPLAY_INDEX, distanceText); - setDistanceIcon(value, unit); - - //Dummy value to get painter font metrics. - QPixmap p = QPixmap(ICON_WIDTH, ICON_HEIGHT); - QPainter painter(&p); - painter.setFont(NOKIA_FONT_SMALL); - QFontMetrics distanceTextFontMetrics = painter.fontMetrics(); - QRect distanceRect = distanceTextFontMetrics.boundingRect(distanceText); - - setData(DISTANCE_SIZE_HINT_INDEX, distanceRect); - setName(shortenText(user->name(), NAME_TEXT_MAX_WIDTH - distanceRect.width() + MARGIN, - ListItem::TEXT_SIZE_NORMAL)); - setCoordinates(user->coordinates()); - - if (!user->profileImage().isNull()) - setImage(user->profileImage()); - - clearSubItems(); - - addSubItem(user->note(), QPixmap(":/res/images/envelope.png")); - addSubItem(user->address(), QPixmap(":/res/images/compass.png")); - addSubItem(user->timestamp(), QPixmap(":/res/images/clock.png")); - } + QString unit; + double value; + user->distance(value, unit); + QString distanceText = QString::number(value) + " " + unit; + setData(DISTANCE_TEXT_DISPLAY_INDEX, distanceText); + setDistanceIcon(value, unit); + + //Dummy value to get painter font metrics. + QPixmap p = QPixmap(ICON_WIDTH, ICON_HEIGHT); + QPainter painter(&p); + painter.setFont(NOKIA_FONT_SMALL); + QFontMetrics distanceTextFontMetrics = painter.fontMetrics(); + QRect distanceRect = distanceTextFontMetrics.boundingRect(distanceText); + + setData(DISTANCE_SIZE_HINT_INDEX, distanceRect); + setTitle(shortenText(user->name(), NAME_TEXT_MAX_WIDTH - distanceRect.width() + MARGIN, + ListItem::TEXT_SIZE_NORMAL)); + setCoordinates(user->coordinates()); + + if (!user->profileImage().isNull()) + setImage(user->profileImage()); + + clearSubItems(); + + addSubItem(user->note(), QPixmap(":/res/images/envelope.png")); + addSubItem(user->address(), QPixmap(":/res/images/compass.png")); + addSubItem(user->timestamp(), QPixmap(":/res/images/clock.png")); } void FriendListItem::setAvatarImage(const QPixmap &image) @@ -102,6 +95,10 @@ void FriendListItem::setDistanceIcon(double value, const QString &unit) { qDebug() << __PRETTY_FUNCTION__; + const int AEROPLANE_DISTANCE = 5000;///< Aeroplane distance limit for distance icon + const int CAR_DISTANCE = 500; ///< Car distance limit for distance icon + const int WALK_DISTANCE = 5; ///< Walk distance limit for distance icon + QPixmap distanceImage; if ((unit == "m") || (value < WALK_DISTANCE))