// This file is generated by kconfig_compiler_kf6 from diminactive.kcfg.
// All changes you do to this file will be lost.
#ifndef KWIN_DIMINACTIVECONFIG_H
#define KWIN_DIMINACTIVECONFIG_H

#include <kconfigskeleton.h>
#include <QCoreApplication>
#include <QDebug>

namespace KWin {

class DimInactiveConfig : public KConfigSkeleton
{
  public:

    static DimInactiveConfig *self();
    static void instance(const QString& cfgfilename);
    static void instance(KSharedConfig::Ptr config);
    ~DimInactiveConfig() override;

    /**
      Set Strength
    */
    static
    void setStrength( int v )
    {
      if (!self()->isStrengthImmutable())
        self()->mStrength = v;
    }

    /**
      Get Strength
    */
    static
    int strength()
    {
      return self()->mStrength;
    }

    /**
      Is Strength Immutable
    */
    static
    bool isStrengthImmutable()
    {
      return self()->isImmutable( QStringLiteral( "Strength" ) );
    }

    /**
      Set DimPanels
    */
    static
    void setDimPanels( bool v )
    {
      if (!self()->isDimPanelsImmutable())
        self()->mDimPanels = v;
    }

    /**
      Get DimPanels
    */
    static
    bool dimPanels()
    {
      return self()->mDimPanels;
    }

    /**
      Is DimPanels Immutable
    */
    static
    bool isDimPanelsImmutable()
    {
      return self()->isImmutable( QStringLiteral( "DimPanels" ) );
    }

    /**
      Set DimDesktop
    */
    static
    void setDimDesktop( bool v )
    {
      if (!self()->isDimDesktopImmutable())
        self()->mDimDesktop = v;
    }

    /**
      Get DimDesktop
    */
    static
    bool dimDesktop()
    {
      return self()->mDimDesktop;
    }

    /**
      Is DimDesktop Immutable
    */
    static
    bool isDimDesktopImmutable()
    {
      return self()->isImmutable( QStringLiteral( "DimDesktop" ) );
    }

    /**
      Set DimKeepAbove
    */
    static
    void setDimKeepAbove( bool v )
    {
      if (!self()->isDimKeepAboveImmutable())
        self()->mDimKeepAbove = v;
    }

    /**
      Get DimKeepAbove
    */
    static
    bool dimKeepAbove()
    {
      return self()->mDimKeepAbove;
    }

    /**
      Is DimKeepAbove Immutable
    */
    static
    bool isDimKeepAboveImmutable()
    {
      return self()->isImmutable( QStringLiteral( "DimKeepAbove" ) );
    }

    /**
      Set DimByGroup
    */
    static
    void setDimByGroup( bool v )
    {
      if (!self()->isDimByGroupImmutable())
        self()->mDimByGroup = v;
    }

    /**
      Get DimByGroup
    */
    static
    bool dimByGroup()
    {
      return self()->mDimByGroup;
    }

    /**
      Is DimByGroup Immutable
    */
    static
    bool isDimByGroupImmutable()
    {
      return self()->isImmutable( QStringLiteral( "DimByGroup" ) );
    }

    /**
      Set DimFullScreen
    */
    static
    void setDimFullScreen( bool v )
    {
      if (!self()->isDimFullScreenImmutable())
        self()->mDimFullScreen = v;
    }

    /**
      Get DimFullScreen
    */
    static
    bool dimFullScreen()
    {
      return self()->mDimFullScreen;
    }

    /**
      Is DimFullScreen Immutable
    */
    static
    bool isDimFullScreenImmutable()
    {
      return self()->isImmutable( QStringLiteral( "DimFullScreen" ) );
    }

  protected:
    DimInactiveConfig(KSharedConfig::Ptr config);
    friend class DimInactiveConfigHelper;


    // Effect-diminactive
    int mStrength;
    bool mDimPanels;
    bool mDimDesktop;
    bool mDimKeepAbove;
    bool mDimByGroup;
    bool mDimFullScreen;
};

}

#endif

