interfaces
icore.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef ICORE_H
00022 #define ICORE_H
00023
00024 #include <QtCore/QObject>
00025 #include "interfacesexport.h"
00026
00027 class KComponentData;
00028
00029 namespace KParts
00030 {
00031 class PartManager;
00032 }
00033
00038 namespace KDevelop
00039 {
00040
00041 class IUiController;
00042 class IPluginController;
00043 class IProjectController;
00044 class ILanguageController;
00045 class IDocumentController;
00046 class ISessionController;
00047 class IRunController;
00048 class ISession;
00049
00067 class KDEVPLATFORMINTERFACES_EXPORT ICore: public QObject
00068 {
00069 Q_OBJECT
00070
00071 public:
00072 virtual ~ICore();
00073
00075 static ICore *self();
00076
00078 Q_SCRIPTABLE virtual KDevelop::IUiController *uiController() = 0;
00079
00081 Q_SCRIPTABLE virtual KDevelop::IPluginController *pluginController() = 0;
00082
00084 Q_SCRIPTABLE virtual KDevelop::IProjectController *projectController() = 0;
00085
00087 Q_SCRIPTABLE virtual KDevelop::ILanguageController *languageController() = 0;
00088
00090 Q_SCRIPTABLE virtual KParts::PartManager *partManager() = 0;
00091
00093 Q_SCRIPTABLE virtual KDevelop::IDocumentController *documentController() = 0;
00094
00096 Q_SCRIPTABLE virtual KDevelop::IRunController *runController() = 0;
00097
00099 Q_SCRIPTABLE virtual KDevelop::ISession *activeSession() = 0;
00100
00102 virtual KComponentData componentData() const = 0;
00103
00104 protected:
00105 ICore(QObject *parent = 0);
00106 static ICore *m_self;
00107 };
00108
00109 }
00110
00111 #endif