// Copyright 2008 Simon Edwards <simon@simonzone.com>

//                 Generated by twine

// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU Library General Public License as
// published by the Free Software Foundation; either version 2, 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
// GNU General Public License for more details

// You should have received a copy of the GNU Library General Public
// License along with this program; if not, write to the
// Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.


namespace Plasma
{

class Label : QGraphicsProxyWidget
{
%TypeHeaderCode
#include <plasma/widgets/label.h>
%End


public:
    explicit                Label (QGraphicsWidget* parent /TransferThis/ = 0);
    void                    setText (const QString& text);
    QString                 text () const;
    void                    setImage (const QString& path);
    QString                 image () const;
    void                    setAlignment (Qt::Alignment alignment);
    Qt::Alignment           alignment () const;
    void                    setScaledContents (bool scaled);
    bool                    hasScaledContents () const;
    void                    setStyleSheet (const QString& stylesheet);
    QString                 styleSheet ();
    QLabel*                 nativeWidget () const;

signals:
    void                    linkActivated (const QString& link);
    void                    linkHovered (const QString& link);

public:
    void                    dataUpdated (const QString& sourceName, const Plasma::DataEngine::Data& data);

protected:
    void                    resizeEvent (QGraphicsSceneResizeEvent* event);
public:
    ~Label ();
    void                    setTextSelectable (bool enable);
    bool                    textSelectable () const;
protected:
    void                    mousePressEvent (QGraphicsSceneMouseEvent* event);
    void                    paint (QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget);
    void                    changeEvent (QEvent* event);
    bool                    event (QEvent* event);
    void                    contextMenuEvent (QGraphicsSceneContextMenuEvent* event);
public:
    void                    setWordWrap (bool wrap);
    bool                    wordWrap () const;
protected:
    void                    mouseMoveEvent (QGraphicsSceneMouseEvent* event);
    QVariant                itemChange (QGraphicsItem::GraphicsItemChange change, const QVariant& value);
    QSizeF                  sizeHint (Qt::SizeHint which, const QSizeF& constraint) const;
};
// Label

};
// Plasma


