summaryrefslogtreecommitdiffstats
path: root/lib/interfaces/tdevplugin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/interfaces/tdevplugin.cpp')
-rw-r--r--lib/interfaces/tdevplugin.cpp139
1 files changed, 139 insertions, 0 deletions
diff --git a/lib/interfaces/tdevplugin.cpp b/lib/interfaces/tdevplugin.cpp
new file mode 100644
index 00000000..42d30cc8
--- /dev/null
+++ b/lib/interfaces/tdevplugin.cpp
@@ -0,0 +1,139 @@
+/* This file is part of the KDE project
+ Copyright (C) 2002 Simon Hausmann <hausmann@kde.org>
+ Copyright (C) 2002 Matthias Hoelzer-Kluepfel <hoelzer@kde.org>
+ Copyright (C) 2002 Harald Fernengel <harry@kdevelop.org>
+ Copyright (C) 2002 F@lk Brettschneider <falkbr@kdevelop.org>
+ Copyright (C) 2003 Julian Rockey <linux@jrockey.com>
+ Copyright (C) 2003 Roberto Raggi <roberto@kdevelop.org>
+ Copyright (C) 2003 Jens Dagerbo <jens.dagerbo@swipnet.se>
+ Copyright (C) 2003 Mario Scalas <mario.scalas@libero.it>
+ Copyright (C) 2003-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.
+*/
+#include "tdevplugin.h"
+
+#include "tdevapi.h"
+#include "tdevcore.h"
+#include "tdevplugininfo.h"
+#include "tdevpartcontroller.h"
+#include "tdevplugincontroller.h"
+
+#include <tdeaction.h>
+#include <tdeglobal.h>
+#include <kiconloader.h>
+
+#include <tqdom.h>
+#include <tqmap.h>
+
+#include <assert.h>
+
+///////////////////////////////////////////////////////////////////////////////
+// struct TDevPlugin::Private
+///////////////////////////////////////////////////////////////////////////////
+
+struct TDevPlugin::Private
+{
+ const TDevPluginInfo *info;
+};
+
+///////////////////////////////////////////////////////////////////////////////
+// class TDevPlugin
+///////////////////////////////////////////////////////////////////////////////
+
+TDevPlugin::TDevPlugin(const TDevPluginInfo *info, TQObject *parent, const char *name)
+ :TQObject(parent, name), d(new Private)
+{
+ assert(parent->inherits( "TDevApi" ));
+ m_api = static_cast<TDevApi *>( parent );
+
+ actionCollection()->setHighlightingEnabled( true );
+
+ d->info = info;
+ TDEGlobal::iconLoader()->addAppDir("tdevelop");
+}
+
+TDevPlugin::~TDevPlugin()
+{
+ delete( d );
+}
+
+TDevMainWindow *TDevPlugin::mainWindow()
+{
+ return m_api->mainWindow();
+}
+
+TDevCore *TDevPlugin::core() const
+{
+ return m_api->core();
+}
+
+TDevProject *TDevPlugin::project() const
+{
+ return m_api->project();
+}
+
+CodeModel *TDevPlugin::codeModel() const
+{
+ return m_api->codeModel();
+}
+
+TQDomDocument *TDevPlugin::projectDom() const
+{
+ return m_api->projectDom();
+}
+
+TDevLanguageSupport *TDevPlugin::languageSupport() const
+{
+ return m_api->languageSupport();
+}
+
+TDevPartController *TDevPlugin::partController() const
+{
+ return m_api->partController();
+}
+
+TDevPluginController *TDevPlugin::pluginController() const
+{
+ return m_api->pluginController();
+}
+
+void TDevPlugin::restorePartialProjectSession(const TQDomElement* /*el*/)
+{
+ // there's still nothing to do in the base class
+}
+
+void TDevPlugin::savePartialProjectSession(TQDomElement* /*el*/)
+{
+ // there's still nothing to do in the base class
+}
+
+TDevCodeRepository * TDevPlugin::codeRepository() const
+{
+ return m_api->codeRepository();
+}
+
+TDevPlugin * TDevPlugin::extension_internal(const TQString &serviceType, const TQString &constraint)
+{
+ return m_api->pluginController()->extension(serviceType, constraint);
+}
+
+const TDevPluginInfo *TDevPlugin::info()
+{
+ return d->info;
+}
+
+#include "tdevplugin.moc"