Add an is<PropertyName>Immutable to know if a property is immutable

Authored by meven on Feb 4 2020, 3:03 PM.

Description

Add an is<PropertyName>Immutable to know if a property is immutable

Summary:
Add a utility function is<Parameter>Immutable 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