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

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

#include "settingshelper.h"

class QQmlEngine;
class QJSEngine;

class AngelfishSettings : public KConfigSkeleton
{
  Q_OBJECT
  QML_ELEMENT
  QML_SINGLETON
  public:

    static AngelfishSettings *self();
    static AngelfishSettings *create(QQmlEngine *, QJSEngine *);
    ~AngelfishSettings() override;

    /**
      Set searchCustomUrl
    */
    static
    void setSearchCustomUrl( const QString & v )
    {
      if (v != self()->mSearchCustomUrl && !self()->isSearchCustomUrlImmutable()) {
        self()->mSearchCustomUrl = v;
        Q_EMIT self()->searchCustomUrlChanged();
      }
    }

    Q_PROPERTY(QString searchCustomUrl READ searchCustomUrl WRITE setSearchCustomUrl NOTIFY searchCustomUrlChanged)
    Q_PROPERTY(bool isSearchCustomUrlImmutable READ isSearchCustomUrlImmutable CONSTANT)
    /**
      Get searchCustomUrl
    */
    static
    QString searchCustomUrl()
    {
      return self()->mSearchCustomUrl;
    }

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

    /**
      Set homepage
    */
    static
    void setHomepage( const QUrl & v )
    {
      if (v != self()->mHomepage && !self()->isHomepageImmutable()) {
        self()->mHomepage = v;
        Q_EMIT self()->homepageChanged();
      }
    }

    Q_PROPERTY(QUrl homepage READ homepage WRITE setHomepage NOTIFY homepageChanged)
    Q_PROPERTY(bool isHomepageImmutable READ isHomepageImmutable CONSTANT)
    Q_PROPERTY(QUrl defaultHomepageValue READ defaultHomepageValue CONSTANT)
    /**
      Get homepage
    */
    static
    QUrl homepage()
    {
      return self()->mHomepage;
    }

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

    /**
      Get homepage default value
    */
    static
    QUrl defaultHomepageValue()
    {
        return defaultHomepageValue_helper();
    }

    /**
      Set showHomeButton
    */
    static
    void setShowHomeButton( bool v )
    {
      if (v != self()->mShowHomeButton && !self()->isShowHomeButtonImmutable()) {
        self()->mShowHomeButton = v;
        Q_EMIT self()->showHomeButtonChanged();
      }
    }

    Q_PROPERTY(bool showHomeButton READ showHomeButton WRITE setShowHomeButton NOTIFY showHomeButtonChanged)
    Q_PROPERTY(bool isShowHomeButtonImmutable READ isShowHomeButtonImmutable CONSTANT)
    Q_PROPERTY(bool defaultShowHomeButtonValue READ defaultShowHomeButtonValue CONSTANT)
    /**
      Get showHomeButton
    */
    static
    bool showHomeButton()
    {
      return self()->mShowHomeButton;
    }

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

    /**
      Get showHomeButton default value
    */
    static
    bool defaultShowHomeButtonValue()
    {
        return defaultShowHomeButtonValue_helper();
    }

    /**
      Set showTabBar
    */
    static
    void setShowTabBar( bool v )
    {
      if (v != self()->mShowTabBar && !self()->isShowTabBarImmutable()) {
        self()->mShowTabBar = v;
        Q_EMIT self()->showTabBarChanged();
      }
    }

    Q_PROPERTY(bool showTabBar READ showTabBar WRITE setShowTabBar NOTIFY showTabBarChanged)
    Q_PROPERTY(bool isShowTabBarImmutable READ isShowTabBarImmutable CONSTANT)
    Q_PROPERTY(bool defaultShowTabBarValue READ defaultShowTabBarValue CONSTANT)
    /**
      Get showTabBar
    */
    static
    bool showTabBar()
    {
      return self()->mShowTabBar;
    }

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

    /**
      Get showTabBar default value
    */
    static
    bool defaultShowTabBarValue()
    {
        return defaultShowTabBarValue_helper();
    }

    /**
      Set searchBaseUrl
    */
    static
    void setSearchBaseUrl( const QUrl & v )
    {
      if (v != self()->mSearchBaseUrl && !self()->isSearchBaseUrlImmutable()) {
        self()->mSearchBaseUrl = v;
        Q_EMIT self()->searchBaseUrlChanged();
      }
    }

    Q_PROPERTY(QUrl searchBaseUrl READ searchBaseUrl WRITE setSearchBaseUrl NOTIFY searchBaseUrlChanged)
    Q_PROPERTY(bool isSearchBaseUrlImmutable READ isSearchBaseUrlImmutable CONSTANT)
    Q_PROPERTY(QUrl defaultSearchBaseUrlValue READ defaultSearchBaseUrlValue CONSTANT)
    /**
      Get searchBaseUrl
    */
    static
    QUrl searchBaseUrl()
    {
      return self()->mSearchBaseUrl;
    }

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

    /**
      Get searchBaseUrl default value
    */
    static
    QUrl defaultSearchBaseUrlValue()
    {
        return defaultSearchBaseUrlValue_helper();
    }

    /**
      Set newTabUrl
    */
    static
    void setNewTabUrl( const QUrl & v )
    {
      if (v != self()->mNewTabUrl && !self()->isNewTabUrlImmutable()) {
        self()->mNewTabUrl = v;
        Q_EMIT self()->newTabUrlChanged();
      }
    }

    Q_PROPERTY(QUrl newTabUrl READ newTabUrl WRITE setNewTabUrl NOTIFY newTabUrlChanged)
    Q_PROPERTY(bool isNewTabUrlImmutable READ isNewTabUrlImmutable CONSTANT)
    Q_PROPERTY(QUrl defaultNewTabUrlValue READ defaultNewTabUrlValue CONSTANT)
    /**
      Get newTabUrl
    */
    static
    QUrl newTabUrl()
    {
      return self()->mNewTabUrl;
    }

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

    /**
      Get newTabUrl default value
    */
    static
    QUrl defaultNewTabUrlValue()
    {
        return defaultNewTabUrlValue_helper();
    }

    /**
      Set switchToNewTab
    */
    static
    void setSwitchToNewTab( bool v )
    {
      if (v != self()->mSwitchToNewTab && !self()->isSwitchToNewTabImmutable()) {
        self()->mSwitchToNewTab = v;
        Q_EMIT self()->switchToNewTabChanged();
      }
    }

    Q_PROPERTY(bool switchToNewTab READ switchToNewTab WRITE setSwitchToNewTab NOTIFY switchToNewTabChanged)
    Q_PROPERTY(bool isSwitchToNewTabImmutable READ isSwitchToNewTabImmutable CONSTANT)
    Q_PROPERTY(bool defaultSwitchToNewTabValue READ defaultSwitchToNewTabValue CONSTANT)
    /**
      Get switchToNewTab
    */
    static
    bool switchToNewTab()
    {
      return self()->mSwitchToNewTab;
    }

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

    /**
      Get switchToNewTab default value
    */
    static
    bool defaultSwitchToNewTabValue()
    {
        return defaultSwitchToNewTabValue_helper();
    }

    /**
      Set profile
    */
    static
    void setProfile( const QString & v )
    {
      if (v != self()->mProfile && !self()->isProfileImmutable()) {
        self()->mProfile = v;
        Q_EMIT self()->profileChanged();
      }
    }

    Q_PROPERTY(QString profile READ profile WRITE setProfile NOTIFY profileChanged)
    Q_PROPERTY(bool isProfileImmutable READ isProfileImmutable CONSTANT)
    Q_PROPERTY(QString defaultProfileValue READ defaultProfileValue CONSTANT)
    /**
      Get profile
    */
    static
    QString profile()
    {
      return self()->mProfile;
    }

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

    /**
      Get profile default value
    */
    static
    QString defaultProfileValue()
    {
        return defaultProfileValue_helper();
    }

    /**
      Set webAutoLoadImages
    */
    static
    void setWebAutoLoadImages( bool v )
    {
      if (v != self()->mWebAutoLoadImages && !self()->isWebAutoLoadImagesImmutable()) {
        self()->mWebAutoLoadImages = v;
        Q_EMIT self()->webAutoLoadImagesChanged();
      }
    }

    Q_PROPERTY(bool webAutoLoadImages READ webAutoLoadImages WRITE setWebAutoLoadImages NOTIFY webAutoLoadImagesChanged)
    Q_PROPERTY(bool isWebAutoLoadImagesImmutable READ isWebAutoLoadImagesImmutable CONSTANT)
    Q_PROPERTY(bool defaultWebAutoLoadImagesValue READ defaultWebAutoLoadImagesValue CONSTANT)
    /**
      Get webAutoLoadImages
    */
    static
    bool webAutoLoadImages()
    {
      return self()->mWebAutoLoadImages;
    }

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

    /**
      Get webAutoLoadImages default value
    */
    static
    bool defaultWebAutoLoadImagesValue()
    {
        return defaultWebAutoLoadImagesValue_helper();
    }

    /**
      Set webJavaScriptEnabled
    */
    static
    void setWebJavaScriptEnabled( bool v )
    {
      if (v != self()->mWebJavaScriptEnabled && !self()->isWebJavaScriptEnabledImmutable()) {
        self()->mWebJavaScriptEnabled = v;
        Q_EMIT self()->webJavaScriptEnabledChanged();
      }
    }

    Q_PROPERTY(bool webJavaScriptEnabled READ webJavaScriptEnabled WRITE setWebJavaScriptEnabled NOTIFY webJavaScriptEnabledChanged)
    Q_PROPERTY(bool isWebJavaScriptEnabledImmutable READ isWebJavaScriptEnabledImmutable CONSTANT)
    Q_PROPERTY(bool defaultWebJavaScriptEnabledValue READ defaultWebJavaScriptEnabledValue CONSTANT)
    /**
      Get webJavaScriptEnabled
    */
    static
    bool webJavaScriptEnabled()
    {
      return self()->mWebJavaScriptEnabled;
    }

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

    /**
      Get webJavaScriptEnabled default value
    */
    static
    bool defaultWebJavaScriptEnabledValue()
    {
        return defaultWebJavaScriptEnabledValue_helper();
    }

    /**
      Set webSmoothScrollingEnabled
    */
    static
    void setWebSmoothScrollingEnabled( bool v )
    {
      if (v != self()->mWebSmoothScrollingEnabled && !self()->isWebSmoothScrollingEnabledImmutable()) {
        self()->mWebSmoothScrollingEnabled = v;
        Q_EMIT self()->webSmoothScrollingEnabledChanged();
      }
    }

    Q_PROPERTY(bool webSmoothScrollingEnabled READ webSmoothScrollingEnabled WRITE setWebSmoothScrollingEnabled NOTIFY webSmoothScrollingEnabledChanged)
    Q_PROPERTY(bool isWebSmoothScrollingEnabledImmutable READ isWebSmoothScrollingEnabledImmutable CONSTANT)
    Q_PROPERTY(bool defaultWebSmoothScrollingEnabledValue READ defaultWebSmoothScrollingEnabledValue CONSTANT)
    /**
      Get webSmoothScrollingEnabled
    */
    static
    bool webSmoothScrollingEnabled()
    {
      return self()->mWebSmoothScrollingEnabled;
    }

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

    /**
      Get webSmoothScrollingEnabled default value
    */
    static
    bool defaultWebSmoothScrollingEnabledValue()
    {
        return defaultWebSmoothScrollingEnabledValue_helper();
    }

    /**
      Set webDarkModeEnabled
    */
    static
    void setWebDarkModeEnabled( bool v )
    {
      if (v != self()->mWebDarkModeEnabled && !self()->isWebDarkModeEnabledImmutable()) {
        self()->mWebDarkModeEnabled = v;
        Q_EMIT self()->webDarkModeEnabledChanged();
      }
    }

    Q_PROPERTY(bool webDarkModeEnabled READ webDarkModeEnabled WRITE setWebDarkModeEnabled NOTIFY webDarkModeEnabledChanged)
    Q_PROPERTY(bool isWebDarkModeEnabledImmutable READ isWebDarkModeEnabledImmutable CONSTANT)
    Q_PROPERTY(bool defaultWebDarkModeEnabledValue READ defaultWebDarkModeEnabledValue CONSTANT)
    /**
      Get webDarkModeEnabled
    */
    static
    bool webDarkModeEnabled()
    {
      return self()->mWebDarkModeEnabled;
    }

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

    /**
      Get webDarkModeEnabled default value
    */
    static
    bool defaultWebDarkModeEnabledValue()
    {
        return defaultWebDarkModeEnabledValue_helper();
    }

    /**
      Set navBarMainMenu
    */
    static
    void setNavBarMainMenu( bool v )
    {
      if (v != self()->mNavBarMainMenu && !self()->isNavBarMainMenuImmutable()) {
        self()->mNavBarMainMenu = v;
        Q_EMIT self()->navBarMainMenuChanged();
      }
    }

    Q_PROPERTY(bool navBarMainMenu READ navBarMainMenu WRITE setNavBarMainMenu NOTIFY navBarMainMenuChanged)
    Q_PROPERTY(bool isNavBarMainMenuImmutable READ isNavBarMainMenuImmutable CONSTANT)
    Q_PROPERTY(bool defaultNavBarMainMenuValue READ defaultNavBarMainMenuValue CONSTANT)
    /**
      Get navBarMainMenu
    */
    static
    bool navBarMainMenu()
    {
      return self()->mNavBarMainMenu;
    }

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

    /**
      Get navBarMainMenu default value
    */
    static
    bool defaultNavBarMainMenuValue()
    {
        return defaultNavBarMainMenuValue_helper();
    }

    /**
      Set navBarTabs
    */
    static
    void setNavBarTabs( bool v )
    {
      if (v != self()->mNavBarTabs && !self()->isNavBarTabsImmutable()) {
        self()->mNavBarTabs = v;
        Q_EMIT self()->navBarTabsChanged();
      }
    }

    Q_PROPERTY(bool navBarTabs READ navBarTabs WRITE setNavBarTabs NOTIFY navBarTabsChanged)
    Q_PROPERTY(bool isNavBarTabsImmutable READ isNavBarTabsImmutable CONSTANT)
    Q_PROPERTY(bool defaultNavBarTabsValue READ defaultNavBarTabsValue CONSTANT)
    /**
      Get navBarTabs
    */
    static
    bool navBarTabs()
    {
      return self()->mNavBarTabs;
    }

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

    /**
      Get navBarTabs default value
    */
    static
    bool defaultNavBarTabsValue()
    {
        return defaultNavBarTabsValue_helper();
    }

    /**
      Set navBarBack
    */
    static
    void setNavBarBack( bool v )
    {
      if (v != self()->mNavBarBack && !self()->isNavBarBackImmutable()) {
        self()->mNavBarBack = v;
        Q_EMIT self()->navBarBackChanged();
      }
    }

    Q_PROPERTY(bool navBarBack READ navBarBack WRITE setNavBarBack NOTIFY navBarBackChanged)
    Q_PROPERTY(bool isNavBarBackImmutable READ isNavBarBackImmutable CONSTANT)
    Q_PROPERTY(bool defaultNavBarBackValue READ defaultNavBarBackValue CONSTANT)
    /**
      Get navBarBack
    */
    static
    bool navBarBack()
    {
      return self()->mNavBarBack;
    }

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

    /**
      Get navBarBack default value
    */
    static
    bool defaultNavBarBackValue()
    {
        return defaultNavBarBackValue_helper();
    }

    /**
      Set navBarForward
    */
    static
    void setNavBarForward( bool v )
    {
      if (v != self()->mNavBarForward && !self()->isNavBarForwardImmutable()) {
        self()->mNavBarForward = v;
        Q_EMIT self()->navBarForwardChanged();
      }
    }

    Q_PROPERTY(bool navBarForward READ navBarForward WRITE setNavBarForward NOTIFY navBarForwardChanged)
    Q_PROPERTY(bool isNavBarForwardImmutable READ isNavBarForwardImmutable CONSTANT)
    Q_PROPERTY(bool defaultNavBarForwardValue READ defaultNavBarForwardValue CONSTANT)
    /**
      Get navBarForward
    */
    static
    bool navBarForward()
    {
      return self()->mNavBarForward;
    }

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

    /**
      Get navBarForward default value
    */
    static
    bool defaultNavBarForwardValue()
    {
        return defaultNavBarForwardValue_helper();
    }

    /**
      Set navBarReload
    */
    static
    void setNavBarReload( bool v )
    {
      if (v != self()->mNavBarReload && !self()->isNavBarReloadImmutable()) {
        self()->mNavBarReload = v;
        Q_EMIT self()->navBarReloadChanged();
      }
    }

    Q_PROPERTY(bool navBarReload READ navBarReload WRITE setNavBarReload NOTIFY navBarReloadChanged)
    Q_PROPERTY(bool isNavBarReloadImmutable READ isNavBarReloadImmutable CONSTANT)
    Q_PROPERTY(bool defaultNavBarReloadValue READ defaultNavBarReloadValue CONSTANT)
    /**
      Get navBarReload
    */
    static
    bool navBarReload()
    {
      return self()->mNavBarReload;
    }

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

    /**
      Get navBarReload default value
    */
    static
    bool defaultNavBarReloadValue()
    {
        return defaultNavBarReloadValue_helper();
    }

    /**
      Set navBarContextMenu
    */
    static
    void setNavBarContextMenu( bool v )
    {
      if (v != self()->mNavBarContextMenu && !self()->isNavBarContextMenuImmutable()) {
        self()->mNavBarContextMenu = v;
        Q_EMIT self()->navBarContextMenuChanged();
      }
    }

    Q_PROPERTY(bool navBarContextMenu READ navBarContextMenu WRITE setNavBarContextMenu NOTIFY navBarContextMenuChanged)
    Q_PROPERTY(bool isNavBarContextMenuImmutable READ isNavBarContextMenuImmutable CONSTANT)
    /**
      Get navBarContextMenu
    */
    static
    bool navBarContextMenu()
    {
      return self()->mNavBarContextMenu;
    }

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

    /**
      Set windowX
    */
    static
    void setWindowX( int v )
    {
      if (v != self()->mWindowX && !self()->isWindowXImmutable()) {
        self()->mWindowX = v;
        Q_EMIT self()->windowXChanged();
      }
    }

    Q_PROPERTY(int windowX READ windowX WRITE setWindowX NOTIFY windowXChanged)
    Q_PROPERTY(bool isWindowXImmutable READ isWindowXImmutable CONSTANT)
    /**
      Get windowX
    */
    static
    int windowX()
    {
      return self()->mWindowX;
    }

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

    /**
      Set windowY
    */
    static
    void setWindowY( int v )
    {
      if (v != self()->mWindowY && !self()->isWindowYImmutable()) {
        self()->mWindowY = v;
        Q_EMIT self()->windowYChanged();
      }
    }

    Q_PROPERTY(int windowY READ windowY WRITE setWindowY NOTIFY windowYChanged)
    Q_PROPERTY(bool isWindowYImmutable READ isWindowYImmutable CONSTANT)
    /**
      Get windowY
    */
    static
    int windowY()
    {
      return self()->mWindowY;
    }

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

    /**
      Set windowWidth
    */
    static
    void setWindowWidth( int v )
    {
      if (v != self()->mWindowWidth && !self()->isWindowWidthImmutable()) {
        self()->mWindowWidth = v;
        Q_EMIT self()->windowWidthChanged();
      }
    }

    Q_PROPERTY(int windowWidth READ windowWidth WRITE setWindowWidth NOTIFY windowWidthChanged)
    Q_PROPERTY(bool isWindowWidthImmutable READ isWindowWidthImmutable CONSTANT)
    Q_PROPERTY(int defaultWindowWidthValue READ defaultWindowWidthValue CONSTANT)
    /**
      Get windowWidth
    */
    static
    int windowWidth()
    {
      return self()->mWindowWidth;
    }

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

    /**
      Get windowWidth default value
    */
    static
    int defaultWindowWidthValue()
    {
        return defaultWindowWidthValue_helper();
    }

    /**
      Set windowHeight
    */
    static
    void setWindowHeight( int v )
    {
      if (v != self()->mWindowHeight && !self()->isWindowHeightImmutable()) {
        self()->mWindowHeight = v;
        Q_EMIT self()->windowHeightChanged();
      }
    }

    Q_PROPERTY(int windowHeight READ windowHeight WRITE setWindowHeight NOTIFY windowHeightChanged)
    Q_PROPERTY(bool isWindowHeightImmutable READ isWindowHeightImmutable CONSTANT)
    Q_PROPERTY(int defaultWindowHeightValue READ defaultWindowHeightValue CONSTANT)
    /**
      Get windowHeight
    */
    static
    int windowHeight()
    {
      return self()->mWindowHeight;
    }

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

    /**
      Get windowHeight default value
    */
    static
    int defaultWindowHeightValue()
    {
        return defaultWindowHeightValue_helper();
    }

    /**
      Set adblockEnabled
    */
    static
    void setAdblockEnabled( bool v )
    {
      if (v != self()->mAdblockEnabled && !self()->isAdblockEnabledImmutable()) {
        self()->mAdblockEnabled = v;
        Q_EMIT self()->adblockEnabledChanged();
      }
    }

    Q_PROPERTY(bool adblockEnabled READ adblockEnabled WRITE setAdblockEnabled NOTIFY adblockEnabledChanged)
    Q_PROPERTY(bool isAdblockEnabledImmutable READ isAdblockEnabledImmutable CONSTANT)
    Q_PROPERTY(bool defaultAdblockEnabledValue READ defaultAdblockEnabledValue CONSTANT)
    /**
      Get adblockEnabled
    */
    static
    bool adblockEnabled()
    {
      return self()->mAdblockEnabled;
    }

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

    /**
      Get adblockEnabled default value
    */
    static
    bool defaultAdblockEnabledValue()
    {
        return defaultAdblockEnabledValue_helper();
    }

    /**
      Set adblockFilterUrls
    */
    static
    void setAdblockFilterUrls( const QList<QUrl> & v )
    {
      if (v != self()->mAdblockFilterUrls && !self()->isAdblockFilterUrlsImmutable()) {
        self()->mAdblockFilterUrls = v;
        Q_EMIT self()->adblockFilterUrlsChanged();
      }
    }

    Q_PROPERTY(QList<QUrl> adblockFilterUrls READ adblockFilterUrls WRITE setAdblockFilterUrls NOTIFY adblockFilterUrlsChanged)
    Q_PROPERTY(bool isAdblockFilterUrlsImmutable READ isAdblockFilterUrlsImmutable CONSTANT)
    Q_PROPERTY(QList<QUrl> defaultAdblockFilterUrlsValue READ defaultAdblockFilterUrlsValue CONSTANT)
    /**
      Get adblockFilterUrls
    */
    static
    QList<QUrl> adblockFilterUrls()
    {
      return self()->mAdblockFilterUrls;
    }

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

    /**
      Get adblockFilterUrls default value
    */
    static
    QList<QUrl> defaultAdblockFilterUrlsValue()
    {
        return defaultAdblockFilterUrlsValue_helper();
    }

    /**
      Set adblockFilterNames
    */
    static
    void setAdblockFilterNames( const QStringList & v )
    {
      if (v != self()->mAdblockFilterNames && !self()->isAdblockFilterNamesImmutable()) {
        self()->mAdblockFilterNames = v;
        Q_EMIT self()->adblockFilterNamesChanged();
      }
    }

    Q_PROPERTY(QStringList adblockFilterNames READ adblockFilterNames WRITE setAdblockFilterNames NOTIFY adblockFilterNamesChanged)
    Q_PROPERTY(bool isAdblockFilterNamesImmutable READ isAdblockFilterNamesImmutable CONSTANT)
    Q_PROPERTY(QStringList defaultAdblockFilterNamesValue READ defaultAdblockFilterNamesValue CONSTANT)
    /**
      Get adblockFilterNames
    */
    static
    QStringList adblockFilterNames()
    {
      return self()->mAdblockFilterNames;
    }

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

    /**
      Get adblockFilterNames default value
    */
    static
    QStringList defaultAdblockFilterNamesValue()
    {
        return defaultAdblockFilterNamesValue_helper();
    }

    /**
      Set adblockFilterDownloadDismissed
    */
    static
    void setAdblockFilterDownloadDismissed( bool v )
    {
      if (v != self()->mAdblockFilterDownloadDismissed && !self()->isAdblockFilterDownloadDismissedImmutable()) {
        self()->mAdblockFilterDownloadDismissed = v;
        Q_EMIT self()->adblockFilterDownloadDismissedChanged();
      }
    }

    Q_PROPERTY(bool adblockFilterDownloadDismissed READ adblockFilterDownloadDismissed WRITE setAdblockFilterDownloadDismissed NOTIFY adblockFilterDownloadDismissedChanged)
    Q_PROPERTY(bool isAdblockFilterDownloadDismissedImmutable READ isAdblockFilterDownloadDismissedImmutable CONSTANT)
    Q_PROPERTY(bool defaultAdblockFilterDownloadDismissedValue READ defaultAdblockFilterDownloadDismissedValue CONSTANT)
    /**
      Get adblockFilterDownloadDismissed
    */
    static
    bool adblockFilterDownloadDismissed()
    {
      return self()->mAdblockFilterDownloadDismissed;
    }

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

    /**
      Get adblockFilterDownloadDismissed default value
    */
    static
    bool defaultAdblockFilterDownloadDismissedValue()
    {
        return defaultAdblockFilterDownloadDismissedValue_helper();
    }


    enum {
      signalSearchCustomUrlChanged = 1,
      signalHomepageChanged = 2,
      signalShowHomeButtonChanged = 3,
      signalShowTabBarChanged = 4,
      signalSearchBaseUrlChanged = 5,
      signalNewTabUrlChanged = 6,
      signalSwitchToNewTabChanged = 7,
      signalProfileChanged = 8,
      signalWebAutoLoadImagesChanged = 9,
      signalWebJavaScriptEnabledChanged = 10,
      signalWebSmoothScrollingEnabledChanged = 11,
      signalWebDarkModeEnabledChanged = 12,
      signalNavBarMainMenuChanged = 13,
      signalNavBarTabsChanged = 14,
      signalNavBarBackChanged = 15,
      signalNavBarForwardChanged = 16,
      signalNavBarReloadChanged = 17,
      signalNavBarContextMenuChanged = 18,
      signalWindowXChanged = 19,
      signalWindowYChanged = 20,
      signalWindowWidthChanged = 21,
      signalWindowHeightChanged = 22,
      signalAdblockEnabledChanged = 23,
      signalAdblockFilterUrlsChanged = 24,
      signalAdblockFilterNamesChanged = 25,
      signalAdblockFilterDownloadDismissedChanged = 26
    };

  Q_SIGNALS:
    void searchCustomUrlChanged();

    void homepageChanged();

    void showHomeButtonChanged();

    void showTabBarChanged();

    void searchBaseUrlChanged();

    void newTabUrlChanged();

    void switchToNewTabChanged();

    void profileChanged();

    void webAutoLoadImagesChanged();

    void webJavaScriptEnabledChanged();

    void webSmoothScrollingEnabledChanged();

    void webDarkModeEnabledChanged();

    void navBarMainMenuChanged();

    void navBarTabsChanged();

    void navBarBackChanged();

    void navBarForwardChanged();

    void navBarReloadChanged();

    void navBarContextMenuChanged();

    void windowXChanged();

    void windowYChanged();

    void windowWidthChanged();

    void windowHeightChanged();

    void adblockEnabledChanged();

    void adblockFilterUrlsChanged();

    void adblockFilterNamesChanged();

    void adblockFilterDownloadDismissedChanged();

  private:
    void itemChanged(quint64 signalFlag);

  protected:
    AngelfishSettings(QObject *parent = nullptr);
    friend class AngelfishSettingsHelper;


    // SettingsPage
    QString mSearchCustomUrl;
    static QString defaultSearchCustomUrlValue_helper();

    // Browser
    QUrl mHomepage;
    static QUrl defaultHomepageValue_helper();
    bool mShowHomeButton;
    static bool defaultShowHomeButtonValue_helper();
    bool mShowTabBar;
    static bool defaultShowTabBarValue_helper();
    QUrl mSearchBaseUrl;
    static QUrl defaultSearchBaseUrlValue_helper();
    QUrl mNewTabUrl;
    static QUrl defaultNewTabUrlValue_helper();
    bool mSwitchToNewTab;
    static bool defaultSwitchToNewTabValue_helper();

    // WebView
    QString mProfile;
    static QString defaultProfileValue_helper();
    bool mWebAutoLoadImages;
    static bool defaultWebAutoLoadImagesValue_helper();
    bool mWebJavaScriptEnabled;
    static bool defaultWebJavaScriptEnabledValue_helper();
    bool mWebSmoothScrollingEnabled;
    static bool defaultWebSmoothScrollingEnabledValue_helper();
    bool mWebDarkModeEnabled;
    static bool defaultWebDarkModeEnabledValue_helper();

    // NavigationBar
    bool mNavBarMainMenu;
    static bool defaultNavBarMainMenuValue_helper();
    bool mNavBarTabs;
    static bool defaultNavBarTabsValue_helper();
    bool mNavBarBack;
    static bool defaultNavBarBackValue_helper();
    bool mNavBarForward;
    static bool defaultNavBarForwardValue_helper();
    bool mNavBarReload;
    static bool defaultNavBarReloadValue_helper();
    bool mNavBarContextMenu;
    static bool defaultNavBarContextMenuValue_helper();

    // Window
    int mWindowX;
    static int defaultWindowXValue_helper();
    int mWindowY;
    static int defaultWindowYValue_helper();
    int mWindowWidth;
    static int defaultWindowWidthValue_helper();
    int mWindowHeight;
    static int defaultWindowHeightValue_helper();

    // Adblock
    bool mAdblockEnabled;
    static bool defaultAdblockEnabledValue_helper();
    QList<QUrl> mAdblockFilterUrls;
    static QList<QUrl> defaultAdblockFilterUrlsValue_helper();
    QStringList mAdblockFilterNames;
    static QStringList defaultAdblockFilterNamesValue_helper();
    bool mAdblockFilterDownloadDismissed;
    static bool defaultAdblockFilterDownloadDismissedValue_helper();
};

#endif

