resourcedirconfig.cpp
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <qlabel.h>
00022 #include <qlayout.h>
00023
00024 #include <klocale.h>
00025 #include <kstandarddirs.h>
00026
00027 #include "formatfactory.h"
00028 #include "resourcedirconfig.h"
00029 #include "stdaddressbook.h"
00030
00031 using namespace KABC;
00032
00033 ResourceDirConfig::ResourceDirConfig( QWidget* parent, const char* name )
00034 : ResourceConfigWidget( parent, name )
00035 {
00036 resize( 245, 115 );
00037 QGridLayout *mainLayout = new QGridLayout( this, 2, 2 );
00038
00039 QLabel *label = new QLabel( i18n( "Format:" ), this );
00040 mFormatBox = new KComboBox( this );
00041
00042 mainLayout->addWidget( label, 0, 0 );
00043 mainLayout->addWidget( mFormatBox, 0, 1 );
00044
00045 label = new QLabel( i18n( "Location:" ), this );
00046 mFileNameEdit = new KURLRequester( this );
00047 mFileNameEdit->setMode( KFile::Directory );
00048
00049 mainLayout->addWidget( label, 1, 0 );
00050 mainLayout->addWidget( mFileNameEdit, 1, 1 );
00051
00052 FormatFactory *factory = FormatFactory::self();
00053 QStringList formats = factory->formats();
00054 QStringList::Iterator it;
00055 for ( it = formats.begin(); it != formats.end(); ++it ) {
00056 FormatInfo *info = factory->info( *it );
00057 if ( info ) {
00058 mFormatTypes << (*it);
00059 mFormatBox->insertItem( info->nameLabel );
00060 }
00061 }
00062 }
00063
00064 void ResourceDirConfig::setEditMode( bool value )
00065 {
00066 mFormatBox->setEnabled( !value );
00067 }
00068
00069 void ResourceDirConfig::loadSettings( KConfig *config )
00070 {
00071 QString format = config->readEntry( "FileFormat" );
00072 mFormatBox->setCurrentItem( mFormatTypes.findIndex( format ) );
00073
00074 mFileNameEdit->setURL( config->readPathEntry( "FilePath" ) );
00075 if ( mFileNameEdit->url().isEmpty() )
00076 mFileNameEdit->setURL( KABC::StdAddressBook::directoryName() );
00077 }
00078
00079 void ResourceDirConfig::saveSettings( KConfig *config )
00080 {
00081 config->writeEntry( "FileFormat", mFormatTypes[ mFormatBox->currentItem() ] );
00082 config->writeEntry( "FilePath", mFileNameEdit->url() );
00083 }
00084
00085 #include "resourcedirconfig.moc"
This file is part of the documentation for kdelibs Version 3.1.5.