#include <QGraphicsPixmapItem>
-
+/**
+* @brief Baseclass for showing own and friends locations on the map.
+* This class is abstract
+*
+* @class BaseLocationItem baselocationitem.h "map/baselocationitem.h"
+* @author Ville Tiensuu
+*/
class BaseLocationItem : public QGraphicsPixmapItem, public QObject
{
public:
+
+ /**
+ * @brief Constructor of BaseLocationItem.
+ * Sets parent.
+ *
+ * @param parent
+ */
BaseLocationItem(QObject *parent = 0);
/*******************************************************************************
#include "mapengine.h"
#include "mapcommon.h"
-
FriendLocationItem::FriendLocationItem(const QPixmap &icon,
const QPointF &friendsLocation,
QObject *parent)
setPosition(QPointF( friendsLocation.x(), friendsLocation.y() ));
setZValue(FRIEND_LOCATION_ICON_Z_LEVEL);
setOffset(-icon.width()/2, -icon.height()/2);
- setFlag(QGraphicsItem::ItemIgnoresTransformations);
+ setFlag(QGraphicsItem::ItemIgnoresTransformations);
+ m_name = new QString;
}
void FriendLocationItem::mousePressEvent(QGraphicsSceneMouseEvent *event)
emit iconClicked(*m_name);
}
-void FriendLocationItem::setIcon(const QPixmap &icon)
+QString FriendLocationItem::name() const
{
- setPixmap(icon);
+ return *m_name;
}
void FriendLocationItem::setName(const QString &name)
{
- m_name = new QString(name);
+ *m_name = name;
}
* Sets item to ignore transformations. this feature is needed to make icon on the map
* immune to scaling
*
- * @param icon friends Facebook profile picture, friendsLocation Position in QPoinF, parent
+ * @param icon Friends Facebook profile picture, friendsLocation Position in QPoinF, parent
+ * @param friendsLocation Location of friend
+ * @param parent Parent
*/
- FriendLocationItem(const QPixmap &icon, const QPointF &friendsLocation, QObject *parent = 0);
+ FriendLocationItem(const QPixmap &icon, const QPointF &friendsLocation, QObject *parent = 0);
/**
- * @brief sets friends Facebook profile picture that is show on the map.
+ * @brief getter for name
*
- * @param icon friends Facebook profile picture
+ * @return QString name of friend
*/
- void setIcon(const QPixmap &icon);
+ QString name() const;
/**
* @brief sets name for friend.
// Test Offset
-// QCOMPARE(ownLocationItem.offset(),
-// QPoint(-ownLocationItem.pixmap().width(), -ownLocationItem.pixmap().height()));
+ QCOMPARE(ownLocationItem.offset(),
+ QPointF(-ownLocationItem.pixmap().width()/2, -ownLocationItem.pixmap().height()/2));
// Test ItemIgnoresTransformations Flags