21#include "resourcedirconfig.h"
22#include "resourcedir.h"
24#include "kabc/formatfactory.h"
25#include "kabc/stdaddressbook.h"
28#include <klocalizedstring.h>
29#include <kstandarddirs.h>
36ResourceDirConfig::ResourceDirConfig( QWidget *parent )
37 :
KRES::ConfigWidget( parent )
39 QFormLayout *mainLayout =
new QFormLayout(
this );
40 mainLayout->setMargin( 0 );
42 mFormatBox =
new KComboBox(
this );
44 mainLayout->addRow( i18n(
"Format:" ), mFormatBox );
46 mFileNameEdit =
new KUrlRequester(
this );
47 mFileNameEdit->setMode( KFile::Directory );
49 mainLayout->addRow( i18n(
"Location:" ), mFileNameEdit );
52 QStringList formats = factory->
formats();
53 QStringList::Iterator it;
54 for ( it = formats.begin(); it != formats.end(); ++it ) {
57 mFormatTypes << ( *it );
65void ResourceDirConfig::setEditMode(
bool value )
67 mFormatBox->setEnabled( !value );
71void ResourceDirConfig::loadSettings( KRES::Resource *res )
73 ResourceDir *resource =
dynamic_cast<ResourceDir*
>( res );
76 kDebug() <<
"cast failed";
80 mFormatBox->setCurrentIndex( mFormatTypes.indexOf( resource->
format() ) );
82 mFileNameEdit->setUrl( resource->
path() );
83 if ( mFileNameEdit->url().isEmpty() ) {
88void ResourceDirConfig::saveSettings( KRES::Resource *res )
90 ResourceDir *resource =
dynamic_cast<ResourceDir*
>( res );
93 kDebug() <<
"cast failed";
98 resource->
setFormat( mFormatTypes[ mFormatBox->currentIndex() ] );
101 resource->
setPath( mFileNameEdit->url().path() );
void setFormat(const QString &format)
Set the format by name.
QString format() const
Returns the format name.
QString path() const
Return path used for loading and saving the address book.
void setPath(const QString &)
Set path to be used for saving.
static QString directoryName()
Returns the default directory name for vcard-based addressbook.
Class that holds a Calendar Url (FBURL/CALADRURI/CALURI)