kfilespeedbar.cpp
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "kfilespeedbar.h"
00020 #include "config-kfile.h"
00021
00022 #include <qdir.h>
00023
00024 #include <kconfig.h>
00025 #include <kglobal.h>
00026 #include <kglobalsettings.h>
00027 #include <klocale.h>
00028 #include <kprotocolinfo.h>
00029 #include <kstandarddirs.h>
00030 #include <kurl.h>
00031
00032 KFileSpeedBar::KFileSpeedBar( QWidget *parent, const char *name )
00033 : KURLBar( true, parent, name )
00034 {
00035 KConfig *config = KGlobal::config();
00036 KConfigGroupSaver cs( config, ConfigGroup );
00037 m_initializeSpeedbar = config->readBoolEntry( "Set speedbar defaults",
00038 true );
00039
00040 readConfig( KGlobal::config(), "KFileDialog Speedbar" );
00041
00042 if ( m_initializeSpeedbar )
00043 {
00044 KURL u;
00045 u = "smb:/";
00046 if ( KProtocolInfo::isKnownProtocol( u ) )
00047 insertItem( u, i18n("Network"), false,
00048 "network_local" );
00049 u = "floppy:/";
00050 if ( KProtocolInfo::isKnownProtocol( u ) )
00051 insertItem( u, i18n("Floppy"), false,
00052 KProtocolInfo::icon( "floppy" ) );
00053
00054 u ="file:/";
00055 u.setPath( QDir::homeDirPath() );
00056 insertItem( u, i18n("Home Directory"), false,
00057 "folder_home" );
00058
00059 if (QDir(KGlobalSettings::desktopPath()+"mydocument").exists())
00060 {
00061 u.setPath(KGlobalSettings::desktopPath()+"mydocument");
00062 insertItem( u, i18n("Documents"), false, "document" );
00063 }
00064
00065 QStringList tmpDirs = KGlobal::dirs()->resourceDirs( "tmp" );
00066 u.setProtocol( "file" );
00067 u.setPath( tmpDirs.isEmpty() ? QString("/tmp") : tmpDirs.first() );
00068 insertItem( u, i18n("Temporary Files"), false,
00069 "file_temporary" );
00070
00071 u.setPath( KGlobalSettings::desktopPath() );
00072 insertItem( u, i18n("Desktop"), false );
00073 }
00074 }
00075
00076 KFileSpeedBar::~KFileSpeedBar()
00077 {
00078 }
00079
00080 void KFileSpeedBar::save( KConfig *config )
00081 {
00082 if ( m_initializeSpeedbar && isModified() )
00083 {
00084 KConfigGroup conf( config, ConfigGroup );
00085
00086 conf.writeEntry( "Set speedbar defaults", false, true, true );
00087 }
00088
00089 writeConfig( config, "KFileDialog Speedbar" );
00090 }
00091
00092
00093 #include "kfilespeedbar.moc"
This file is part of the documentation for kdelibs Version 3.1.0.