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

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

class Prefs : public TDEConfigSkeleton
{
  public:

    static Prefs *self();
    ~Prefs();

    /**
      Set Is this the first time KWordQuiz is run?
    */
    static
    void setFirstRun( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FirstRun" ) ))
        self()->mFirstRun = v;
    }

    /**
      Get Is this the first time KWordQuiz is run?
    */
    static
    bool firstRun()
    {
      return self()->mFirstRun;
    }

    /**
      Set Titles for column 1
    */
    static
    void setColumnTitles1( const TQStringList & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ColumnTitles1" ) ))
        self()->mColumnTitles1 = v;
    }

    /**
      Get Titles for column 1
    */
    static
    TQStringList columnTitles1()
    {
      return self()->mColumnTitles1;
    }

    /**
      Set Titles for column 2
    */
    static
    void setColumnTitles2( const TQStringList & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ColumnTitles2" ) ))
        self()->mColumnTitles2 = v;
    }

    /**
      Get Titles for column 2
    */
    static
    TQStringList columnTitles2()
    {
      return self()->mColumnTitles2;
    }

    /**
      Set Font used in the editor
    */
    static
    void setEditorFont( const TQFont & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "EditorFont" ) ))
        self()->mEditorFont = v;
    }

    /**
      Get Font used in the editor
    */
    static
    TQFont editorFont()
    {
      return self()->mEditorFont;
    }

    /**
      Set If Fill-in-the-blank should be enabled
    */
    static
    void setEnableBlanks( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "EnableBlanks" ) ))
        self()->mEnableBlanks = v;
    }

    /**
      Get If Fill-in-the-blank should be enabled
    */
    static
    bool enableBlanks()
    {
      return self()->mEnableBlanks;
    }

    /**
      Set Direction the Enter key moves in the editor
    */
    static
    void setEnterMove( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "EnterMove" ) ))
        self()->mEnterMove = v;
    }

    /**
      Get Direction the Enter key moves in the editor
    */
    static
    int enterMove()
    {
      return self()->mEnterMove;
    }

    /**
      Set Characters for the special character toolbar
    */
    static
    void setSpecialCharacters( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "SpecialCharacters" ) ))
        self()->mSpecialCharacters = v;
    }

    /**
      Get Characters for the special character toolbar
    */
    static
    TQString specialCharacters()
    {
      return self()->mSpecialCharacters;
    }

    /**
      Set Automatically check selected answer in multiple choice
    */
    static
    void setAutoCheck( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AutoCheck" ) ))
        self()->mAutoCheck = v;
    }

    /**
      Get Automatically check selected answer in multiple choice
    */
    static
    bool autoCheck()
    {
      return self()->mAutoCheck;
    }

    /**
      Set Automatically flip flashcard
    */
    static
    void setAutoFlip( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AutoFlip" ) ))
        self()->mAutoFlip = v;
    }

    /**
      Get Automatically flip flashcard
    */
    static
    bool autoFlip()
    {
      return self()->mAutoFlip;
    }

    /**
      Set Time delay for flipping flashcard
    */
    static
    void setFlipDelay( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FlipDelay" ) ))
        self()->mFlipDelay = v;
    }

    /**
      Get Time delay for flipping flashcard
    */
    static
    int flipDelay()
    {
      return self()->mFlipDelay;
    }

    /**
      Set Treat use of hint as error
    */
    static
    void setHintError( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "HintError" ) ))
        self()->mHintError = v;
    }

    /**
      Get Treat use of hint as error
    */
    static
    bool hintError()
    {
      return self()->mHintError;
    }

    /**
      Set Count flashcard as correct or error
    */
    static
    void setKeepDiscard( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "KeepDiscard" ) ))
        self()->mKeepDiscard = v;
    }

    /**
      Get Count flashcard as correct or error
    */
    static
    int keepDiscard()
    {
      return self()->mKeepDiscard;
    }

    /**
      Set Quiz mode
    */
    static
    void setMode( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Mode" ) ))
        self()->mMode = v;
    }

    /**
      Get Quiz mode
    */
    static
    int mode()
    {
      return self()->mMode;
    }

    /**
      Set Show score as percentage
    */
    static
    void setPercent( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Percent" ) ))
        self()->mPercent = v;
    }

    /**
      Get Show score as percentage
    */
    static
    bool percent()
    {
      return self()->mPercent;
    }

    /**
      Set Font used for front of flashcard
    */
    static
    void setFrontFont( const TQFont & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FrontFont" ) ))
        self()->mFrontFont = v;
    }

    /**
      Get Font used for front of flashcard
    */
    static
    TQFont frontFont()
    {
      return self()->mFrontFont;
    }

    /**
      Set Color used for text on front of flashcard
    */
    static
    void setFrontTextColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FrontTextColor" ) ))
        self()->mFrontTextColor = v;
    }

    /**
      Get Color used for text on front of flashcard
    */
    static
    TQColor frontTextColor()
    {
      return self()->mFrontTextColor;
    }

    /**
      Set Color used for front of flashcard
    */
    static
    void setFrontCardColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FrontCardColor" ) ))
        self()->mFrontCardColor = v;
    }

    /**
      Get Color used for front of flashcard
    */
    static
    TQColor frontCardColor()
    {
      return self()->mFrontCardColor;
    }

    /**
      Set Color used for frame on front of flashcard
    */
    static
    void setFrontFrameColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FrontFrameColor" ) ))
        self()->mFrontFrameColor = v;
    }

    /**
      Get Color used for frame on front of flashcard
    */
    static
    TQColor frontFrameColor()
    {
      return self()->mFrontFrameColor;
    }

    /**
      Set Font used for back of flashcard
    */
    static
    void setBackFont( const TQFont & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "BackFont" ) ))
        self()->mBackFont = v;
    }

    /**
      Get Font used for back of flashcard
    */
    static
    TQFont backFont()
    {
      return self()->mBackFont;
    }

    /**
      Set Color used for text on back of flashcard
    */
    static
    void setBackTextColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "BackTextColor" ) ))
        self()->mBackTextColor = v;
    }

    /**
      Get Color used for text on back of flashcard
    */
    static
    TQColor backTextColor()
    {
      return self()->mBackTextColor;
    }

    /**
      Set Color used for back of flashcard
    */
    static
    void setBackCardColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "BackCardColor" ) ))
        self()->mBackCardColor = v;
    }

    /**
      Get Color used for back of flashcard
    */
    static
    TQColor backCardColor()
    {
      return self()->mBackCardColor;
    }

    /**
      Set Color used for frame on back of flashcard
    */
    static
    void setBackFrameColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "BackFrameColor" ) ))
        self()->mBackFrameColor = v;
    }

    /**
      Get Color used for frame on back of flashcard
    */
    static
    TQColor backFrameColor()
    {
      return self()->mBackFrameColor;
    }

    /**
      Set The Providers path for KWordQuiz
    */
    static
    void setProvidersUrl( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ProvidersUrl" ) ))
        self()->mProvidersUrl = v;
    }

    /**
      Get The Providers path for KWordQuiz
    */
    static
    TQString providersUrl()
    {
      return self()->mProvidersUrl;
    }

    /**
      Set The command used to start a downloaded vocabulary
    */
    static
    void setInstallationCommand( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "InstallationCommand" ) ))
        self()->mInstallationCommand = v;
    }

    /**
      Get The command used to start a downloaded vocabulary
    */
    static
    TQString installationCommand()
    {
      return self()->mInstallationCommand;
    }

    /**
      Set The folder where downloaded vocabularies are saved by default (relative to $HOME)
    */
    static
    void setInstallPath( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "InstallPath" ) ))
        self()->mInstallPath = v;
    }

    /**
      Get The folder where downloaded vocabularies are saved by default (relative to $HOME)
    */
    static
    TQString installPath()
    {
      return self()->mInstallPath;
    }

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


    // General
    bool mFirstRun;

    // Editor
    TQStringList mColumnTitles1;
    TQStringList mColumnTitles2;
    TQFont mEditorFont;
    bool mEnableBlanks;
    int mEnterMove;
    TQString mSpecialCharacters;

    // Quiz
    bool mAutoCheck;
    bool mAutoFlip;
    int mFlipDelay;
    bool mHintError;
    int mKeepDiscard;
    int mMode;
    bool mPercent;

    // FlashCard
    TQFont mFrontFont;
    TQColor mFrontTextColor;
    TQColor mFrontCardColor;
    TQColor mFrontFrameColor;
    TQFont mBackFont;
    TQColor mBackTextColor;
    TQColor mBackCardColor;
    TQColor mBackFrameColor;

    // TDENewStuff
    TQString mProvidersUrl;
    TQString mInstallationCommand;
    TQString mInstallPath;

  private:
};

#endif

