diff options
4 files changed, 20 insertions, 5 deletions
diff --git a/src/quick/scenegraph/adaptations/software/qsgsoftwarepublicnodes_p.h b/src/quick/scenegraph/adaptations/software/qsgsoftwarepublicnodes_p.h index 114137fb55..470bb73f78 100644 --- a/src/quick/scenegraph/adaptations/software/qsgsoftwarepublicnodes_p.h +++ b/src/quick/scenegraph/adaptations/software/qsgsoftwarepublicnodes_p.h @@ -97,6 +97,9 @@ public: void setMipmapFiltering(QSGTexture::Filtering) override { } QSGTexture::Filtering mipmapFiltering() const override { return QSGTexture::None; } + void setAnisotropyLevel(QSGTexture::AnisotropyLevel) override { } + QSGTexture::AnisotropyLevel anisotropyLevel() const override { return QSGTexture::AnisotropyNone; } + void setTextureCoordinatesTransform(TextureCoordinatesTransformMode transformNode) override; TextureCoordinatesTransformMode textureCoordinatesTransform() const override { return m_transformMode; } diff --git a/src/quick/scenegraph/util/qsgdefaultimagenode_p.h b/src/quick/scenegraph/util/qsgdefaultimagenode_p.h index 7b26daf541..5fc91b44d3 100644 --- a/src/quick/scenegraph/util/qsgdefaultimagenode_p.h +++ b/src/quick/scenegraph/util/qsgdefaultimagenode_p.h @@ -79,16 +79,15 @@ public: void setMipmapFiltering(QSGTexture::Filtering filtering) override; QSGTexture::Filtering mipmapFiltering() const override; + void setAnisotropyLevel(QSGTexture::AnisotropyLevel level) override; + QSGTexture::AnisotropyLevel anisotropyLevel() const override; + void setTextureCoordinatesTransform(TextureCoordinatesTransformMode mode) override; TextureCoordinatesTransformMode textureCoordinatesTransform() const override; void setOwnsTexture(bool owns) override; bool ownsTexture() const override; - // QSGImageNode now being a public class does not allow any additional virtual methods. Placing these here, non-virtual. - void setAnisotropyLevel(QSGTexture::AnisotropyLevel level); - QSGTexture::AnisotropyLevel anisotropyLevel() const; - private: QSGGeometry m_geometry; QSGOpaqueTextureMaterial m_opaque_material; diff --git a/src/quick/scenegraph/util/qsgimagenode.cpp b/src/quick/scenegraph/util/qsgimagenode.cpp index b154023247..a94e3e0a5d 100644 --- a/src/quick/scenegraph/util/qsgimagenode.cpp +++ b/src/quick/scenegraph/util/qsgimagenode.cpp @@ -143,6 +143,18 @@ QT_BEGIN_NAMESPACE */ /*! + \fn void QSGImageNode::setAnisotropyLevel(QSGTexture::AnisotropyLevel level) + + Sets this image node's anistropy level to \a level. +*/ + +/*! + \fn QSGTexture::AnisotropyLevel QSGImageNode::anisotropyLevel() const + + Returns this image node's anistropy level. +*/ + +/*! \enum QSGImageNode::TextureCoordinatesTransformFlag The TextureCoordinatesTransformFlag enum is used to specify the mode used diff --git a/src/quick/scenegraph/util/qsgimagenode.h b/src/quick/scenegraph/util/qsgimagenode.h index 3b78f78a0e..45962415fc 100644 --- a/src/quick/scenegraph/util/qsgimagenode.h +++ b/src/quick/scenegraph/util/qsgimagenode.h @@ -67,7 +67,8 @@ public: virtual void setMipmapFiltering(QSGTexture::Filtering filtering) = 0; virtual QSGTexture::Filtering mipmapFiltering() const = 0; - // ### Qt6: Add anisotropy support here, and possibly a virtual hook or another mean to extend this class. + virtual void setAnisotropyLevel(QSGTexture::AnisotropyLevel level) = 0; + virtual QSGTexture::AnisotropyLevel anisotropyLevel() const = 0; enum TextureCoordinatesTransformFlag { NoTransform = 0x00, |