00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
#ifndef KOCORE_H
00025
#define KOCORE_H
00026
00027
#include <calendar/calendardecoration.h>
00028
#include <korganizer/part.h>
00029
00030
#include <ktrader.h>
00031
00032
namespace KCal {
class CalendarResources; }
00033
00034
class KOCore
00035 {
00036
public:
00037 ~KOCore();
00038
00039
static KOCore *
self();
00040
00041 KTrader::OfferList availablePlugins();
00042 KTrader::OfferList availableCalendarDecorations();
00043 KTrader::OfferList availableParts();
00044
00045 KOrg::Plugin *loadPlugin( KService::Ptr service );
00046 KOrg::Plugin *loadPlugin(
const QString & );
00047
00048
KOrg::CalendarDecoration *loadCalendarDecoration( KService::Ptr service );
00049
KOrg::CalendarDecoration *loadCalendarDecoration(
const QString & );
00050
00051 KOrg::Part *loadPart( KService::Ptr,
KOrg::MainWindow *parent );
00052 KOrg::Part *loadPart(
const QString &,
KOrg::MainWindow *parent );
00053
00054 KOrg::CalendarDecoration::List calendarDecorations();
00055 KOrg::Part::List loadParts(
KOrg::MainWindow *parent );
00056
00057
void setXMLGUIClient( KXMLGUIClient *guiclient );
00058 KXMLGUIClient *xmlguiClient()
const {
return mXMLGUIClient; }
00059
00064
void unloadParts(
KOrg::MainWindow *parent, KOrg::Part::List &parts );
00065
void unloadPlugins();
00066
00067
void reloadPlugins();
00068
00073 KOrg::Part::List reloadParts(
KOrg::MainWindow *parent,
00074 KOrg::Part::List &parts );
00075
00076 QString holiday(
const QDate & );
00077
00078 KCal::CalendarResources *calendarResources();
00079
00080
protected:
00081 KOCore();
00082
00083 KTrader::OfferList availablePlugins(
const QString &type,
00084
int pluginInterfaceVersion = -1 );
00085
00086
private:
00087
static KOCore *mSelf;
00088
00089 KOrg::CalendarDecoration::List mCalendarDecorations;
00090
bool mCalendarDecorationsLoaded;
00091
00092
KOrg::CalendarDecoration *mHolidays;
00093
00094 KXMLGUIClient *mXMLGUIClient;
00095
00096 KCal::CalendarResources *mCalendarResources;
00097 };
00098
00099
#endif