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

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

class SearchPluginSettings : public KConfigSkeleton
{
  public:

    static SearchPluginSettings *self();
    ~SearchPluginSettings() override;

    /**
      Set Current search engine
    */
    static
    void setSearchEngine( int v )
    {
      if (!self()->isSearchEngineImmutable())
        self()->mSearchEngine = v;
    }

    /**
      Get Current search engine
    */
    static
    int searchEngine()
    {
      return self()->mSearchEngine;
    }

    /**
      Is Current search engine Immutable
    */
    static
    bool isSearchEngineImmutable()
    {
      return self()->isImmutable( QStringLiteral( "searchEngine" ) );
    }

    /**
      Set Use proxy settings for search
    */
    static
    void setUseProxySettings( bool v )
    {
      if (!self()->isUseProxySettingsImmutable())
        self()->mUseProxySettings = v;
    }

    /**
      Get Use proxy settings for search
    */
    static
    bool useProxySettings()
    {
      return self()->mUseProxySettings;
    }

    /**
      Is Use proxy settings for search Immutable
    */
    static
    bool isUseProxySettingsImmutable()
    {
      return self()->isImmutable( QStringLiteral( "useProxySettings" ) );
    }

    /**
      Set Use default browser
    */
    static
    void setUseDefaultBrowser( bool v )
    {
      if (!self()->isUseDefaultBrowserImmutable())
        self()->mUseDefaultBrowser = v;
    }

    /**
      Get Use default browser
    */
    static
    bool useDefaultBrowser()
    {
      return self()->mUseDefaultBrowser;
    }

    /**
      Is Use default browser Immutable
    */
    static
    bool isUseDefaultBrowserImmutable()
    {
      return self()->isImmutable( QStringLiteral( "useDefaultBrowser" ) );
    }

    /**
      Set Use custom browser
    */
    static
    void setUseCustomBrowser( bool v )
    {
      if (!self()->isUseCustomBrowserImmutable())
        self()->mUseCustomBrowser = v;
    }

    /**
      Get Use custom browser
    */
    static
    bool useCustomBrowser()
    {
      return self()->mUseCustomBrowser;
    }

    /**
      Is Use custom browser Immutable
    */
    static
    bool isUseCustomBrowserImmutable()
    {
      return self()->isImmutable( QStringLiteral( "useCustomBrowser" ) );
    }

    /**
      Set Custom browser executable path
    */
    static
    void setCustomBrowser( const QString & v )
    {
      if (!self()->isCustomBrowserImmutable())
        self()->mCustomBrowser = v;
    }

    /**
      Get Custom browser executable path
    */
    static
    QString customBrowser()
    {
      return self()->mCustomBrowser;
    }

    /**
      Is Custom browser executable path Immutable
    */
    static
    bool isCustomBrowserImmutable()
    {
      return self()->isImmutable( QStringLiteral( "customBrowser" ) );
    }

    /**
      Set openInExternal
    */
    static
    void setOpenInExternal( bool v )
    {
      if (!self()->isOpenInExternalImmutable())
        self()->mOpenInExternal = v;
    }

    /**
      Get openInExternal
    */
    static
    bool openInExternal()
    {
      return self()->mOpenInExternal;
    }

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

    /**
      Set restorePreviousSession
    */
    static
    void setRestorePreviousSession( bool v )
    {
      if (!self()->isRestorePreviousSessionImmutable())
        self()->mRestorePreviousSession = v;
    }

    /**
      Get restorePreviousSession
    */
    static
    bool restorePreviousSession()
    {
      return self()->mRestorePreviousSession;
    }

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

  protected:
    SearchPluginSettings();
    friend class SearchPluginSettingsHelper;


    // general
    int mSearchEngine;
    bool mUseProxySettings;
    bool mUseDefaultBrowser;
    bool mUseCustomBrowser;
    QString mCustomBrowser;
    bool mOpenInExternal;
    bool mRestorePreviousSession;
};

#endif

