view ui/textoverlaybutton.h @ 1287:d3d66d43365f

Merged
author Emanuel Schuetze <emanuel@intevation.de>
date Mon, 29 Sep 2014 13:02:41 +0200
parents 2a1aa9df8f11
children
line wrap: on
line source
#ifndef UI_TEXTOVERLAYBUTTON_H
#define UI_TEXTOVERLAYBUTTON_H
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU GPL (v>=2)
 * and comes with ABSOLUTELY NO WARRANTY!
 * See LICENSE.txt for details.
 */

/**
  * @file textoverlaybutton.h
  * @brief A tool button that overlays a text over the icon.
  */

#include <QToolButton>
#include <QString>
#include <QPixmap>

class QPaintEvent;

/** @brief A tool button that overlays a text over the icon.
  */
class TextOverlayButton : public QToolButton
{
    Q_OBJECT

public:
    QString overlay() {return mOverlay;}

protected:
    virtual void paintEvent(QPaintEvent *);

public slots:
    void setOverlay (const QString& text) {mOverlay = text; repaint();}
    void setBackgroundIcon (const QString& iconPath);

private:
    QString mOverlay;
    QPixmap mBackground;
};

#endif // UI_TEXTOVERLAYBUTTON_H

http://wald.intevation.org/projects/trustbridge/