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

#include <dolphin_export.h>

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

class DOLPHIN_EXPORT ContextMenuSettings : public KConfigSkeleton
{
  public:

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

    /**
      Set Show 'Copy To' and 'Move To' commands in context menu
    */
    static
    void setShowCopyMoveMenu( bool v )
    {
      if (!self()->isShowCopyMoveMenuImmutable())
        self()->mShowCopyMoveMenu = v;
    }

    /**
      Get Show 'Copy To' and 'Move To' commands in context menu
    */
    static
    bool showCopyMoveMenu()
    {
      return self()->mShowCopyMoveMenu;
    }

    /**
      Is Show 'Copy To' and 'Move To' commands in context menu Immutable
    */
    static
    bool isShowCopyMoveMenuImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowCopyMoveMenu" ) );
    }

    /**
      Set Show 'Add to Places' in context menu.
    */
    static
    void setShowAddToPlaces( bool v )
    {
      if (!self()->isShowAddToPlacesImmutable())
        self()->mShowAddToPlaces = v;
    }

    /**
      Get Show 'Add to Places' in context menu.
    */
    static
    bool showAddToPlaces()
    {
      return self()->mShowAddToPlaces;
    }

    /**
      Is Show 'Add to Places' in context menu. Immutable
    */
    static
    bool isShowAddToPlacesImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowAddToPlaces" ) );
    }

    /**
      Set Show 'Sort By' in context menu.
    */
    static
    void setShowSortBy( bool v )
    {
      if (!self()->isShowSortByImmutable())
        self()->mShowSortBy = v;
    }

    /**
      Get Show 'Sort By' in context menu.
    */
    static
    bool showSortBy()
    {
      return self()->mShowSortBy;
    }

    /**
      Is Show 'Sort By' in context menu. Immutable
    */
    static
    bool isShowSortByImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowSortBy" ) );
    }

    /**
      Set Show 'View Mode' in context menu.
    */
    static
    void setShowViewMode( bool v )
    {
      if (!self()->isShowViewModeImmutable())
        self()->mShowViewMode = v;
    }

    /**
      Get Show 'View Mode' in context menu.
    */
    static
    bool showViewMode()
    {
      return self()->mShowViewMode;
    }

    /**
      Is Show 'View Mode' in context menu. Immutable
    */
    static
    bool isShowViewModeImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowViewMode" ) );
    }

    /**
      Set Show 'Open in New Tab' and 'Open in New Tabs' in context menu.
    */
    static
    void setShowOpenInNewTab( bool v )
    {
      if (!self()->isShowOpenInNewTabImmutable())
        self()->mShowOpenInNewTab = v;
    }

    /**
      Get Show 'Open in New Tab' and 'Open in New Tabs' in context menu.
    */
    static
    bool showOpenInNewTab()
    {
      return self()->mShowOpenInNewTab;
    }

    /**
      Is Show 'Open in New Tab' and 'Open in New Tabs' in context menu. Immutable
    */
    static
    bool isShowOpenInNewTabImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowOpenInNewTab" ) );
    }

    /**
      Set Show 'Open in New Window' in context menu.
    */
    static
    void setShowOpenInNewWindow( bool v )
    {
      if (!self()->isShowOpenInNewWindowImmutable())
        self()->mShowOpenInNewWindow = v;
    }

    /**
      Get Show 'Open in New Window' in context menu.
    */
    static
    bool showOpenInNewWindow()
    {
      return self()->mShowOpenInNewWindow;
    }

    /**
      Is Show 'Open in New Window' in context menu. Immutable
    */
    static
    bool isShowOpenInNewWindowImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowOpenInNewWindow" ) );
    }

    /**
      Set Show 'Open In Split View' in context menu.
    */
    static
    void setShowOpenInSplitView( bool v )
    {
      if (!self()->isShowOpenInSplitViewImmutable())
        self()->mShowOpenInSplitView = v;
    }

    /**
      Get Show 'Open In Split View' in context menu.
    */
    static
    bool showOpenInSplitView()
    {
      return self()->mShowOpenInSplitView;
    }

    /**
      Is Show 'Open In Split View' in context menu. Immutable
    */
    static
    bool isShowOpenInSplitViewImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowOpenInSplitView" ) );
    }

    /**
      Set Show 'Copy Location' in context menu.
    */
    static
    void setShowCopyLocation( bool v )
    {
      if (!self()->isShowCopyLocationImmutable())
        self()->mShowCopyLocation = v;
    }

    /**
      Get Show 'Copy Location' in context menu.
    */
    static
    bool showCopyLocation()
    {
      return self()->mShowCopyLocation;
    }

    /**
      Is Show 'Copy Location' in context menu. Immutable
    */
    static
    bool isShowCopyLocationImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowCopyLocation" ) );
    }

    /**
      Set Show 'Duplicate Here' in context menu.
    */
    static
    void setShowDuplicateHere( bool v )
    {
      if (!self()->isShowDuplicateHereImmutable())
        self()->mShowDuplicateHere = v;
    }

    /**
      Get Show 'Duplicate Here' in context menu.
    */
    static
    bool showDuplicateHere()
    {
      return self()->mShowDuplicateHere;
    }

    /**
      Is Show 'Duplicate Here' in context menu. Immutable
    */
    static
    bool isShowDuplicateHereImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowDuplicateHere" ) );
    }

    /**
      Set Show 'Open Terminal' in context menu.
    */
    static
    void setShowOpenTerminal( bool v )
    {
      if (!self()->isShowOpenTerminalImmutable())
        self()->mShowOpenTerminal = v;
    }

    /**
      Get Show 'Open Terminal' in context menu.
    */
    static
    bool showOpenTerminal()
    {
      return self()->mShowOpenTerminal;
    }

    /**
      Is Show 'Open Terminal' in context menu. Immutable
    */
    static
    bool isShowOpenTerminalImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowOpenTerminal" ) );
    }

    /**
      Set Show 'Copy to other split view' in context menu.
    */
    static
    void setShowCopyToOtherSplitView( bool v )
    {
      if (!self()->isShowCopyToOtherSplitViewImmutable())
        self()->mShowCopyToOtherSplitView = v;
    }

    /**
      Get Show 'Copy to other split view' in context menu.
    */
    static
    bool showCopyToOtherSplitView()
    {
      return self()->mShowCopyToOtherSplitView;
    }

    /**
      Is Show 'Copy to other split view' in context menu. Immutable
    */
    static
    bool isShowCopyToOtherSplitViewImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowCopyToOtherSplitView" ) );
    }

    /**
      Set Show 'Move to other split view' in context menu.
    */
    static
    void setShowMoveToOtherSplitView( bool v )
    {
      if (!self()->isShowMoveToOtherSplitViewImmutable())
        self()->mShowMoveToOtherSplitView = v;
    }

    /**
      Get Show 'Move to other split view' in context menu.
    */
    static
    bool showMoveToOtherSplitView()
    {
      return self()->mShowMoveToOtherSplitView;
    }

    /**
      Is Show 'Move to other split view' in context menu. Immutable
    */
    static
    bool isShowMoveToOtherSplitViewImmutable()
    {
      return self()->isImmutable( QStringLiteral( "ShowMoveToOtherSplitView" ) );
    }

  protected:
    ContextMenuSettings();
    friend class ContextMenuSettingsHelper;


    // ContextMenu
    bool mShowCopyMoveMenu;
    bool mShowAddToPlaces;
    bool mShowSortBy;
    bool mShowViewMode;
    bool mShowOpenInNewTab;
    bool mShowOpenInNewWindow;
    bool mShowOpenInSplitView;
    bool mShowCopyLocation;
    bool mShowDuplicateHere;
    bool mShowOpenTerminal;
    bool mShowCopyToOtherSplitView;
    bool mShowMoveToOtherSplitView;
};

#endif

