// This file is generated by kconfig_compiler_kf5 from ksystemlog.kcfg.
// All changes you do to this file will be lost.
#ifndef KSYSTEMLOGCONFIG_H
#define KSYSTEMLOGCONFIG_H

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

class KSystemLogConfig : public KConfigSkeleton
{
  public:

    static KSystemLogConfig *self();
    ~KSystemLogConfig();

    /**
      Set Load this log mode at startup.
    */
    static
    void setStartupLogMode( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "StartupLogMode" ) ))
        self()->mStartupLogMode = v;
    }

    /**
      Get Load this log mode at startup.
    */
    static
    QString startupLogMode()
    {
      return self()->mStartupLogMode;
    }

    /**
      Set The log view line count limit.
    */
    static
    void setMaxLines( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "MaxLines" ) ))
        self()->mMaxLines = v;
    }

    /**
      Get The log view line count limit.
    */
    static
    int maxLines()
    {
      return self()->mMaxLines;
    }

    /**
      Set Option is true if the user wants to delete repeated log lines.
    */
    static
    void setDeleteDuplicatedLines( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "DeleteDuplicatedLines" ) ))
        self()->mDeleteDuplicatedLines = v;
    }

    /**
      Get Option is true if the user wants to delete repeated log lines.
    */
    static
    bool deleteDuplicatedLines()
    {
      return self()->mDeleteDuplicatedLines;
    }

    /**
      Set Option is true if the PID in the process column of the SystemLog is to be omitted.
    */
    static
    void setDeleteProcessIdentifier( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "DeleteProcessIdentifier" ) ))
        self()->mDeleteProcessIdentifier = v;
    }

    /**
      Get Option is true if the PID in the process column of the SystemLog is to be omitted.
    */
    static
    bool deleteProcessIdentifier()
    {
      return self()->mDeleteProcessIdentifier;
    }

    /**
      Set Option is true if the log lines are to be colored depending on their log level.
    */
    static
    void setColorizeLogLines( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ColorizeLogLines" ) ))
        self()->mColorizeLogLines = v;
    }

    /**
      Get Option is true if the log lines are to be colored depending on their log level.
    */
    static
    bool colorizeLogLines()
    {
      return self()->mColorizeLogLines;
    }

    /**
      Set Whether the tooltips are enabled.
    */
    static
    void setTooltipEnabled( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "TooltipEnabled" ) ))
        self()->mTooltipEnabled = v;
    }

    /**
      Get Whether the tooltips are enabled.
    */
    static
    bool tooltipEnabled()
    {
      return self()->mTooltipEnabled;
    }

    /**
      Set Whether new lines are displayed.
    */
    static
    void setNewLinesDisplayed( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "NewLinesDisplayed" ) ))
        self()->mNewLinesDisplayed = v;
    }

    /**
      Get Whether new lines are displayed.
    */
    static
    bool newLinesDisplayed()
    {
      return self()->mNewLinesDisplayed;
    }

    /**
      Set Whether the filter bar is shown.
    */
    static
    void setToggleFilterBar( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ToggleFilterBar" ) ))
        self()->mToggleFilterBar = v;
    }

    /**
      Get Whether the filter bar is shown.
    */
    static
    bool toggleFilterBar()
    {
      return self()->mToggleFilterBar;
    }

    /**
      Set The date format of log lines.
    */
    static
    void setDateFormat( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "DateFormat" ) ))
        self()->mDateFormat = v;
    }

    /**
      Get The date format of log lines.
    */
    static
    int dateFormat()
    {
      return self()->mDateFormat;
    }

  protected:
    KSystemLogConfig();
    friend class KSystemLogConfigHelper;


    // KSystemLogGeneral
    QString mStartupLogMode;
    int mMaxLines;
    bool mDeleteDuplicatedLines;
    bool mDeleteProcessIdentifier;
    bool mColorizeLogLines;
    bool mTooltipEnabled;
    bool mNewLinesDisplayed;
    bool mToggleFilterBar;
    int mDateFormat;

  private:
};

#endif

