/* * Copyright (C) 2003, Ian Reinhart Geiser * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public License * along with this library; see the file COPYING.LIB. If not, write to * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. */ #include "kconfig_imp.h" #include #ifndef QT_ONLY #include #include #include #include "kconfig_imp.moc" #else #include #endif namespace KJSEmbed { namespace Bindings { Config::Config( TTQObject *parent, const char *name) : BindingObject(parent, name) { #ifndef QT_ONLY if( name == 0) m_config = kapp->config(); else m_config = new KConfig(name); if( !m_config->checkConfigFilesWritable(true) ) { kdWarning( 80001 ) << "Could not write to config file." << endl; } #else m_config = new TTQSettings(); if( name == 0) m_name = "qjcmd"; else m_name = name; m_config->setPath( "TQJSEmbed",m_name, TTQSettings::User ); m_forceGlobal = false; #endif } /* Config::Config( TTQObject *parent, const char *name , const TTQString& confName) : BindingObject(parent, name) { TTQString fileName = ::locate("kde_config", confName); m_config = new KConfig(fileName); } */ Config::~Config() { #ifndef QT_ONLY if( kapp->config() != m_config ) #endif delete m_config; } void Config::setDesktopGroup() { #ifndef QT_ONLY m_config->setDesktopGroup(); #else m_config->resetGroup(); m_config->beginGroup("/Desktop Entry"); #endif } void Config::setGroup(const TTQString& group) { #ifndef QT_ONLY m_config->setGroup(group); #else m_config->resetGroup(); m_config->beginGroup(group); #endif } TTQString Config::group() { return m_config->group(); } TTQStringList Config::groupList() { #ifndef QT_ONLY return m_config->groupList(); #else m_config->resetGroup(); return m_config->subkeyList(group()); #endif } TTQString Config::locale() { #ifndef QT_ONLY return m_config->locale(); #else return "C"; #endif } void Config::setForceGlobal( bool force ) { #ifndef QT_ONLY m_config->setForceGlobal(force); #else m_forceGlobal = force; m_config->setPath( "TQJSEmbed",m_name, (force)?TTQSettings::Global:TTQSettings::User ); #endif } bool Config::forceGlobal( ) const { #ifndef QT_ONLY return m_config->forceGlobal(); #else return m_forceGlobal; #endif } void Config::setDollarExpansion( bool _bExpand ) { #ifndef QT_ONLY m_config->setDollarExpansion(_bExpand); #else Q_UNUSED(_bExpand); #endif } bool Config::isDollarExpansion() const { #ifndef QT_ONLY return m_config->isDollarExpansion(); #else return false; #endif } void Config::setReadOnly(bool _ro) { #ifndef QT_ONLY m_config->setReadOnly(_ro); #else Q_UNUSED(_ro); #endif } bool Config::isReadOnly() const { #ifndef QT_ONLY return m_config->isReadOnly(); #else return false; #endif } void Config::setReadDefaults(bool b) { #ifndef QT_ONLY m_config->setReadDefaults(b); #else Q_UNUSED(b); #endif } bool Config::readDefaults() const { #ifndef QT_ONLY return m_config->readDefaults(); #else return false; #endif } void Config::rollback( bool bDeep ) { #ifndef QT_ONLY m_config->rollback(bDeep); #else Q_UNUSED(bDeep); #endif } void Config::sync() { m_config->sync(); } bool Config::hasKey( const TTQString& key ) const { #ifndef QT_ONLY return m_config->hasKey(key); #else return false; #endif } bool Config::entryIsImmutable(const TTQString &key) const { #ifndef QT_ONLY return m_config->entryIsImmutable(key); #else Q_UNUSED( key ); return false; #endif } void Config::revertToDefault(const TTQString &key) { #ifndef QT_ONLY m_config->revertToDefault(key); #else Q_UNUSED(key); #endif } bool Config::hasDefault(const TTQString &key) const { #ifndef QT_ONLY return m_config->hasDefault(key); #else Q_UNUSED(key); return false; #endif } void Config::setFileWriteMode(int mode) { #ifndef QT_ONLY m_config->setFileWriteMode(mode); #else Q_UNUSED(mode); #endif } TTQString Config::readEntry(const TTQString& pKey, const TTQString& aDefault ) const { return m_config->readEntry(pKey,aDefault); } TTQVariant Config::readPropertyEntry( const TTQString& pKey, const TTQVariant &pDefault) const { #ifndef QT_ONLY return m_config->readPropertyEntry(pKey,pDefault); #else TTQVariant returnVariant; returnVariant = m_config->readEntry(pKey, pDefault.toString()); return returnVariant; #endif } TTQStringList Config::readListEntry( const TTQString& pKey ) const { return m_config->readListEntry(pKey); } TTQString Config::readPathEntry( const TTQString& pKey, const TTQString & aDefault ) const { #ifndef QT_ONLY return m_config->readPathEntry(pKey,aDefault); #else return readEntry(pKey,aDefault); #endif } TTQStringList Config::readPathListEntry( const TTQString& pKey ) const { #ifndef QT_ONLY return m_config->readPathListEntry(pKey); #else return readListEntry(pKey); #endif } int Config::readNumEntry( const TTQString& pKey, int nDefault) const { return m_config->readNumEntry(pKey,nDefault); } uint Config::readUnsignedNumEntry( const TTQString& pKey, uint nDefault) const { #ifndef QT_ONLY return m_config->readUnsignedNumEntry(pKey,nDefault); #else return (uint)readNumEntry(pKey,nDefault); #endif } long Config::readLongNumEntry( const TTQString& pKey, long nDefault) const { #ifndef QT_ONLY return m_config->readLongNumEntry(pKey,nDefault); #else return (long)readNumEntry(pKey,nDefault); #endif } double Config::readDoubleNumEntry( const TTQString& pKey, double nDefault ) const { #ifndef QT_ONLY return m_config->readDoubleNumEntry(pKey,nDefault); #else return m_config->readDoubleEntry(pKey,nDefault); #endif } TTQFont Config::readFontEntry( const TTQString& pKey, const TTQFont* pDefault ) const { #ifndef QT_ONLY return m_config->readFontEntry(pKey,pDefault); #else return readPropertyEntry(pKey,TTQVariant(*pDefault)).toFont(); #endif } bool Config::readBoolEntry( const TTQString& pKey, const bool bDefault ) const { return m_config->readBoolEntry(pKey,bDefault); } TTQRect Config::readRectEntry( const TTQString& pKey, const TTQRect* pDefault ) const { #ifndef QT_ONLY return m_config->readRectEntry(pKey,pDefault); #else return readPropertyEntry(pKey,TTQVariant(*pDefault)).toRect(); #endif } TTQPoint Config::readPointEntry( const TTQString& pKey, const TTQPoint* pDefault ) const { #ifndef QT_ONLY return m_config->readPointEntry(pKey,pDefault); #else return readPropertyEntry(pKey,TTQVariant(*pDefault)).toPoint(); #endif } TTQSize Config::readSizeEntry( const TTQString& pKey, const TTQSize* pDefault ) const { #ifndef QT_ONLY return m_config->readSizeEntry(pKey,pDefault); #else return readPropertyEntry(pKey,TTQVariant(*pDefault)).toSize(); #endif } TTQColor Config::readColorEntry( const TTQString& pKey, const TTQColor* pDefault ) const { #ifndef QT_ONLY return m_config->readColorEntry(pKey,pDefault); #else return readPropertyEntry(pKey,TTQVariant(*pDefault)).toColor(); #endif } TTQDateTime Config::readDateTimeEntry( const TTQString& pKey, const TTQDateTime* pDefault) const { #ifndef QT_ONLY return m_config->readDateTimeEntry(pKey,pDefault); #else return readPropertyEntry(pKey,TTQVariant(*pDefault)).toDateTime(); #endif } TTQString Config::readEntryUntranslated( const TTQString& pKey, const TTQString& aDefault ) const { #ifndef QT_ONLY return m_config->readEntryUntranslated(pKey,aDefault); #else return m_config->readEntry(pKey,aDefault); #endif } void Config::writeEntry( const TTQString& pKey, const TTQString& pValue ) { m_config->writeEntry(pKey,pValue); } void Config::writePropertyEntry( const TTQString& pKey, const TTQVariant& pValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, pValue ); #else m_config->writeEntry(pKey,pValue.toString()); #endif } void Config::writeListEntry( const TTQString& pKey, const TTQStringList &rValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, rValue ); #else m_config->writeEntry(pKey,rValue); #endif } void Config::writeNumEntry( const TTQString& pKey, int nValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, nValue ); #else m_config->writeEntry(pKey,nValue); #endif } void Config::writeUnsignedNumEntry( const TTQString& pKey, uint nValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, nValue ); #else writeNumEntry(pKey, (int)nValue ); #endif } void Config::writeLongNumEntry( const TTQString& pKey, unsigned long nValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, nValue ); #else writeNumEntry(pKey, (int)nValue); #endif } void Config::writeDoubleNumEntry( const TTQString& pKey, double nValue ) { m_config->writeEntry(pKey,nValue); } void Config::writeBoolEntry( const TTQString& pKey, bool bValue ) { m_config->writeEntry(pKey,bValue); } void Config::writeFontEntry( const TTQString& pKey, const TTQFont& rFont ) { #ifndef QT_ONLY m_config->writeEntry(pKey, rFont ); #else writePropertyEntry(pKey,rFont); #endif } void Config::writeColorEntry( const TTQString& pKey, const TTQColor& rColor ) { #ifndef QT_ONLY m_config->writeEntry(pKey, rColor ); #else writePropertyEntry(pKey,rColor); #endif } void Config::writeDateTimeEntry( const TTQString& pKey, const TTQDateTime& rDateTime ) { #ifndef QT_ONLY m_config->writeEntry(pKey, rDateTime ); #else writePropertyEntry(pKey,rDateTime); #endif } void Config::writeRectEntry( const TTQString& pKey, const TTQRect& rValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, rValue ); #else writePropertyEntry(pKey,rValue); #endif } void Config::writePointEntry( const TTQString& pKey, const TTQPoint& rValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, rValue ); #else writePropertyEntry(pKey,rValue); #endif } void Config::writeSizeEntry( const TTQString& pKey, const TTQSize& rValue ) { #ifndef QT_ONLY m_config->writeEntry(pKey, rValue ); #else writePropertyEntry(pKey,rValue); #endif } void Config::writePathEntry( const TTQString& pKey, const TTQString & path ) { #ifndef QT_ONLY m_config->writePathEntry(pKey,path); #else writeEntry(pKey,path); #endif } void Config::writePathListEntry( const TTQString& pKey, const TTQStringList &rValue ) { #ifndef QT_ONLY m_config->writePathEntry(pKey,rValue); #else writeListEntry(pKey,rValue); #endif } void Config::deleteEntry( const TTQString& pKey, bool bNLS , bool bGlobal ) { #ifndef QT_ONLY m_config->deleteEntry(pKey,bNLS,bGlobal); #else Q_UNUSED(bNLS); Q_UNUSED(bGlobal); m_config->removeEntry(pKey); #endif } bool Config::deleteGroup( const TTQString& group, bool bDeep , bool bGlobal ) { #ifndef QT_ONLY return m_config->deleteGroup(group,bDeep,bGlobal); #else return false; #endif } } }