diff --git a/designsystems/fluent2/CMakeLists.txt b/designsystems/fluent2/CMakeLists.txt index 1aaec81a..3b7ab78d 100644 --- a/designsystems/fluent2/CMakeLists.txt +++ b/designsystems/fluent2/CMakeLists.txt @@ -8,6 +8,7 @@ list(APPEND HEADERS ) list(APPEND PRIVATE_HEADERS + QskFluent2TextAreaSkinlet.h QskFluent2TextFieldSkinlet.h ) @@ -15,6 +16,7 @@ list(APPEND SOURCES QskFluent2Theme.cpp QskFluent2Skin.cpp QskFluent2SkinFactory.cpp + QskFluent2TextAreaSkinlet.cpp QskFluent2TextFieldSkinlet.cpp ) diff --git a/designsystems/fluent2/QskFluent2Skin.cpp b/designsystems/fluent2/QskFluent2Skin.cpp index 0d1b59f8..945dc20d 100644 --- a/designsystems/fluent2/QskFluent2Skin.cpp +++ b/designsystems/fluent2/QskFluent2Skin.cpp @@ -47,6 +47,7 @@ */ #include "QskFluent2Skin.h" #include "QskFluent2Theme.h" +#include "QskFluent2TextAreaSkinlet.h" #include "QskFluent2TextFieldSkinlet.h" #include @@ -2080,6 +2081,7 @@ void Editor::setupVirtualKeyboardColors( QskFluent2Skin::QskFluent2Skin( QObject* parent ) : Inherited( parent ) { + declareSkinlet< QskTextArea, QskFluent2TextAreaSkinlet >(); declareSkinlet< QskTextField, QskFluent2TextFieldSkinlet >(); setupFonts(); diff --git a/designsystems/fluent2/QskFluent2TextAreaSkinlet.cpp b/designsystems/fluent2/QskFluent2TextAreaSkinlet.cpp new file mode 100644 index 00000000..43633325 --- /dev/null +++ b/designsystems/fluent2/QskFluent2TextAreaSkinlet.cpp @@ -0,0 +1,32 @@ +/****************************************************************************** + * QSkinny - Copyright (C) The authors + * SPDX-License-Identifier: BSD-3-Clause + *****************************************************************************/ + +#include "QskFluent2TextAreaSkinlet.h" +#include "QskTextArea.h" + +using Q = QskTextArea; + +QskFluent2TextAreaSkinlet::QskFluent2TextAreaSkinlet( QskSkin* skin ) + : Inherited( skin ) +{ +} + +QskFluent2TextAreaSkinlet::~QskFluent2TextAreaSkinlet() +{ +} + +QRectF QskFluent2TextAreaSkinlet::subControlRect( const QskSkinnable* skinnable, + const QRectF& contentsRect, QskAspect::Subcontrol subControl ) const +{ + return Inherited::subControlRect( skinnable, contentsRect, subControl ); +} + +QSizeF QskFluent2TextAreaSkinlet::sizeHint( const QskSkinnable* skinnable, + Qt::SizeHint which, const QSizeF& constraint ) const +{ + return Inherited::sizeHint( skinnable, which, constraint ); +} + +#include "moc_QskFluent2TextAreaSkinlet.cpp" diff --git a/designsystems/fluent2/QskFluent2TextAreaSkinlet.h b/designsystems/fluent2/QskFluent2TextAreaSkinlet.h new file mode 100644 index 00000000..4b77e04c --- /dev/null +++ b/designsystems/fluent2/QskFluent2TextAreaSkinlet.h @@ -0,0 +1,29 @@ +/****************************************************************************** + * QSkinny - Copyright (C) The authors + * SPDX-License-Identifier: BSD-3-Clause + *****************************************************************************/ + +#ifndef QSK_FLUENT2_TEXTAREA_SKINLET_H +#define QSK_FLUENT2_TEXTAREA_SKINLET_H + +#include "QskFluent2Global.h" +#include "QskTextAreaSkinlet.h" + +class QSK_FLUENT2_EXPORT QskFluent2TextAreaSkinlet : public QskTextAreaSkinlet +{ + Q_GADGET + + using Inherited = QskTextAreaSkinlet; + + public: + Q_INVOKABLE QskFluent2TextAreaSkinlet( QskSkin* = nullptr ); + ~QskFluent2TextAreaSkinlet() override; + + QRectF subControlRect( const QskSkinnable*, + const QRectF& rect, QskAspect::Subcontrol ) const override; + + QSizeF sizeHint( const QskSkinnable*, + Qt::SizeHint, const QSizeF& ) const override; +}; + +#endif diff --git a/designsystems/material3/CMakeLists.txt b/designsystems/material3/CMakeLists.txt index 4017d9a8..d605ee55 100644 --- a/designsystems/material3/CMakeLists.txt +++ b/designsystems/material3/CMakeLists.txt @@ -10,6 +10,7 @@ list(APPEND HEADERS list(APPEND PRIVATE_HEADERS QskMaterial3ProgressBarSkinlet.h QskMaterial3SliderSkinlet.h + QskMaterial3TextAreaSkinlet.h QskMaterial3TextFieldSkinlet.h ) @@ -18,6 +19,7 @@ list(APPEND SOURCES QskMaterial3SkinFactory.cpp QskMaterial3ProgressBarSkinlet.cpp QskMaterial3SliderSkinlet.cpp + QskMaterial3TextAreaSkinlet.cpp QskMaterial3TextFieldSkinlet.cpp ) diff --git a/designsystems/material3/QskMaterial3Skin.cpp b/designsystems/material3/QskMaterial3Skin.cpp index 76ebb2de..828b9445 100644 --- a/designsystems/material3/QskMaterial3Skin.cpp +++ b/designsystems/material3/QskMaterial3Skin.cpp @@ -11,6 +11,7 @@ #include "QskMaterial3Skin.h" #include "QskMaterial3ProgressBarSkinlet.h" #include "QskMaterial3SliderSkinlet.h" +#include "QskMaterial3TextAreaSkinlet.h" #include "QskMaterial3TextFieldSkinlet.h" #include @@ -1641,6 +1642,7 @@ QskMaterial3Skin::QskMaterial3Skin( QObject* parent ) { declareSkinlet< QskProgressBar, QskMaterial3ProgressBarSkinlet >(); declareSkinlet< QskSlider, QskMaterial3SliderSkinlet >(); + declareSkinlet< QskTextArea, QskMaterial3TextAreaSkinlet >(); declareSkinlet< QskTextField, QskMaterial3TextFieldSkinlet >(); } diff --git a/designsystems/material3/QskMaterial3TextAreaSkinlet.cpp b/designsystems/material3/QskMaterial3TextAreaSkinlet.cpp new file mode 100644 index 00000000..81228477 --- /dev/null +++ b/designsystems/material3/QskMaterial3TextAreaSkinlet.cpp @@ -0,0 +1,36 @@ +/****************************************************************************** + * QSkinny - Copyright (C) The authors + * SPDX-License-Identifier: BSD-3-Clause + *****************************************************************************/ + +#include "QskMaterial3TextAreaSkinlet.h" +#include "QskTextArea.h" + +QskMaterial3TextAreaSkinlet::QskMaterial3TextAreaSkinlet( QskSkin* skin ) + : Inherited( skin ) +{ +} + +QskMaterial3TextAreaSkinlet::~QskMaterial3TextAreaSkinlet() +{ +} + +QRectF QskMaterial3TextAreaSkinlet::subControlRect( const QskSkinnable* skinnable, + const QRectF& contentsRect, QskAspect::Subcontrol subControl ) const +{ + return Inherited::subControlRect( skinnable, contentsRect, subControl ); +} + +QSGNode* QskMaterial3TextAreaSkinlet::updateSubNode( + const QskSkinnable* skinnable, quint8 nodeRole, QSGNode* node ) const +{ + return Inherited::updateSubNode( skinnable, nodeRole, node ); +} + +QSizeF QskMaterial3TextAreaSkinlet::sizeHint( const QskSkinnable* skinnable, + Qt::SizeHint which, const QSizeF& constraint ) const +{ + return Inherited::sizeHint( skinnable, which, constraint ); +} + +#include "moc_QskMaterial3TextAreaSkinlet.cpp" diff --git a/designsystems/material3/QskMaterial3TextAreaSkinlet.h b/designsystems/material3/QskMaterial3TextAreaSkinlet.h new file mode 100644 index 00000000..dc667288 --- /dev/null +++ b/designsystems/material3/QskMaterial3TextAreaSkinlet.h @@ -0,0 +1,33 @@ +/****************************************************************************** + * QSkinny - Copyright (C) The authors + * SPDX-License-Identifier: BSD-3-Clause + *****************************************************************************/ + +#ifndef QSK_MATERIAL3_TEXTAREA_SKINLET_H +#define QSK_MATERIAL3_TEXTAREA_SKINLET_H + +#include "QskMaterial3Global.h" +#include "QskTextAreaSkinlet.h" + +class QSK_MATERIAL3_EXPORT QskMaterial3TextAreaSkinlet : public QskTextAreaSkinlet +{ + Q_GADGET + + using Inherited = QskTextAreaSkinlet; + + public: + Q_INVOKABLE QskMaterial3TextAreaSkinlet( QskSkin* = nullptr ); + ~QskMaterial3TextAreaSkinlet() override; + + QRectF subControlRect( const QskSkinnable*, + const QRectF& rect, QskAspect::Subcontrol ) const override; + + QSizeF sizeHint( const QskSkinnable*, + Qt::SizeHint, const QSizeF& ) const override; + + protected: + QSGNode* updateSubNode( const QskSkinnable*, + quint8 nodeRole, QSGNode* ) const override; +}; + +#endif