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

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

class TDE_EXPORT KMixSettings : public TDEConfigSkeleton
{
  public:
    class EnumValueStyle
    {
      public:
      enum type { None, Absolute, Relative, COUNT };
    };
    class EnumOrientation
    {
      public:
      enum type { Horizontal, Vertical, COUNT };
    };
    class EnumIconTheme
    {
      public:
      enum type { Crystal, OldCrystal, System, COUNT };
    };

    static KMixSettings *self();
    ~KMixSettings();

    /**
      Set Enable system tray icon
    */
    static
    void setAllowDocking( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AllowDocking" ) ))
        self()->mAllowDocking = v;
    }

    /**
      Get Enable system tray icon
    */
    static
    bool allowDocking()
    {
      return self()->mAllowDocking;
    }

    /**
      Set Enable system tray volume slider
    */
    static
    void setTrayVolumeControl( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "TrayVolumeControl" ) ))
        self()->mTrayVolumeControl = v;
    }

    /**
      Get Enable system tray volume slider
    */
    static
    bool trayVolumeControl()
    {
      return self()->mTrayVolumeControl;
    }

    /**
      Set Show tickmarks
    */
    static
    void setTickmarks( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Tickmarks" ) ))
        self()->mTickmarks = v;
    }

    /**
      Get Show tickmarks
    */
    static
    bool tickmarks()
    {
      return self()->mTickmarks;
    }

    /**
      Set Show labels
    */
    static
    void setLabels( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Labels" ) ))
        self()->mLabels = v;
    }

    /**
      Get Show labels
    */
    static
    bool labels()
    {
      return self()->mLabels;
    }

    /**
      Set Volume Values
    */
    static
    void setValueStyle( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ValueStyle" ) ))
        self()->mValueStyle = v;
    }

    /**
      Get Volume Values
    */
    static
    int valueStyle()
    {
      return self()->mValueStyle;
    }

    /**
      Set Autostart
    */
    static
    void setStarttdeRestore( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "starttdeRestore" ) ))
        self()->mStarttdeRestore = v;
    }

    /**
      Get Autostart
    */
    static
    bool starttdeRestore()
    {
      return self()->mStarttdeRestore;
    }

    /**
      Set Middle click on system tray icon toggles muting
    */
    static
    void setDockIconMuting( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "DockIconMuting" ) ))
        self()->mDockIconMuting = v;
    }

    /**
      Get Middle click on system tray icon toggles muting
    */
    static
    bool dockIconMuting()
    {
      return self()->mDockIconMuting;
    }

    /**
      Set Show mixer window when starting KMix
    */
    static
    void setVisible( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Visible" ) ))
        self()->mVisible = v;
    }

    /**
      Get Show mixer window when starting KMix
    */
    static
    bool visible()
    {
      return self()->mVisible;
    }

    /**
      Set Show menubar
    */
    static
    void setMenubar( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Menubar" ) ))
        self()->mMenubar = v;
    }

    /**
      Get Show menubar
    */
    static
    bool menubar()
    {
      return self()->mMenubar;
    }

    /**
      Set Enable multi-driver mode
    */
    static
    void setMultiDriver( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "MultiDriver" ) ))
        self()->mMultiDriver = v;
    }

    /**
      Get Enable multi-driver mode
    */
    static
    bool multiDriver()
    {
      return self()->mMultiDriver;
    }

    /**
      Set Enable Surround View (EXPERIMENTAL)
    */
    static
    void setExperimental_ViewSurround( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Experimental_ViewSurround" ) ))
        self()->mExperimental_ViewSurround = v;
    }

    /**
      Get Enable Surround View (EXPERIMENTAL)
    */
    static
    bool experimental_ViewSurround()
    {
      return self()->mExperimental_ViewSurround;
    }

    /**
      Set Enable Grid View (EXPERIMENTAL)
    */
    static
    void setExperimental_ViewGrid( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Experimental_ViewGrid" ) ))
        self()->mExperimental_ViewGrid = v;
    }

    /**
      Get Enable Grid View (EXPERIMENTAL)
    */
    static
    bool experimental_ViewGrid()
    {
      return self()->mExperimental_ViewGrid;
    }

    /**
      Set Slider Orientation
    */
    static
    void setOrientation( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Orientation" ) ))
        self()->mOrientation = v;
    }

    /**
      Get Slider Orientation
    */
    static
    int orientation()
    {
      return self()->mOrientation;
    }

    /**
      Set UseDefaultMaster
    */
    static
    void setUseDefaultMaster( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "UseDefaultMaster" ) ))
        self()->mUseDefaultMaster = v;
    }

    /**
      Get UseDefaultMaster
    */
    static
    bool useDefaultMaster()
    {
      return self()->mUseDefaultMaster;
    }

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

    /**
      Get MasterMixer
    */
    static
    TQString masterMixer()
    {
      return self()->mMasterMixer;
    }

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

    /**
      Get MasterMixerDevice
    */
    static
    TQString masterMixerDevice()
    {
      return self()->mMasterMixerDevice;
    }

    /**
      Set Size
    */
    static
    void setSize( const TQSize & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Size" ) ))
        self()->mSize = v;
    }

    /**
      Get Size
    */
    static
    TQSize size()
    {
      return self()->mSize;
    }

    /**
      Set Position
    */
    static
    void setPosition( const TQPoint & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "Position" ) ))
        self()->mPosition = v;
    }

    /**
      Get Position
    */
    static
    TQPoint position()
    {
      return self()->mPosition;
    }

    /**
      Set Icon Theme
    */
    static
    void setIconTheme( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "IconTheme" ) ))
        self()->mIconTheme = v;
    }

    /**
      Get Icon Theme
    */
    static
    int iconTheme()
    {
      return self()->mIconTheme;
    }

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


    // General
    bool mAllowDocking;
    bool mTrayVolumeControl;
    bool mTickmarks;
    bool mLabels;
    int mValueStyle;
    bool mStarttdeRestore;
    bool mDockIconMuting;
    bool mVisible;
    bool mMenubar;
    bool mMultiDriver;
    bool mExperimental_ViewSurround;
    bool mExperimental_ViewGrid;
    int mOrientation;
    bool mUseDefaultMaster;
    TQString mMasterMixer;
    TQString mMasterMixerDevice;
    TQSize mSize;
    TQPoint mPosition;

    // Appearance
    int mIconTheme;

  private:
};

#endif

