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

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

class KMyMoneySettings : public TDEConfigSkeleton
{
  public:

    static KMyMoneySettings *self();
    ~KMyMoneySettings();

    /**
      Set Always show a No. field in transaction form
    */
    static
    void setAlwaysShowNrField( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AlwaysShowNrField" ) ))
        self()->mAlwaysShowNrField = v;
    }

    /**
      Get Always show a No. field in transaction form
    */
    static
    bool alwaysShowNrField()
    {
      return self()->mAlwaysShowNrField;
    }

    /**
      Set Auto fill with previous transaction data
    */
    static
    void setAutoFillTransaction( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AutoFillTransaction" ) ))
        self()->mAutoFillTransaction = v;
    }

    /**
      Get Auto fill with previous transaction data
    */
    static
    int autoFillTransaction()
    {
      return self()->mAutoFillTransaction;
    }

    /**
      Set Prefill payee with previous used value
    */
    static
    void setAutoReusePayee( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AutoReusePayee" ) ))
        self()->mAutoReusePayee = v;
    }

    /**
      Get Prefill payee with previous used value
    */
    static
    bool autoReusePayee()
    {
      return self()->mAutoReusePayee;
    }

    /**
      Set Treat two transactions as identical, if amount differs less than
    */
    static
    void setAutoFillDifference( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AutoFillDifference" ) ))
        self()->mAutoFillDifference = v;
    }

    /**
      Get Treat two transactions as identical, if amount differs less than
    */
    static
    int autoFillDifference()
    {
      return self()->mAutoFillDifference;
    }

    /**
      Set Auto increment check number
    */
    static
    void setAutoIncCheckNumber( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AutoIncCheckNumber" ) ))
        self()->mAutoIncCheckNumber = v;
    }

    /**
      Get Auto increment check number
    */
    static
    bool autoIncCheckNumber()
    {
      return self()->mAutoIncCheckNumber;
    }

    /**
      Set Autosave file periodically
    */
    static
    void setAutoSaveFile( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "AutoSaveFile" ) ))
        self()->mAutoSaveFile = v;
    }

    /**
      Get Autosave file periodically
    */
    static
    bool autoSaveFile()
    {
      return self()->mAutoSaveFile;
    }

    /**
      Set Autosave interval in minutes
    */
    static
    void setAutoSavePeriod( int v )
    {
      if (v < 0)
      {
        kdDebug() << "setAutoSavePeriod: value " << v << " is less than the minimum value of 0" << endl;
        v = 0;
      }

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

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

    /**
      Get Autosave interval in minutes
    */
    static
    int autoSavePeriod()
    {
      return self()->mAutoSavePeriod;
    }

    /**
      Set Check schedules upon startup
    */
    static
    void setCheckSchedule( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "CheckSchedule" ) ))
        self()->mCheckSchedule = v;
    }

    /**
      Get Check schedules upon startup
    */
    static
    bool checkSchedule()
    {
      return self()->mCheckSchedule;
    }

    /**
      Set Enter transactions this number of days in advance
    */
    static
    void setCheckSchedulePreview( int v )
    {
      if (v < 0)
      {
        kdDebug() << "setCheckSchedulePreview: value " << v << " is less than the minimum value of 0" << endl;
        v = 0;
      }

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

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

    /**
      Get Enter transactions this number of days in advance
    */
    static
    int checkSchedulePreview()
    {
      return self()->mCheckSchedulePreview;
    }

    /**
      Set Name of external calculator program
    */
    static
    void setExternalCalculator( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ExternalCalculator" ) ))
        self()->mExternalCalculator = v;
    }

    /**
      Get Name of external calculator program
    */
    static
    TQString externalCalculator()
    {
      return self()->mExternalCalculator;
    }

    /**
      Set Number of days to preview schedules in ledger
    */
    static
    void setSchedulePreview( int v )
    {
      if (v < 0)
      {
        kdDebug() << "setSchedulePreview: value " << v << " is less than the minimum value of 0" << endl;
        v = 0;
      }

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

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

    /**
      Get Number of days to preview schedules in ledger
    */
    static
    int schedulePreview()
    {
      return self()->mSchedulePreview;
    }

    /**
      Set Insert transaction type into No. field for new transactions
    */
    static
    void setCopyTypeToNr( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "CopyTypeToNr" ) ))
        self()->mCopyTypeToNr = v;
    }

    /**
      Get Insert transaction type into No. field for new transactions
    */
    static
    bool copyTypeToNr()
    {
      return self()->mCopyTypeToNr;
    }

    /**
      Set Keep changes when selecting a different transaction/split
    */
    static
    void setFocusChangeIsEnter( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FocusChangeIsEnter" ) ))
        self()->mFocusChangeIsEnter = v;
    }

    /**
      Get Keep changes when selecting a different transaction/split
    */
    static
    bool focusChangeIsEnter()
    {
      return self()->mFocusChangeIsEnter;
    }

    /**
      Set Using the Enter key moves between the fields
    */
    static
    void setEnterMovesBetweenFields( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "EnterMovesBetweenFields" ) ))
        self()->mEnterMovesBetweenFields = v;
    }

    /**
      Get Using the Enter key moves between the fields
    */
    static
    bool enterMovesBetweenFields()
    {
      return self()->mEnterMovesBetweenFields;
    }

    /**
      Set Use the ledger lens
    */
    static
    void setLedgerLens( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "LedgerLens" ) ))
        self()->mLedgerLens = v;
    }

    /**
      Get Use the ledger lens
    */
    static
    bool ledgerLens()
    {
      return self()->mLedgerLens;
    }

    /**
      Set Price Precision
    */
    static
    void setPricePrecision( int v )
    {
      if (v < 4)
      {
        kdDebug() << "setPricePrecision: value " << v << " is less than the minimum value of 4" << endl;
        v = 4;
      }

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

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

    /**
      Get Price Precision
    */
    static
    int pricePrecision()
    {
      return self()->mPricePrecision;
    }

    /**
      Set Update price history
    */
    static
    void setPriceHistoryUpdate( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "PriceHistoryUpdate" ) ))
        self()->mPriceHistoryUpdate = v;
    }

    /**
      Get Update price history
    */
    static
    bool priceHistoryUpdate()
    {
      return self()->mPriceHistoryUpdate;
    }

    /**
      Set Show transaction form
    */
    static
    void setTransactionForm( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "TransactionForm" ) ))
        self()->mTransactionForm = v;
    }

    /**
      Get Show transaction form
    */
    static
    bool transactionForm()
    {
      return self()->mTransactionForm;
    }

    /**
      Set Start with last selected view or homepage
    */
    static
    void setStartLastViewSelected( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "StartLastViewSelected" ) ))
        self()->mStartLastViewSelected = v;
    }

    /**
      Get Start with last selected view or homepage
    */
    static
    int startLastViewSelected()
    {
      return self()->mStartLastViewSelected;
    }

    /**
      Set Use GPG to encrypt data file
    */
    static
    void setWriteDataEncrypted( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "WriteDataEncrypted" ) ))
        self()->mWriteDataEncrypted = v;
    }

    /**
      Get Use GPG to encrypt data file
    */
    static
    bool writeDataEncrypted()
    {
      return self()->mWriteDataEncrypted;
    }

    /**
      Set Also encrypt against recover key
    */
    static
    void setEncryptRecover( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "EncryptRecover" ) ))
        self()->mEncryptRecover = v;
    }

    /**
      Get Also encrypt against recover key
    */
    static
    bool encryptRecover()
    {
      return self()->mEncryptRecover;
    }

    /**
      Set GPG User ID (deprecated)
    */
    static
    void setGpgRecipient( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "GpgRecipient" ) ))
        self()->mGpgRecipient = v;
    }

    /**
      Get GPG User ID (deprecated)
    */
    static
    TQString gpgRecipient()
    {
      return self()->mGpgRecipient;
    }

    /**
      Set GPG User ID
    */
    static
    void setGpgRecipientList( const TQStringList & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "GpgRecipientList" ) ))
        self()->mGpgRecipientList = v;
    }

    /**
      Get GPG User ID
    */
    static
    TQStringList gpgRecipientList()
    {
      return self()->mGpgRecipientList;
    }

    /**
      Set Run in expert (accountant) mode
    */
    static
    void setExpertMode( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ExpertMode" ) ))
        self()->mExpertMode = v;
    }

    /**
      Get Run in expert (accountant) mode
    */
    static
    bool expertMode()
    {
      return self()->mExpertMode;
    }

    /**
      Set Show splash screen during startup
    */
    static
    void setShowSplash( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ShowSplash" ) ))
        self()->mShowSplash = v;
    }

    /**
      Get Show splash screen during startup
    */
    static
    bool showSplash()
    {
      return self()->mShowSplash;
    }

    /**
      Set Synchronize account in ledger and investment view
    */
    static
    void setSyncLedgerInvestment( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "syncLedgerInvestment" ) ))
        self()->mSyncLedgerInvestment = v;
    }

    /**
      Get Synchronize account in ledger and investment view
    */
    static
    bool syncLedgerInvestment()
    {
      return self()->mSyncLedgerInvestment;
    }

    /**
      Set Icon size for view selection
    */
    static
    void setIconSize( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "iconSize" ) ))
        self()->mIconSize = v;
    }

    /**
      Get Icon size for view selection
    */
    static
    int iconSize()
    {
      return self()->mIconSize;
    }

    /**
      Set list of hidden views
    */
    static
    void setHiddenViews( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "hiddenViews" ) ))
        self()->mHiddenViews = v;
    }

    /**
      Get list of hidden views
    */
    static
    TQString hiddenViews()
    {
      return self()->mHiddenViews;
    }

    /**
      Set Firsttime switch to start new user wizard
    */
    static
    void setFirstTimeRun( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "firstTimeRun" ) ))
        self()->mFirstTimeRun = v;
    }

    /**
      Get Firsttime switch to start new user wizard
    */
    static
    bool firstTimeRun()
    {
      return self()->mFirstTimeRun;
    }

    /**
      Set Show title bar on each view
    */
    static
    void setShowTitleBar( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "showTitleBar" ) ))
        self()->mShowTitleBar = v;
    }

    /**
      Get Show title bar on each view
    */
    static
    bool showTitleBar()
    {
      return self()->mShowTitleBar;
    }

    /**
      Set Start string matches for e.g. payees at start of string
    */
    static
    void setStringMatchFromStart( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "stringMatchFromStart" ) ))
        self()->mStringMatchFromStart = v;
    }

    /**
      Get Start string matches for e.g. payees at start of string
    */
    static
    bool stringMatchFromStart()
    {
      return self()->mStringMatchFromStart;
    }

    /**
      Set Tab order of edit widgets in transaction form
    */
    static
    void setStdTransactionFormTabOrder( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "stdTransactionFormTabOrder" ) ))
        self()->mStdTransactionFormTabOrder = v;
    }

    /**
      Get Tab order of edit widgets in transaction form
    */
    static
    TQString stdTransactionFormTabOrder()
    {
      return self()->mStdTransactionFormTabOrder;
    }

    /**
      Set Tab order of edit widgets in register
    */
    static
    void setStdTransactionRegisterTabOrder( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "stdTransactionRegisterTabOrder" ) ))
        self()->mStdTransactionRegisterTabOrder = v;
    }

    /**
      Get Tab order of edit widgets in register
    */
    static
    TQString stdTransactionRegisterTabOrder()
    {
      return self()->mStdTransactionRegisterTabOrder;
    }

    /**
      Set Order of items on homepage
    */
    static
    void setItemList( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ItemList" ) ))
        self()->mItemList = v;
    }

    /**
      Get Order of items on homepage
    */
    static
    TQString itemList()
    {
      return self()->mItemList;
    }

    /**
      Set Percentage of default font size used for home view HTML page
    */
    static
    void setFontSizePercentage( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "FontSizePercentage" ) ))
        self()->mFontSizePercentage = v;
    }

    /**
      Get Percentage of default font size used for home view HTML page
    */
    static
    int fontSizePercentage()
    {
      return self()->mFontSizePercentage;
    }

    /**
      Set Remember (manually adjusted) font size in home view on program end.
    */
    static
    void setRememberFontSize( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "RememberFontSize" ) ))
        self()->mRememberFontSize = v;
    }

    /**
      Get Remember (manually adjusted) font size in home view on program end.
    */
    static
    bool rememberFontSize()
    {
      return self()->mRememberFontSize;
    }

    /**
      Set Show account limit information on the Homepage
    */
    static
    void setShowLimitInfo( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ShowLimitInfo" ) ))
        self()->mShowLimitInfo = v;
    }

    /**
      Get Show account limit information on the Homepage
    */
    static
    bool showLimitInfo()
    {
      return self()->mShowLimitInfo;
    }

    /**
      Set Hide unused categories
    */
    static
    void setHideUnusedCategory( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "HideUnusedCategory" ) ))
        self()->mHideUnusedCategory = v;
    }

    /**
      Get Hide unused categories
    */
    static
    bool hideUnusedCategory()
    {
      return self()->mHideUnusedCategory;
    }

    /**
      Set Hide closed accounts
    */
    static
    void setHideClosedAccounts( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "HideClosedAccounts" ) ))
        self()->mHideClosedAccounts = v;
    }

    /**
      Get Hide closed accounts
    */
    static
    bool hideClosedAccounts()
    {
      return self()->mHideClosedAccounts;
    }

    /**
      Set Hide finished schedules
    */
    static
    void setHideFinishedSchedules( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "HideFinishedSchedules" ) ))
        self()->mHideFinishedSchedules = v;
    }

    /**
      Get Hide finished schedules
    */
    static
    bool hideFinishedSchedules()
    {
      return self()->mHideFinishedSchedules;
    }

    /**
      Set Hide reconciled transactions
    */
    static
    void setHideReconciledTransactions( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "HideReconciledTransactions" ) ))
        self()->mHideReconciledTransactions = v;
    }

    /**
      Get Hide reconciled transactions
    */
    static
    bool hideReconciledTransactions()
    {
      return self()->mHideReconciledTransactions;
    }

    /**
      Set Show all register entries in full detail
    */
    static
    void setShowRegisterDetailed( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ShowRegisterDetailed" ) ))
        self()->mShowRegisterDetailed = v;
    }

    /**
      Get Show all register entries in full detail
    */
    static
    bool showRegisterDetailed()
    {
      return self()->mShowRegisterDetailed;
    }

    /**
      Set Show a grid in the register
    */
    static
    void setShowGrid( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ShowGrid" ) ))
        self()->mShowGrid = v;
    }

    /**
      Get Show a grid in the register
    */
    static
    bool showGrid()
    {
      return self()->mShowGrid;
    }

    /**
      Set Show fancy group markers
    */
    static
    void setShowFancyMarker( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ShowFancyMarker" ) ))
        self()->mShowFancyMarker = v;
    }

    /**
      Get Show fancy group markers
    */
    static
    bool showFancyMarker()
    {
      return self()->mShowFancyMarker;
    }

    /**
      Set Show fancy markers for previous and current fiscal year
    */
    static
    void setShowFiscalMarker( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "ShowFiscalMarker" ) ))
        self()->mShowFiscalMarker = v;
    }

    /**
      Get Show fancy markers for previous and current fiscal year
    */
    static
    bool showFiscalMarker()
    {
      return self()->mShowFiscalMarker;
    }

    /**
      Set Starting month of the fiscal year
    */
    static
    void setFiscalYearBegin( int v )
    {
      if (v < 0)
      {
        kdDebug() << "setFiscalYearBegin: value " << v << " is less than the minimum value of 0" << endl;
        v = 0;
      }

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

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

    /**
      Get Starting month of the fiscal year
    */
    static
    int fiscalYearBegin()
    {
      return self()->mFiscalYearBegin;
    }

    /**
      Set Starting day of the fiscal year
    */
    static
    void setFiscalYearBeginDay( int v )
    {
      if (v < 1)
      {
        kdDebug() << "setFiscalYearBeginDay: value " << v << " is less than the minimum value of 1" << endl;
        v = 1;
      }

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

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

    /**
      Get Starting day of the fiscal year
    */
    static
    int fiscalYearBeginDay()
    {
      return self()->mFiscalYearBeginDay;
    }

    /**
      Set Start date
    */
    static
    void setStartDate( const TQDateTime & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "StartDate" ) ))
        self()->mStartDate = v;
    }

    /**
      Get Start date
    */
    static
    TQDateTime startDate()
    {
      return self()->mStartDate;
    }

    /**
      Set Use system colors
    */
    static
    void setUseSystemColors( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "useSystemColors" ) ))
        self()->mUseSystemColors = v;
    }

    /**
      Get Use system colors
    */
    static
    bool useSystemColors()
    {
      return self()->mUseSystemColors;
    }

    /**
      Set List color
    */
    static
    void setListColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listColor" ) ))
        self()->mListColor = v;
    }

    /**
      Get List color
    */
    static
    TQColor listColor()
    {
      return self()->mListColor;
    }

    /**
      Set List background color
    */
    static
    void setListBGColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listBGColor" ) ))
        self()->mListBGColor = v;
    }

    /**
      Get List background color
    */
    static
    TQColor listBGColor()
    {
      return self()->mListBGColor;
    }

    /**
      Set List grid color
    */
    static
    void setListGridColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listGridColor" ) ))
        self()->mListGridColor = v;
    }

    /**
      Get List grid color
    */
    static
    TQColor listGridColor()
    {
      return self()->mListGridColor;
    }

    /**
      Set Background color for imported transactions
    */
    static
    void setImportedTransactionColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "importedTransactionColor" ) ))
        self()->mImportedTransactionColor = v;
    }

    /**
      Get Background color for imported transactions
    */
    static
    TQColor importedTransactionColor()
    {
      return self()->mImportedTransactionColor;
    }

    /**
      Set Background color for matched transactions
    */
    static
    void setMatchedTransactionColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "matchedTransactionColor" ) ))
        self()->mMatchedTransactionColor = v;
    }

    /**
      Get Background color for matched transactions
    */
    static
    TQColor matchedTransactionColor()
    {
      return self()->mMatchedTransactionColor;
    }

    /**
      Set List color for erronous transactions
    */
    static
    void setListErronousTransactionColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listErronousTransactionColor" ) ))
        self()->mListErronousTransactionColor = v;
    }

    /**
      Get List color for erronous transactions
    */
    static
    TQColor listErronousTransactionColor()
    {
      return self()->mListErronousTransactionColor;
    }

    /**
      Set List color for missing conversion rate
    */
    static
    void setListMissingConversionRate( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listMissingConversionRate" ) ))
        self()->mListMissingConversionRate = v;
    }

    /**
      Get List color for missing conversion rate
    */
    static
    TQColor listMissingConversionRate()
    {
      return self()->mListMissingConversionRate;
    }

    /**
      Set List color for negative values
    */
    static
    void setListNegativeValueColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listNegativeValueColor" ) ))
        self()->mListNegativeValueColor = v;
    }

    /**
      Get List color for negative values
    */
    static
    TQColor listNegativeValueColor()
    {
      return self()->mListNegativeValueColor;
    }

    /**
      Set Background color for group marker
    */
    static
    void setGroupMarkerColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "groupMarkerColor" ) ))
        self()->mGroupMarkerColor = v;
    }

    /**
      Get Background color for group marker
    */
    static
    TQColor groupMarkerColor()
    {
      return self()->mGroupMarkerColor;
    }

    /**
      Set Background color for required fields
    */
    static
    void setRequiredFieldColor( const TQColor & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "requiredFieldColor" ) ))
        self()->mRequiredFieldColor = v;
    }

    /**
      Get Background color for required fields
    */
    static
    TQColor requiredFieldColor()
    {
      return self()->mRequiredFieldColor;
    }

    /**
      Set Use system font
    */
    static
    void setUseSystemFont( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "useSystemFont" ) ))
        self()->mUseSystemFont = v;
    }

    /**
      Get Use system font
    */
    static
    bool useSystemFont()
    {
      return self()->mUseSystemFont;
    }

    /**
      Set Cell font
    */
    static
    void setListCellFont( const TQFont & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listCellFont" ) ))
        self()->mListCellFont = v;
    }

    /**
      Get Cell font
    */
    static
    TQFont listCellFont()
    {
      return self()->mListCellFont;
    }

    /**
      Set Header font
    */
    static
    void setListHeaderFont( const TQFont & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "listHeaderFont" ) ))
        self()->mListHeaderFont = v;
    }

    /**
      Get Header font
    */
    static
    TQFont listHeaderFont()
    {
      return self()->mListHeaderFont;
    }

    /**
      Set Sort order of register in normal view
    */
    static
    void setSortNormalView( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "sortNormalView" ) ))
        self()->mSortNormalView = v;
    }

    /**
      Get Sort order of register in normal view
    */
    static
    TQString sortNormalView()
    {
      return self()->mSortNormalView;
    }

    /**
      Set Sort order of register in normal view
    */
    static
    void setSortReconcileView( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "sortReconcileView" ) ))
        self()->mSortReconcileView = v;
    }

    /**
      Get Sort order of register in normal view
    */
    static
    TQString sortReconcileView()
    {
      return self()->mSortReconcileView;
    }

    /**
      Set Sort order of register in search dialog
    */
    static
    void setSortSearchView( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "sortSearchView" ) ))
        self()->mSortSearchView = v;
    }

    /**
      Get Sort order of register in search dialog
    */
    static
    TQString sortSearchView()
    {
      return self()->mSortSearchView;
    }

    /**
      Set Default reconciliation state for transactions entered during reconciliation
    */
    static
    void setDefaultReconciliationState( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "defaultReconciliationState" ) ))
        self()->mDefaultReconciliationState = v;
    }

    /**
      Get Default reconciliation state for transactions entered during reconciliation
    */
    static
    int defaultReconciliationState()
    {
      return self()->mDefaultReconciliationState;
    }

    /**
      Set Number of days (plus/minus) to search for matching transactions
    */
    static
    void setMatchInterval( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "matchInterval" ) ))
        self()->mMatchInterval = v;
    }

    /**
      Get Number of days (plus/minus) to search for matching transactions
    */
    static
    int matchInterval()
    {
      return self()->mMatchInterval;
    }

    /**
      Set During import, ask for a new payee's default category
    */
    static
    void setAskForPayeeCategory( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "askForPayeeCategory" ) ))
        self()->mAskForPayeeCategory = v;
    }

    /**
      Get During import, ask for a new payee's default category
    */
    static
    bool askForPayeeCategory()
    {
      return self()->mAskForPayeeCategory;
    }

    /**
      Set Method to calculate forecast
    */
    static
    void setForecastMethod( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "forecastMethod" ) ))
        self()->mForecastMethod = v;
    }

    /**
      Get Method to calculate forecast
    */
    static
    int forecastMethod()
    {
      return self()->mForecastMethod;
    }

    /**
      Set Days to forecast
    */
    static
    void setForecastDays( int v )
    {
      if (v < 1)
      {
        kdDebug() << "setForecastDays: value " << v << " is less than the minimum value of 1" << endl;
        v = 1;
      }

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

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

    /**
      Get Days to forecast
    */
    static
    int forecastDays()
    {
      return self()->mForecastDays;
    }

    /**
      Set Days of normal account cycle
    */
    static
    void setForecastAccountCycle( int v )
    {
      if (v < 1)
      {
        kdDebug() << "setForecastAccountCycle: value " << v << " is less than the minimum value of 1" << endl;
        v = 1;
      }

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

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

    /**
      Get Days of normal account cycle
    */
    static
    int forecastAccountCycle()
    {
      return self()->mForecastAccountCycle;
    }

    /**
      Set Number of historic cycles to use in forecast
    */
    static
    void setForecastCycles( int v )
    {
      if (v < 1)
      {
        kdDebug() << "setForecastCycles: value " << v << " is less than the minimum value of 1" << endl;
        v = 1;
      }

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

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

    /**
      Get Number of historic cycles to use in forecast
    */
    static
    int forecastCycles()
    {
      return self()->mForecastCycles;
    }

    /**
      Set Day of month to start forecast
    */
    static
    void setBeginForecastDay( int v )
    {
      if (v < 0)
      {
        kdDebug() << "setBeginForecastDay: value " << v << " is less than the minimum value of 0" << endl;
        v = 0;
      }

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

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

    /**
      Get Day of month to start forecast
    */
    static
    int beginForecastDay()
    {
      return self()->mBeginForecastDay;
    }

    /**
      Set Method to calculate history-based forecast
    */
    static
    void setHistoryMethod( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "historyMethod" ) ))
        self()->mHistoryMethod = v;
    }

    /**
      Get Method to calculate history-based forecast
    */
    static
    int historyMethod()
    {
      return self()->mHistoryMethod;
    }

    /**
      Set Skip opening date when fetching transactions
    */
    static
    void setSkipOpeningDate( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "skipOpeningDate" ) ))
        self()->mSkipOpeningDate = v;
    }

    /**
      Get Skip opening date when fetching transactions
    */
    static
    bool skipOpeningDate()
    {
      return self()->mSkipOpeningDate;
    }

    /**
      Set Include future transaction when using Schedule Forecast
    */
    static
    void setIncludeFutureTransactions( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "includeFutureTransactions" ) ))
        self()->mIncludeFutureTransactions = v;
    }

    /**
      Get Include future transaction when using Schedule Forecast
    */
    static
    bool includeFutureTransactions()
    {
      return self()->mIncludeFutureTransactions;
    }

    /**
      Set Include scheduled transactions when using Schedule Forecast
    */
    static
    void setIncludeScheduledTransactions( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "includeScheduledTransactions" ) ))
        self()->mIncludeScheduledTransactions = v;
    }

    /**
      Get Include scheduled transactions when using Schedule Forecast
    */
    static
    bool includeScheduledTransactions()
    {
      return self()->mIncludeScheduledTransactions;
    }

    /**
      Set additional names for cash account
    */
    static
    void setQifCash( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "qifCash" ) ))
        self()->mQifCash = v;
    }

    /**
      Get additional names for cash account
    */
    static
    TQString qifCash()
    {
      return self()->mQifCash;
    }

    /**
      Set additional names for checking account
    */
    static
    void setQifBank( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "qifBank" ) ))
        self()->mQifBank = v;
    }

    /**
      Get additional names for checking account
    */
    static
    TQString qifBank()
    {
      return self()->mQifBank;
    }

    /**
      Set additional names for credit card account
    */
    static
    void setQifCreditCard( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "qifCreditCard" ) ))
        self()->mQifCreditCard = v;
    }

    /**
      Get additional names for credit card account
    */
    static
    TQString qifCreditCard()
    {
      return self()->mQifCreditCard;
    }

    /**
      Set additional names for asset account
    */
    static
    void setQifAsset( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "qifAsset" ) ))
        self()->mQifAsset = v;
    }

    /**
      Get additional names for asset account
    */
    static
    TQString qifAsset()
    {
      return self()->mQifAsset;
    }

    /**
      Set additional names for opening balance payee
    */
    static
    void setQifOpeningBalance( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "qifOpeningBalance" ) ))
        self()->mQifOpeningBalance = v;
    }

    /**
      Get additional names for opening balance payee
    */
    static
    TQString qifOpeningBalance()
    {
      return self()->mQifOpeningBalance;
    }

    /**
      Set additional names for invoice accounts
    */
    static
    void setQifInvoice( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "qifInvoice" ) ))
        self()->mQifInvoice = v;
    }

    /**
      Get additional names for invoice accounts
    */
    static
    TQString qifInvoice()
    {
      return self()->mQifInvoice;
    }

    /**
      Set Show accounts view expanded when loaded
    */
    static
    void setShowAccountsExpanded( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "showAccountsExpanded" ) ))
        self()->mShowAccountsExpanded = v;
    }

    /**
      Get Show accounts view expanded when loaded
    */
    static
    bool showAccountsExpanded()
    {
      return self()->mShowAccountsExpanded;
    }

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


    // General Options
    bool mAlwaysShowNrField;
    int mAutoFillTransaction;
    bool mAutoReusePayee;
    int mAutoFillDifference;
    bool mAutoIncCheckNumber;
    bool mAutoSaveFile;
    int mAutoSavePeriod;
    bool mCheckSchedule;
    int mCheckSchedulePreview;
    TQString mExternalCalculator;
    int mSchedulePreview;
    bool mCopyTypeToNr;
    bool mFocusChangeIsEnter;
    bool mEnterMovesBetweenFields;
    bool mLedgerLens;
    int mPricePrecision;
    bool mPriceHistoryUpdate;
    bool mTransactionForm;
    int mStartLastViewSelected;
    bool mWriteDataEncrypted;
    bool mEncryptRecover;
    TQString mGpgRecipient;
    TQStringList mGpgRecipientList;
    bool mExpertMode;
    bool mShowSplash;
    bool mSyncLedgerInvestment;
    int mIconSize;
    TQString mHiddenViews;
    bool mFirstTimeRun;
    bool mShowTitleBar;
    bool mStringMatchFromStart;
    TQString mStdTransactionFormTabOrder;
    TQString mStdTransactionRegisterTabOrder;

    // Homepage Options
    TQString mItemList;
    int mFontSizePercentage;
    bool mRememberFontSize;
    bool mShowLimitInfo;

    // List Options
    bool mHideUnusedCategory;
    bool mHideClosedAccounts;
    bool mHideFinishedSchedules;
    bool mHideReconciledTransactions;
    bool mShowRegisterDetailed;
    bool mShowGrid;
    bool mShowFancyMarker;
    bool mShowFiscalMarker;
    int mFiscalYearBegin;
    int mFiscalYearBeginDay;
    TQDateTime mStartDate;
    bool mUseSystemColors;
    TQColor mListColor;
    TQColor mListBGColor;
    TQColor mListGridColor;
    TQColor mImportedTransactionColor;
    TQColor mMatchedTransactionColor;
    TQColor mListErronousTransactionColor;
    TQColor mListMissingConversionRate;
    TQColor mListNegativeValueColor;
    TQColor mGroupMarkerColor;
    TQColor mRequiredFieldColor;
    bool mUseSystemFont;
    TQFont mListCellFont;
    TQFont mListHeaderFont;
    TQString mSortNormalView;
    TQString mSortReconcileView;
    TQString mSortSearchView;
    int mDefaultReconciliationState;

    // Import options
    int mMatchInterval;
    bool mAskForPayeeCategory;

    // Forecast Options
    int mForecastMethod;
    int mForecastDays;
    int mForecastAccountCycle;
    int mForecastCycles;
    int mBeginForecastDay;
    int mHistoryMethod;
    bool mSkipOpeningDate;
    bool mIncludeFutureTransactions;
    bool mIncludeScheduledTransactions;

    // QIF Options
    TQString mQifCash;
    TQString mQifBank;
    TQString mQifCreditCard;
    TQString mQifAsset;
    TQString mQifOpeningBalance;
    TQString mQifInvoice;

    // Account View Settings
    bool mShowAccountsExpanded;

  private:
};

#endif

