2017-09-28 10:12:30 +00:00
|
|
|
#ifndef QTMATERIALAVATAR_H
|
|
|
|
#define QTMATERIALAVATAR_H
|
|
|
|
|
2017-09-28 12:52:06 +00:00
|
|
|
#include <QtWidgets/QWidget>
|
2017-09-28 10:12:30 +00:00
|
|
|
#include "lib/qtmaterialtheme.h"
|
2021-07-02 10:42:28 +00:00
|
|
|
#include "qtmaterial_global.h"
|
2017-09-28 10:12:30 +00:00
|
|
|
|
|
|
|
class QtMaterialAvatarPrivate;
|
|
|
|
|
2021-07-02 10:42:28 +00:00
|
|
|
class QT_MATERIAL_EXPORT QtMaterialAvatar : public QWidget
|
2017-09-28 10:12:30 +00:00
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
2021-06-30 09:30:12 +00:00
|
|
|
Q_PROPERTY(QColor textColor WRITE setTextColor READ textColor)
|
|
|
|
Q_PROPERTY(QColor backgroundColor WRITE setBackgroundColor READ backgroundColor)
|
|
|
|
Q_PROPERTY(int size WRITE setSize READ size)
|
|
|
|
Q_PROPERTY(QChar letter WRITE setLetter READ letter)
|
|
|
|
Q_PROPERTY(QImage image WRITE setImage READ image)
|
|
|
|
Q_PROPERTY(QIcon icon WRITE setIcon READ icon)
|
|
|
|
|
2017-09-28 10:12:30 +00:00
|
|
|
public:
|
|
|
|
explicit QtMaterialAvatar(QWidget *parent = 0);
|
|
|
|
explicit QtMaterialAvatar(const QIcon &icon, QWidget *parent = 0);
|
|
|
|
explicit QtMaterialAvatar(const QChar &letter, QWidget *parent = 0);
|
|
|
|
explicit QtMaterialAvatar(const QImage &image, QWidget *parent = 0);
|
|
|
|
~QtMaterialAvatar();
|
|
|
|
|
|
|
|
void setUseThemeColors(bool value);
|
|
|
|
bool useThemeColors() const;
|
|
|
|
|
|
|
|
void setTextColor(const QColor &color);
|
|
|
|
QColor textColor() const;
|
|
|
|
|
|
|
|
void setBackgroundColor(const QColor &color);
|
|
|
|
QColor backgroundColor() const;
|
|
|
|
|
|
|
|
QSize sizeHint() const Q_DECL_OVERRIDE;
|
|
|
|
|
|
|
|
void setSize(int size);
|
|
|
|
int size() const;
|
|
|
|
|
|
|
|
void setLetter(const QChar &letter);
|
2021-06-30 09:30:12 +00:00
|
|
|
QChar letter() const;
|
|
|
|
|
2017-09-28 10:12:30 +00:00
|
|
|
void setImage(const QImage &image);
|
2021-06-30 09:30:12 +00:00
|
|
|
QImage image() const;
|
|
|
|
|
2017-09-28 10:12:30 +00:00
|
|
|
void setIcon(const QIcon &icon);
|
2021-06-30 09:30:12 +00:00
|
|
|
QIcon icon() const;
|
2017-09-28 10:12:30 +00:00
|
|
|
|
2021-06-30 09:30:12 +00:00
|
|
|
MaterialConst::AvatarType type() const;
|
2017-09-28 10:12:30 +00:00
|
|
|
|
|
|
|
protected:
|
|
|
|
void paintEvent(QPaintEvent *event) Q_DECL_OVERRIDE;
|
|
|
|
|
|
|
|
const QScopedPointer<QtMaterialAvatarPrivate> d_ptr;
|
|
|
|
|
|
|
|
private:
|
|
|
|
Q_DISABLE_COPY(QtMaterialAvatar)
|
|
|
|
Q_DECLARE_PRIVATE(QtMaterialAvatar)
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // QTMATERIALAVATAR_H
|