diff options
Diffstat (limited to 'lib/interfaces/kdevplugincontroller.h')
-rw-r--r-- | lib/interfaces/kdevplugincontroller.h | 119 |
1 files changed, 0 insertions, 119 deletions
diff --git a/lib/interfaces/kdevplugincontroller.h b/lib/interfaces/kdevplugincontroller.h deleted file mode 100644 index 05ee050b..00000000 --- a/lib/interfaces/kdevplugincontroller.h +++ /dev/null @@ -1,119 +0,0 @@ -/* This file is part of the KDE project - Copyright (C) 2004 Alexander Dymo <adymo@kdevelop.org> - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - 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 KDEVPLUGINCONTROLLER_H -#define KDEVPLUGINCONTROLLER_H - -#include <tqobject.h> - -#include <kurl.h> -#include <ktrader.h> - -/** -@file kdevplugincontroller.h -TDevelop plugin controller interface. -*/ - -class KDevPlugin; -class ProfileEngine; - -/** -The base class for TDevelop plugin controller. -Plugin controller is responsible for quering, loading and unloading available plugins. -*/ -class KDevPluginController: public TQObject -{ - Q_OBJECT - -public: - - /** - * Returns a uniquely specified plugin. If it isn't already loaded, it will be. - * Use with caution! See extension for parameter details. - */ - virtual KDevPlugin * loadPlugin( const TQString & serviceType, const TQString & constraint ) = 0; - - /** - * Unloads the plugin specified by @p plugin - * @param plugin The plugin desktopEntryName of the plugin to unload - */ - virtual void unloadPlugin( const TQString & plugin ) = 0; - - /**Unloads plugins specified by @p list. - @param list The list of plugin names to unload. plugin name corresponds - to the "Name" property in plugin .desktop file.*/ - virtual void unloadPlugins(TQStringList const &list) = 0; - - /**@return The list of currently loaded plugins.*/ - virtual const TQValueList<KDevPlugin*> loadedPlugins() = 0; - - /**Queries for the plugin which supports given service type. - All already loaded plugins will be queried and the first one to support the service type - will be returned. Any plugin can be an extension, only "ServiceTypes=..." entry is - required in .desktop file for that plugin. - @param serviceType The service type of an extension (like "TDevelop/SourceFormatter") - @param constraint The constraint which is applied when quering for the service. This - constraint is a usual TDETrader constraint statement (like "[X-TDevelop-Foo]=='MyFoo'"). - @return A KDevelop extension plugin for given service type or 0 if no plugin supports it*/ - virtual KDevPlugin *extension(const TQString &serviceType, const TQString &constraint = "") = 0; - - /**Queries KDevelop services. Version is checked automatically - by adding proper X-TDevelop-Version=N statement into the query. - @param serviceType The service type to query, for example "TDevelop/Plugin" or - "TDevelop/SourceFormatter." - @param constraint A constraint for the service. Do not include plugin version number - it - is done automatically. - @return The list of plugin offers.*/ - static TDETrader::OfferList query(const TQString &serviceType, const TQString &constraint); - - /**Queries TDevelop plugins. Works like - KDevPluginController::query with serviceType set to "TDevelop/Plugin". - @param constraint A constraint for the service. Do not include plugin version number - it - is done automatically. - @return The list of plugin offers.*/ - static TDETrader::OfferList queryPlugins(const TQString &constraint); - - /**Reimplement this function only if your shell supports plugin profiles. - @return The list of URLs to the profile resources (files) with given @p extension. - @param nameFilter Name filter for files. @see TQDir::setNameFilter documentation - for name filters syntax.*/ - virtual KURL::List profileResources(const TQString &nameFilter); - - /**Reimplement this function only if your shell supports plugin profiles. - @return The list of URLs to the resources (files) with given @p extension. - This list is obtained by a recursive search that process given profile - and all it's subprofiles. - @param nameFilter Name filter for files. @see TQDir::setNameFilter documentation - for name filters syntax.*/ - virtual KURL::List profileResourcesRecursive(const TQString &nameFilter); - - /** @return The current Profile Engine */ - virtual ProfileEngine &engine() = 0; - -signals: - /**Emitted when a plugin profile was changed (reloaded, other profile opened, etc.). - Should work only on shells with plugin profiles support.*/ - void profileChanged(); - -protected: - /**Constructor.*/ - KDevPluginController(); - -}; - -#endif |