/*
    Copyright (C) 2012 Bartosz Broda, Jacek Bochenek, Łukasz Biłeńkij, 
    Damian Jaworski, Wojciech Mazur, Dominik Piasecki, Maciej Piasecki, 
    Radosław Ramocki
    
    This program is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the Free
Software Foundation; either version 3 of the License, or (at your option)
any later version.

    This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. 

    See the LICENSE and COPYING files for more details.
*/

#ifndef BUBBLERECT_H
#define BUBBLERECT_H

#include <QGraphicsItem>

/**
  Class representing rectangle graphics item, shown under mouse pointer.
  */
class BubbleRect : public QGraphicsItem
{
public:
    BubbleRect();

    void SetText(std::string newText);

    const std::string & GetText() const;

    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);

    QRectF boundingRect() const;

private:
    /**
      Text displayed on the item
      */
    QGraphicsTextItem * text;

    /**
      Border of the item
      */
    QGraphicsRectItem * rectItem;
};

#endif // BUBBLERECT_H
