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

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

class Settings : public TDEConfigSkeleton
{
  public:
    class EnumSkill
    {
      public:
      enum type { Easy, Medium, Hard, COUNT };
    };
    class EnumStyle
    {
      public:
      enum type { OLine, ORect, Line, Circle, COUNT };
    };

    static Settings *self();
    ~Settings();


    /**
      Get The background color of the game.
    */
    static
    TQColor color_Background()
    {
      return self()->mColor_Background;
    }


    /**
      Get The color of player 1
    */
    static
    TQColor color_Player1()
    {
      return self()->mColor_Player1;
    }


    /**
      Get The color of player 2
    */
    static
    TQColor color_Player2()
    {
      return self()->mColor_Player2;
    }


    /**
      Get Whether to show the winner by changing color.
    */
    static
    bool changeWinnerColor()
    {
      return self()->mChangeWinnerColor;
    }


    /**
      Get Whether to disable acceleration.
    */
    static
    bool acceleratorBlocked()
    {
      return self()->mAcceleratorBlocked;
    }


    /**
      Get Whether changing in the opposite direction causes a crash.
    */
    static
    bool oppositeDirCrashes()
    {
      return self()->mOppositeDirCrashes;
    }


    /**
      Get The width of the line.
    */
    static
    int rectSize()
    {
      return self()->mRectSize;
    }


    /**
      Get The speed of the line.
    */
    static
    int velocity()
    {
      return self()->mVelocity;
    }


    /**
      Get The skill of the computer player.
    */
    static
    int skill()
    {
      return self()->mSkill;
    }


    /**
      Get The line style.
    */
    static
    int style()
    {
      return self()->mStyle;
    }


    /**
      Get Whether to use a custom background image.
    */
    static
    bool backgroundImageChoice()
    {
      return self()->mBackgroundImageChoice;
    }


    /**
      Get Custom background image to use.
    */
    static
    TQString backgroundImage()
    {
      return self()->mBackgroundImage;
    }


    /**
      Get Whether player 1 is a computer player.
    */
    static
    bool computerplayer1()
    {
      return self()->mComputerplayer1;
    }


    /**
      Get Whether player 2 is a computer player.
    */
    static
    bool computerplayer2()
    {
      return self()->mComputerplayer2;
    }


    /**
      Get The name of player 1.
    */
    static
    TQString namePlayer1()
    {
      return self()->mNamePlayer1;
    }


    /**
      Get The name of player 2.
    */
    static
    TQString namePlayer2()
    {
      return self()->mNamePlayer2;
    }

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


    // Game
    TQColor mColor_Background;
    TQColor mColor_Player1;
    TQColor mColor_Player2;
    bool mChangeWinnerColor;
    bool mAcceleratorBlocked;
    bool mOppositeDirCrashes;
    int mRectSize;
    int mVelocity;
    int mSkill;
    int mStyle;
    bool mBackgroundImageChoice;
    TQString mBackgroundImage;
    bool mComputerplayer1;
    bool mComputerplayer2;
    TQString mNamePlayer1;
    TQString mNamePlayer2;

  private:
};

#endif

