initial qml stuff

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
This commit is contained in:
Sefa Eyeoglu
2022-12-08 14:09:33 +01:00
parent 05d9c2d864
commit ac33b150fa
16 changed files with 161 additions and 38 deletions

View File

@ -0,0 +1,14 @@
#include "IconImageProvider.h"
IconImageProvider::IconImageProvider(std::shared_ptr<IconList> iconList, int iconSize) : QQuickImageProvider(QQuickImageProvider::Pixmap), m_iconList(iconList), m_iconSize(iconSize)
{
}
QPixmap IconImageProvider::requestPixmap(const QString &id, QSize *size, const QSize &requestedSize)
{
if (size)
*size = QSize(m_iconSize, m_iconSize);
QIcon i = m_iconList->getIcon(id);
return i.pixmap(requestedSize.width() > 0 ? requestedSize.width() : m_iconSize, requestedSize.height() > 0 ? requestedSize.height() : m_iconSize);
}

View File

@ -0,0 +1,16 @@
#pragma once
#include "IconList.h"
#include <QQuickImageProvider>
class IconImageProvider : public QQuickImageProvider
{
public:
IconImageProvider(std::shared_ptr<IconList> iconList, int iconSize = 48);
QPixmap requestPixmap(const QString &id, QSize *size, const QSize &requestedSize) override;
private:
std::shared_ptr<IconList> m_iconList;
int m_iconSize;
};