// This file is generated by tdeconfig_compiler from kviewshell.kcfg.
// All changes you do to this file will be lost.
#ifndef KVSPREFS_H
#define KVSPREFS_H

#include <tdeconfigskeleton.h>
#include <kdebug.h>

class KVSPrefs : public TDEConfigSkeleton
{
  public:
    class EnumViewMode
    {
      public:
      enum type { SinglePage, Continuous, ContinuousFacing, Overview, COUNT };
    };
    class EnumFitToPage
    {
      public:
      enum type { FitToPage, FitToPageWidth, FitToPageHeight, DontFit, COUNT };
    };
    class EnumUnderlineLinks
    {
      public:
      enum type { Enabled, Disabled, OnlyOnHover, COUNT };
    };
    class EnumRenderMode
    {
      public:
      enum type { Inverted, Paper, pad_paper_color, Recolor, pad_fg_color, pad_bg_color, BlackWhite, COUNT };
    };

    static KVSPrefs *self();
    ~KVSPrefs();

    /**
      Set PageMarks
    */
    static
    void setPageMarks( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "PageMarks" ) ))
        self()->mPageMarks = v;
    }

    /**
      Get PageMarks
    */
    static
    bool pageMarks()
    {
      return self()->mPageMarks;
    }

    /**
      Set WatchFile
    */
    static
    void setWatchFile( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "WatchFile" ) ))
        self()->mWatchFile = v;
    }

    /**
      Get WatchFile
    */
    static
    bool watchFile()
    {
      return self()->mWatchFile;
    }

    /**
      Set RetainDocumentData
    */
    static
    void setRetainDocumentData( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "RetainDocumentData" ) ))
        self()->mRetainDocumentData = v;
    }

    /**
      Get RetainDocumentData
    */
    static
    bool retainDocumentData()
    {
      return self()->mRetainDocumentData;
    }

    /**
      Set Zoom
    */
    static
    void setZoom( double v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Zoom" ) ))
        self()->mZoom = v;
    }

    /**
      Get Zoom
    */
    static
    double zoom()
    {
      return self()->mZoom;
    }

    /**
      Set PaperFormat
    */
    static
    void setPaperFormat( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "PaperFormat" ) ))
        self()->mPaperFormat = v;
    }

    /**
      Get PaperFormat
    */
    static
    TQString paperFormat()
    {
      return self()->mPaperFormat;
    }

    /**
      Set Scrollbars
    */
    static
    void setScrollbars( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Scrollbars" ) ))
        self()->mScrollbars = v;
    }

    /**
      Get Scrollbars
    */
    static
    bool scrollbars()
    {
      return self()->mScrollbars;
    }

    /**
      Set UseDocumentSpecifiedSize
    */
    static
    void setUseDocumentSpecifiedSize( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "UseDocumentSpecifiedSize" ) ))
        self()->mUseDocumentSpecifiedSize = v;
    }

    /**
      Get UseDocumentSpecifiedSize
    */
    static
    bool useDocumentSpecifiedSize()
    {
      return self()->mUseDocumentSpecifiedSize;
    }

    /**
      Set ViewMode
    */
    static
    void setViewMode( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ViewMode" ) ))
        self()->mViewMode = v;
    }

    /**
      Get ViewMode
    */
    static
    int viewMode()
    {
      return self()->mViewMode;
    }

    /**
      Set FitToPage
    */
    static
    void setFitToPage( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FitToPage" ) ))
        self()->mFitToPage = v;
    }

    /**
      Get FitToPage
    */
    static
    int fitToPage()
    {
      return self()->mFitToPage;
    }

    /**
      Set OverviewModeColumns
    */
    static
    void setOverviewModeColumns( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "OverviewModeColumns" ) ))
        self()->mOverviewModeColumns = v;
    }

    /**
      Get OverviewModeColumns
    */
    static
    int overviewModeColumns()
    {
      return self()->mOverviewModeColumns;
    }

    /**
      Set OverviewModeRows
    */
    static
    void setOverviewModeRows( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "OverviewModeRows" ) ))
        self()->mOverviewModeRows = v;
    }

    /**
      Get OverviewModeRows
    */
    static
    int overviewModeRows()
    {
      return self()->mOverviewModeRows;
    }

    /**
      Set ShowThumbnails
    */
    static
    void setShowThumbnails( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ShowThumbnails" ) ))
        self()->mShowThumbnails = v;
    }

    /**
      Get ShowThumbnails
    */
    static
    bool showThumbnails()
    {
      return self()->mShowThumbnails;
    }

    /**
      Set MaxThumbnailWidth
    */
    static
    void setMaxThumbnailWidth( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "MaxThumbnailWidth" ) ))
        self()->mMaxThumbnailWidth = v;
    }

    /**
      Get MaxThumbnailWidth
    */
    static
    int maxThumbnailWidth()
    {
      return self()->mMaxThumbnailWidth;
    }

    /**
      Set UnderlineLinks
    */
    static
    void setUnderlineLinks( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "UnderlineLinks" ) ))
        self()->mUnderlineLinks = v;
    }

    /**
      Get UnderlineLinks
    */
    static
    int underlineLinks()
    {
      return self()->mUnderlineLinks;
    }

    /**
      Set GuiLayout
    */
    static
    void setGuiLayout( const TQValueList<int> & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "GuiLayout" ) ))
        self()->mGuiLayout = v;
    }

    /**
      Get GuiLayout
    */
    static
    TQValueList<int> guiLayout()
    {
      return self()->mGuiLayout;
    }

    /**
      Set SideBarItem
    */
    static
    void setSideBarItem( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "SideBarItem" ) ))
        self()->mSideBarItem = v;
    }

    /**
      Get SideBarItem
    */
    static
    int sideBarItem()
    {
      return self()->mSideBarItem;
    }

    /**
      Set PaperColor
    */
    static
    void setPaperColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "PaperColor" ) ))
        self()->mPaperColor = v;
    }

    /**
      Get PaperColor
    */
    static
    TQColor paperColor()
    {
      return self()->mPaperColor;
    }

    /**
      Set ChangeColors
    */
    static
    void setChangeColors( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ChangeColors" ) ))
        self()->mChangeColors = v;
    }

    /**
      Get ChangeColors
    */
    static
    bool changeColors()
    {
      return self()->mChangeColors;
    }

    /**
      Set RenderMode
    */
    static
    void setRenderMode( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "RenderMode" ) ))
        self()->mRenderMode = v;
    }

    /**
      Get RenderMode
    */
    static
    int renderMode()
    {
      return self()->mRenderMode;
    }

    /**
      Set RecolorForeground
    */
    static
    void setRecolorForeground( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "RecolorForeground" ) ))
        self()->mRecolorForeground = v;
    }

    /**
      Get RecolorForeground
    */
    static
    TQColor recolorForeground()
    {
      return self()->mRecolorForeground;
    }

    /**
      Set RecolorBackground
    */
    static
    void setRecolorBackground( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "RecolorBackground" ) ))
        self()->mRecolorBackground = v;
    }

    /**
      Get RecolorBackground
    */
    static
    TQColor recolorBackground()
    {
      return self()->mRecolorBackground;
    }

    /**
      Set BWThreshold
    */
    static
    void setBWThreshold( uint v )
    {
      if (v < 2)
      {
        kdDebug() << "setBWThreshold: value " << v << " is less than the minimum value of 2" << endl;
        v = 2;
      }

      if (v > 253)
      {
        kdDebug() << "setBWThreshold: value " << v << " is greater than the maximum value of 253" << endl;
        v = 253;
      }

      if (!self()->isImmutable( TQString::fromLatin1( "BWThreshold" ) ))
        self()->mBWThreshold = v;
    }

    /**
      Get BWThreshold
    */
    static
    uint bWThreshold()
    {
      return self()->mBWThreshold;
    }

    /**
      Set BWContrast
    */
    static
    void setBWContrast( uint v )
    {
      if (v < 2)
      {
        kdDebug() << "setBWContrast: value " << v << " is less than the minimum value of 2" << endl;
        v = 2;
      }

      if (v > 6)
      {
        kdDebug() << "setBWContrast: value " << v << " is greater than the maximum value of 6" << endl;
        v = 6;
      }

      if (!self()->isImmutable( TQString::fromLatin1( "BWContrast" ) ))
        self()->mBWContrast = v;
    }

    /**
      Get BWContrast
    */
    static
    uint bWContrast()
    {
      return self()->mBWContrast;
    }

    static
    void writeConfig()
    {
      static_cast<TDEConfigSkeleton*>(self())->writeConfig();
    }
  protected:
    KVSPrefs();
    static KVSPrefs *mSelf;


    // GUI
    bool mPageMarks;
    bool mWatchFile;
    bool mRetainDocumentData;
    double mZoom;
    TQString mPaperFormat;
    bool mScrollbars;
    bool mUseDocumentSpecifiedSize;
    int mViewMode;
    int mFitToPage;
    int mOverviewModeColumns;
    int mOverviewModeRows;
    bool mShowThumbnails;
    int mMaxThumbnailWidth;
    int mUnderlineLinks;
    TQValueList<int> mGuiLayout;
    int mSideBarItem;

    // Accessibility
    TQColor mPaperColor;
    bool mChangeColors;
    int mRenderMode;
    TQColor mRecolorForeground;
    TQColor mRecolorBackground;
    uint mBWThreshold;
    uint mBWContrast;

  private:
};

#endif

