From d46739294d04c72af1e434e414e1c012d7e78a42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A9ven=20Car?= Date: Tue, 4 Feb 2020 16:03:52 +0100 Subject: Add an isImmutable to know if a property is immutable Summary: Add a utility function isImmutable to access immutability quickly. Generated classes uses them internally to avoid code redundance. Sample: ``` /** Set blocked-by-default */ void setBlockedByDefault( bool v ) { if (v != mBlockedByDefault && !isBlockedByDefaultImmutable() ) { mBlockedByDefault = v; Q_EMIT blockedByDefaultChanged(); } } /** Is blocked-by-default Immutable */ bool isBlockedByDefaultImmutable() { return isImmutable( QStringLiteral( "blockedByDefault" ) ); } ``` ``` /** Set org.kde.ActivityManager.ResourceScoringEnabled */ void setResourceScoringEnabled( bool v ) { if (!isResourceScoringEnabledImmutable() ) mResourceScoringEnabled = v; } /** Is org.kde.ActivityManager.ResourceScoringEnabled Immutable */ bool isResourceScoringEnabledImmutable() { return isImmutable( QStringLiteral( "resourceScoringEnabled" ) ); } ``` Reviewers: ervin, #frameworks, dfaure Reviewed By: ervin Subscribers: dfaure, tcanabrava, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D26368 --- autotests/kconfig_compiler/test9.h.ref | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) (limited to 'autotests/kconfig_compiler/test9.h.ref') diff --git a/autotests/kconfig_compiler/test9.h.ref b/autotests/kconfig_compiler/test9.h.ref index 6e40cf48..7c95b1d1 100644 --- a/autotests/kconfig_compiler/test9.h.ref +++ b/autotests/kconfig_compiler/test9.h.ref @@ -21,7 +21,7 @@ class Test9 : public KConfigSkeleton */ void setMyStringList( const QStringList & v ) { - if (!isImmutable( QStringLiteral( "MyStringList" ) )) + if (!isMyStringListImmutable()) mMyStringList = v; } @@ -33,12 +33,20 @@ class Test9 : public KConfigSkeleton return mMyStringList; } + /** + Is MyStringList Immutable + */ + bool isMyStringListImmutable() const + { + return isImmutable( QStringLiteral( "MyStringList" ) ); + } + /** Set This is a list of paths */ void setMyPathList( const QStringList & v ) { - if (!isImmutable( QStringLiteral( "MyPathList" ) )) + if (!isMyPathListImmutable()) mMyPathList = v; } @@ -50,12 +58,20 @@ class Test9 : public KConfigSkeleton return mMyPathList; } + /** + Is This is a list of paths Immutable + */ + bool isMyPathListImmutable() const + { + return isImmutable( QStringLiteral( "MyPathList" ) ); + } + /** Set This is an additional test for PathList */ void setMyPathsList2( const QStringList & v ) { - if (!isImmutable( QStringLiteral( "MyPathsList2" ) )) + if (!isMyPathsList2Immutable()) mMyPathsList2 = v; } @@ -67,6 +83,14 @@ class Test9 : public KConfigSkeleton return mMyPathsList2; } + /** + Is This is an additional test for PathList Immutable + */ + bool isMyPathsList2Immutable() const + { + return isImmutable( QStringLiteral( "MyPathsList2" ) ); + } + protected: public: QString mParamtransport; -- cgit v1.2.1