diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-01-27 01:04:16 -0600 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-01-27 01:04:16 -0600 |
commit | 5159cd2beb2e87806a5b54e9991b7895285c9d3e (patch) | |
tree | 9b70e8be47a390f8f4d56ead812ab0c9dad88709 /tdeio/tdeio/kservicegroupfactory.h | |
parent | c17cb900dcf52b8bd6dc300d4f103392900ec2b4 (diff) | |
download | tdelibs-5159cd2beb2e87806a5b54e9991b7895285c9d3e.tar.gz tdelibs-5159cd2beb2e87806a5b54e9991b7895285c9d3e.zip |
Rename a number of libraries and executables to avoid conflicts with KDE4
Diffstat (limited to 'tdeio/tdeio/kservicegroupfactory.h')
-rw-r--r-- | tdeio/tdeio/kservicegroupfactory.h | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/tdeio/tdeio/kservicegroupfactory.h b/tdeio/tdeio/kservicegroupfactory.h new file mode 100644 index 000000000..77bc7c042 --- /dev/null +++ b/tdeio/tdeio/kservicegroupfactory.h @@ -0,0 +1,80 @@ +/* This file is part of the KDE project + Copyright (C) 2000 Waldo Bastian <bastian@kde.org> + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License version 2 as published by the Free Software Foundation. + + 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. +*/ + +#ifndef __kservicegroupfactory_h__ +#define __kservicegroupfactory_h__ + +#include <tqstringlist.h> + +#include "kservicegroup.h" +#include "tdesycocafactory.h" +#include <assert.h> + +class KSycoca; +class KSycocaDict; + +/** + * @internal + * A sycoca factory for service groups (e.g. list of applications) + * It loads the services from parsing directories (e.g. applnk/) + */ +class TDEIO_EXPORT KServiceGroupFactory : public KSycocaFactory +{ + K_SYCOCAFACTORY( KST_KServiceGroupFactory ) +public: + /** + * Create factory + */ + KServiceGroupFactory(); + virtual ~KServiceGroupFactory(); + + /** + * Construct a KServiceGroup from a config file. + */ + virtual KSycocaEntry *createEntry(const TQString &, const char *) + { assert(0); return 0; } + + /** + * Find a group ( by desktop path, e.g. "Applications/Editors") + */ + KServiceGroup * findGroupByDesktopPath( const TQString &_name, bool deep = true ); + + /** + * Find a base group by name, e.g. "settings" + */ + KServiceGroup * findBaseGroup( const TQString &_baseGroupName, bool deep = true ); + + /** + * @return the unique service group factory, creating it if necessary + */ + static KServiceGroupFactory * self(); +protected: + KServiceGroup* createGroup(int offset, bool deep); + KServiceGroup* createEntry(int offset); + KSycocaDict *m_baseGroupDict; + int m_baseGroupDictOffset; + +private: + static KServiceGroupFactory *_self; +protected: + virtual void virtual_hook( int id, void* data ); +private: + class KServiceGroupFactoryPrivate* d; +}; + +#endif |