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

#include "tabbox/tabboxconfig.h"

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

namespace KWin {
namespace TabBox {

class TabBoxSettings : public KConfigSkeleton
{
  public:

    TabBoxSettings( const QString & TabBoxGroup, QObject *parent = nullptr );
    ~TabBoxSettings() override;

    /**
      Set DesktopMode
    */
    void setDesktopMode( int v )
    {
      if (!isDesktopModeImmutable())
        mDesktopMode = v;
    }

    /**
      Get DesktopMode
    */
    int desktopMode() const
    {
      return mDesktopMode;
    }

    /**
      Is DesktopMode Immutable
    */
    bool isDesktopModeImmutable() const
    {
      return isImmutable( QStringLiteral( "DesktopMode" ) );
    }

    /**
      Get DesktopMode default value
    */
    int defaultDesktopModeValue() const
    {
        return defaultDesktopModeValue_helper();
    }

    /**
      Set ActivitiesMode
    */
    void setActivitiesMode( int v )
    {
      if (!isActivitiesModeImmutable())
        mActivitiesMode = v;
    }

    /**
      Get ActivitiesMode
    */
    int activitiesMode() const
    {
      return mActivitiesMode;
    }

    /**
      Is ActivitiesMode Immutable
    */
    bool isActivitiesModeImmutable() const
    {
      return isImmutable( QStringLiteral( "ActivitiesMode" ) );
    }

    /**
      Get ActivitiesMode default value
    */
    int defaultActivitiesModeValue() const
    {
        return defaultActivitiesModeValue_helper();
    }

    /**
      Set ApplicationsMode
    */
    void setApplicationsMode( int v )
    {
      if (!isApplicationsModeImmutable())
        mApplicationsMode = v;
    }

    /**
      Get ApplicationsMode
    */
    int applicationsMode() const
    {
      return mApplicationsMode;
    }

    /**
      Is ApplicationsMode Immutable
    */
    bool isApplicationsModeImmutable() const
    {
      return isImmutable( QStringLiteral( "ApplicationsMode" ) );
    }

    /**
      Get ApplicationsMode default value
    */
    int defaultApplicationsModeValue() const
    {
        return defaultApplicationsModeValue_helper();
    }

    /**
      Set OrderMinimizedMode
    */
    void setOrderMinimizedMode( int v )
    {
      if (!isOrderMinimizedModeImmutable())
        mOrderMinimizedMode = v;
    }

    /**
      Get OrderMinimizedMode
    */
    int orderMinimizedMode() const
    {
      return mOrderMinimizedMode;
    }

    /**
      Is OrderMinimizedMode Immutable
    */
    bool isOrderMinimizedModeImmutable() const
    {
      return isImmutable( QStringLiteral( "OrderMinimizedMode" ) );
    }

    /**
      Get OrderMinimizedMode default value
    */
    int defaultOrderMinimizedModeValue() const
    {
        return defaultOrderMinimizedModeValue_helper();
    }

    /**
      Set MinimizedMode
    */
    void setMinimizedMode( int v )
    {
      if (!isMinimizedModeImmutable())
        mMinimizedMode = v;
    }

    /**
      Get MinimizedMode
    */
    int minimizedMode() const
    {
      return mMinimizedMode;
    }

    /**
      Is MinimizedMode Immutable
    */
    bool isMinimizedModeImmutable() const
    {
      return isImmutable( QStringLiteral( "MinimizedMode" ) );
    }

    /**
      Get MinimizedMode default value
    */
    int defaultMinimizedModeValue() const
    {
        return defaultMinimizedModeValue_helper();
    }

    /**
      Set ShowDesktopMode
    */
    void setShowDesktopMode( int v )
    {
      if (!isShowDesktopModeImmutable())
        mShowDesktopMode = v;
    }

    /**
      Get ShowDesktopMode
    */
    int showDesktopMode() const
    {
      return mShowDesktopMode;
    }

    /**
      Is ShowDesktopMode Immutable
    */
    bool isShowDesktopModeImmutable() const
    {
      return isImmutable( QStringLiteral( "ShowDesktopMode" ) );
    }

    /**
      Get ShowDesktopMode default value
    */
    int defaultShowDesktopModeValue() const
    {
        return defaultShowDesktopModeValue_helper();
    }

    /**
      Set MultiScreenMode
    */
    void setMultiScreenMode( int v )
    {
      if (!isMultiScreenModeImmutable())
        mMultiScreenMode = v;
    }

    /**
      Get MultiScreenMode
    */
    int multiScreenMode() const
    {
      return mMultiScreenMode;
    }

    /**
      Is MultiScreenMode Immutable
    */
    bool isMultiScreenModeImmutable() const
    {
      return isImmutable( QStringLiteral( "MultiScreenMode" ) );
    }

    /**
      Get MultiScreenMode default value
    */
    int defaultMultiScreenModeValue() const
    {
        return defaultMultiScreenModeValue_helper();
    }

    /**
      Set SwitchingMode
    */
    void setSwitchingMode( int v )
    {
      if (!isSwitchingModeImmutable())
        mSwitchingMode = v;
    }

    /**
      Get SwitchingMode
    */
    int switchingMode() const
    {
      return mSwitchingMode;
    }

    /**
      Is SwitchingMode Immutable
    */
    bool isSwitchingModeImmutable() const
    {
      return isImmutable( QStringLiteral( "SwitchingMode" ) );
    }

    /**
      Get SwitchingMode default value
    */
    int defaultSwitchingModeValue() const
    {
        return defaultSwitchingModeValue_helper();
    }

    /**
      Set ShowScreenMode
    */
    void setShowScreenMode( int v )
    {
      if (!isShowScreenModeImmutable())
        mShowScreenMode = v;
    }

    /**
      Get ShowScreenMode
    */
    int showScreenMode() const
    {
      return mShowScreenMode;
    }

    /**
      Is ShowScreenMode Immutable
    */
    bool isShowScreenModeImmutable() const
    {
      return isImmutable( QStringLiteral( "ShowScreenMode" ) );
    }

    /**
      Get ShowScreenMode default value
    */
    int defaultShowScreenModeValue() const
    {
        return defaultShowScreenModeValue_helper();
    }

    /**
      Set LayoutName
    */
    void setLayoutName( const QString & v )
    {
      if (!isLayoutNameImmutable())
        mLayoutName = v;
    }

    /**
      Get LayoutName
    */
    QString layoutName() const
    {
      return mLayoutName;
    }

    /**
      Is LayoutName Immutable
    */
    bool isLayoutNameImmutable() const
    {
      return isImmutable( QStringLiteral( "LayoutName" ) );
    }

    /**
      Get LayoutName default value
    */
    QString defaultLayoutNameValue() const
    {
        return defaultLayoutNameValue_helper();
    }

    /**
      Set ShowTabBox
    */
    void setShowTabBox( bool v )
    {
      if (!isShowTabBoxImmutable())
        mShowTabBox = v;
    }

    /**
      Get ShowTabBox
    */
    bool showTabBox() const
    {
      return mShowTabBox;
    }

    /**
      Is ShowTabBox Immutable
    */
    bool isShowTabBoxImmutable() const
    {
      return isImmutable( QStringLiteral( "ShowTabBox" ) );
    }

    /**
      Get ShowTabBox default value
    */
    bool defaultShowTabBoxValue() const
    {
        return defaultShowTabBoxValue_helper();
    }

    /**
      Set HighlightWindows
    */
    void setHighlightWindows( bool v )
    {
      if (!isHighlightWindowsImmutable())
        mHighlightWindows = v;
    }

    /**
      Get HighlightWindows
    */
    bool highlightWindows() const
    {
      return mHighlightWindows;
    }

    /**
      Is HighlightWindows Immutable
    */
    bool isHighlightWindowsImmutable() const
    {
      return isImmutable( QStringLiteral( "HighlightWindows" ) );
    }

    /**
      Get HighlightWindows default value
    */
    bool defaultHighlightWindowsValue() const
    {
        return defaultHighlightWindowsValue_helper();
    }

    /**
      Set DelayTime
    */
    void setDelayTime( int v )
    {
      if (!isDelayTimeImmutable())
        mDelayTime = v;
    }

    /**
      Get DelayTime
    */
    int delayTime() const
    {
      return mDelayTime;
    }

    /**
      Is DelayTime Immutable
    */
    bool isDelayTimeImmutable() const
    {
      return isImmutable( QStringLiteral( "DelayTime" ) );
    }

    /**
      Get DelayTime default value
    */
    int defaultDelayTimeValue() const
    {
        return defaultDelayTimeValue_helper();
    }

  protected:
    QString mParamTabBoxGroup;

    // $(TabBoxGroup)
    int mDesktopMode;
    int defaultDesktopModeValue_helper() const;
    int mActivitiesMode;
    int defaultActivitiesModeValue_helper() const;
    int mApplicationsMode;
    int defaultApplicationsModeValue_helper() const;
    int mOrderMinimizedMode;
    int defaultOrderMinimizedModeValue_helper() const;
    int mMinimizedMode;
    int defaultMinimizedModeValue_helper() const;
    int mShowDesktopMode;
    int defaultShowDesktopModeValue_helper() const;
    int mMultiScreenMode;
    int defaultMultiScreenModeValue_helper() const;
    int mSwitchingMode;
    int defaultSwitchingModeValue_helper() const;
    int mShowScreenMode;
    int defaultShowScreenModeValue_helper() const;
    QString mLayoutName;
    QString defaultLayoutNameValue_helper() const;
    bool mShowTabBox;
    bool defaultShowTabBoxValue_helper() const;
    bool mHighlightWindows;
    bool defaultHighlightWindowsValue_helper() const;
    int mDelayTime;
    int defaultDelayTimeValue_helper() const;
};

}
}

#endif

