1/*
2 * SPDX-FileCopyrightText: 2020 Arjen Hiemstra <ahiemstra@heimr.nl>
3 *
4 * SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6
7#pragma once
8
9#include <QSGTexture>
10
11#include "shadowedborderrectanglematerial.h"
12
13class ShadowedBorderTextureMaterial : public ShadowedBorderRectangleMaterial
14{
15public:
16 ShadowedBorderTextureMaterial();
17
18 QSGMaterialShader *createShader(QSGRendererInterface::RenderMode) const override;
19 QSGMaterialType *type() const override;
20 int compare(const QSGMaterial *other) const override;
21
22 QSGTexture *textureSource = nullptr;
23
24 static QSGMaterialType staticType;
25};
26
27class ShadowedBorderTextureShader : public ShadowedBorderRectangleShader
28{
29public:
30 ShadowedBorderTextureShader(ShadowedRectangleMaterial::ShaderType shaderType);
31
32 void
33 updateSampledImage(QSGMaterialShader::RenderState &state, int binding, QSGTexture **texture, QSGMaterial *newMaterial, QSGMaterial *oldMaterial) override;
34};
35

source code of kirigami/src/scenegraph/shadowedbordertexturematerial.h