You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
88 lines
2.3 KiB
88 lines
2.3 KiB
//
|
|
// C++ Implementation: %{MODULE}
|
|
//
|
|
// Description:
|
|
//
|
|
//
|
|
// Author: Roie Kerstein <sf_kersteinroie@bezeqint.net>, (C) 2004
|
|
//
|
|
// License: GPL v2
|
|
//
|
|
//
|
|
#include <kdebug.h>
|
|
#include <kconfig.h>
|
|
#include <kglobal.h>
|
|
|
|
#include "addbookmarksprefssettings.h"
|
|
|
|
BookmarksPrefsSettings::BookmarksPrefsSettings(TQObject *parent, const char *name)
|
|
: TQObject(parent, name)
|
|
{
|
|
load();
|
|
}
|
|
|
|
|
|
BookmarksPrefsSettings::~BookmarksPrefsSettings()
|
|
{
|
|
}
|
|
|
|
void BookmarksPrefsSettings::load()
|
|
{
|
|
KConfig * configfile = KGlobal::config();
|
|
m_isfolderforeachcontact = Always;
|
|
m_contactslist.clear();
|
|
m_addbookmarksfromunknowns = false;
|
|
if( configfile->getConfigState() == KConfigBase::NoAccess ){
|
|
kdDebug( 14501 ) << "load: failed to open config file for reading" << endl;
|
|
return;
|
|
}
|
|
if( !configfile->hasGroup("Bookmarks Plugin") ){
|
|
kdDebug( 14501 ) << "load: no config found in file" << endl;
|
|
return;
|
|
}
|
|
configfile->setGroup("Bookmarks Plugin");
|
|
m_isfolderforeachcontact = (UseSubfolders)configfile->readNumEntry( "UseSubfolderForEachContact", 0 );
|
|
m_contactslist = configfile->readListEntry( "ContactsList" );
|
|
m_addbookmarksfromunknowns = configfile->readBoolEntry( "AddBookmarksFromUnknownContacts" );
|
|
}
|
|
|
|
void BookmarksPrefsSettings::save()
|
|
{
|
|
KConfig * configfile = KGlobal::config();
|
|
|
|
if( configfile->getConfigState() != KConfigBase::ReadWrite ){
|
|
kdDebug( 14501 ) << "save: failed to open config file for writing" << endl;
|
|
return;
|
|
}
|
|
configfile->setGroup( "Bookmarks Plugin" );
|
|
configfile->writeEntry( "UseSubfolderForEachContact", (int)m_isfolderforeachcontact );
|
|
configfile->writeEntry( "ContactsList", m_contactslist );
|
|
configfile->writeEntry( "AddBookmarksFromUnknownContacts", m_addbookmarksfromunknowns );
|
|
configfile->sync();
|
|
}
|
|
|
|
bool BookmarksPrefsSettings::useSubfolderForContact( TQString nickname )
|
|
{
|
|
if ( !nickname.isEmpty() )
|
|
{
|
|
switch( m_isfolderforeachcontact ){
|
|
case Never:
|
|
return false;
|
|
case Always:
|
|
return true;
|
|
case SelectedContacts:
|
|
return ( m_contactslist.find( nickname ) != m_contactslist.end() );
|
|
case UnselectedContacts:
|
|
return ( m_contactslist.find( nickname ) == m_contactslist.end() );
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
void BookmarksPrefsSettings::setAddBookmarksFromUnknownContacts( bool addUntrusted )
|
|
{
|
|
m_addbookmarksfromunknowns = addUntrusted;
|
|
}
|
|
|
|
#include "addbookmarksprefssettings.moc"
|