• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • TDevelop Interfaces Library
 

TDevelop Interfaces Library

  • lib
  • interfaces
kdevplugin.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 Copyright (C) 1999-2001 Bernd Gehrmann <bernd@kdevelop.org>
3 Copyright (C) 2004 Alexander Dymo <adymo@kdevelop.org>
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details.
14
15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 Boston, MA 02110-1301, USA.
19*/
20#ifndef KDEVPLUGIN_H
21#define KDEVPLUGIN_H
22
23#include <tqobject.h>
24#include <kxmlguiclient.h>
25#include "kdevapi.h"
26
27class KDevCore;
28class KDevProject;
29class KDevVersionControl;
30class KDevLanguageSupport;
31class KDevPartController;
32class KDevMainWindow;
33class KDevCodeRepository;
34class CodeModel;
35class KDevPluginInfo;
36class TQDomElement;
37
46#define TDEVELOP_PLUGIN_VERSION 5
47
107class KDevPlugin: public TQObject, public KXMLGUIClient
108{
109 TQ_OBJECT
110
111
112public:
122 KDevPlugin(const KDevPluginInfo *info, TQObject *parent, const char *name = 0);
123
125 virtual ~KDevPlugin();
126
129 const KDevPluginInfo* info();
130
132 KDevMainWindow *mainWindow();
133
136 KDevCore *core() const;
137
139 KDevProject *project() const;
140
142 KDevLanguageSupport *languageSupport() const;
143
145 CodeModel *codeModel() const;
146
148 TQDomDocument *projectDom() const;
149
151 KDevPartController *partController() const;
152
154 virtual KDevPluginController *pluginController() const;
155
157 KDevCodeRepository* codeRepository() const;
158
170 template <class Extension>
171 Extension *extension(const TQString &serviceType, const TQString &constraint = "")
172 {
173 return static_cast<Extension*>(extension_internal(serviceType, constraint));
174 }
175
187 virtual void restorePartialProjectSession(const TQDomElement* el);
188
191 virtual void savePartialProjectSession(TQDomElement* el);
192
193private:
194 KDevPlugin *extension_internal(const TQString &serviceType, const TQString &constraint = "");
195
196 KDevApi *m_api;
197 class Private;
198 Private *d;
199};
200
201#endif
CodeModel
Code Model - a memory symbol store.
Definition codemodel.h:325
KDevApi
The interface to KDevelop's core components.
Definition kdevapi.h:48
KDevCodeRepository
Code repository - the persistent symbol store accessor.
Definition kdevcoderepository.h:49
KDevCore
A KDevCore class defines an object which takes care about the cooperation between the various plug-in...
Definition kdevcore.h:301
KDevLanguageSupport
KDevelop language support interface - the base class for all programming language support plugins.
Definition kdevlanguagesupport.h:62
KDevMainWindow
KDevelop main window interface.
Definition kdevmainwindow.h:41
KDevPartController
Interface to control loaded parts and other documents.
Definition kdevpartcontroller.h:57
KDevPluginController
The base class for TDevelop plugin controller.
Definition kdevplugincontroller.h:40
KDevPluginInfo
Information about TDevelop plugin.
Definition kdevplugininfo.h:40
KDevPlugin
The base class for all TDevelop plugins.
Definition kdevplugin.h:108
KDevPlugin::codeModel
CodeModel * codeModel() const
Definition kdevplugin.cpp:89
KDevPlugin::project
KDevProject * project() const
Definition kdevplugin.cpp:84
KDevPlugin::partController
KDevPartController * partController() const
Definition kdevplugin.cpp:104
KDevPlugin::languageSupport
KDevLanguageSupport * languageSupport() const
Definition kdevplugin.cpp:99
KDevPlugin::restorePartialProjectSession
virtual void restorePartialProjectSession(const TQDomElement *el)
Override this base class method to restore any settings which differs from project to project.
Definition kdevplugin.cpp:114
KDevPlugin::pluginController
virtual KDevPluginController * pluginController() const
Definition kdevplugin.cpp:109
KDevPlugin::mainWindow
KDevMainWindow * mainWindow()
Definition kdevplugin.cpp:74
KDevPlugin::extension
Extension * extension(const TQString &serviceType, const TQString &constraint="")
Queries for the plugin which supports given service type (such plugins are called extensions in KDeve...
Definition kdevplugin.h:171
KDevPlugin::info
const KDevPluginInfo * info()
Provides an information about the plugin.
Definition kdevplugin.cpp:134
KDevPlugin::codeRepository
KDevCodeRepository * codeRepository() const
Definition kdevplugin.cpp:124
KDevPlugin::core
KDevCore * core() const
Definition kdevplugin.cpp:79
KDevPlugin::savePartialProjectSession
virtual void savePartialProjectSession(TQDomElement *el)
Saves session settings.
Definition kdevplugin.cpp:119
KDevPlugin::projectDom
TQDomDocument * projectDom() const
Definition kdevplugin.cpp:94
KDevPlugin::~KDevPlugin
virtual ~KDevPlugin()
Destructs a plugin.
Definition kdevplugin.cpp:69
KDevProject
KDevelop project interface.
Definition kdevproject.h:49
kdevapi.h
KDevelop API interface.

TDevelop Interfaces Library

Skip menu "TDevelop Interfaces Library"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

TDevelop Interfaces Library

Skip menu "TDevelop Interfaces Library"
  • buildtools
  •   lib
  •     base
  •     parsers
  •       autotools
  •       qmake
  •     widgets
  •   api
  • languages
  •   lib
  •     debugger
  •     designer_integration
  •     interfaces
  • lib
  •   catalog
  •   interfaces
  •     extensions
  •     external
  •     extras
  •   util
  •   widgets
  •     propeditor
  • parts
  •   documentation
  •     interfaces
  • src
  •   profileengine
  •     lib
Generated for TDevelop Interfaces Library by doxygen 1.9.8
This website is maintained by Timothy Pearson.