21#include <tdeaboutdata.h>
23#include <kiconloader.h>
24#include <tdeinstance.h>
26#include <kstandarddirs.h>
28#include <tdeparts/componentfactory.h>
29#include <tdeparts/plugin.h>
31#include "karbon_factory.h"
32#include "karbon_part.h"
33#include "karbon_resourceserver.h"
34#include "karbon_aboutdata.h"
35#include "karbon_tool_registry.h"
39KarbonResourceServer* KarbonFactory::s_rserver = 0;
41TDEInstance* KarbonFactory::s_instance = 0L;
42TDEAboutData* KarbonFactory::s_aboutData = 0L;
44KarbonFactory::KarbonFactory( TQObject* parent,
const char* name )
45 : KoFactory( parent, name )
49 KarbonToolRegistry::instance();
52 TDETrader::OfferList offers = TDETrader::self() -> query(TQString::fromLatin1(
"Karbon/CoreModule"),
53 TQString::fromLatin1(
"Type == 'Service'"));
55 TDETrader::OfferList::ConstIterator iter;
57 for(iter = offers.begin(); iter != offers.end(); ++iter)
59 KService::Ptr service = *iter;
61 KParts::Plugin* plugin =
62 KParts::ComponentFactory::createInstanceFromService<KParts::Plugin> ( service,
this, 0, TQStringList(), &errCode);
64 kdDebug() <<
"found plugin " << service -> property(
"Name").toString() <<
"\n";
68KarbonFactory::~KarbonFactory()
79KarbonFactory::createPartObject( TQWidget* parentWidget,
const char* widgetName,
80 TQObject* parent,
const char* name,
const char* classname,
const TQStringList& )
85 bool bWantKoDocument = ( strcmp( classname,
"KoDocument" ) == 0 );
90 new KarbonPart( parentWidget, widgetName, parent, name, !bWantKoDocument );
92 if( !bWantKoDocument )
93 part->setReadWrite(
false );
99KarbonFactory::aboutData()
102 s_aboutData = newKarbonAboutData();
107KarbonFactory::instance()
111 s_instance =
new TDEInstance( aboutData() );
114 s_instance->dirs()->addResourceType(
"kis_brushes",
115 TDEStandardDirs::kde_default(
"data" ) +
"chalk/brushes/" );
117 s_instance->dirs()->addResourceType(
"kis_pattern",
118 TDEStandardDirs::kde_default(
"data" ) +
"chalk/patterns/" );
120 s_instance->dirs()->addResourceType(
"karbon_gradient",
121 TDEStandardDirs::kde_default(
"data" ) +
"karbon/gradients/" );
123 s_instance->dirs()->addResourceType(
"karbon_clipart",
124 TDEStandardDirs::kde_default(
"data" ) +
"karbon/cliparts/" );
125 s_instance->dirs()->addResourceType(
"karbon_template", TDEStandardDirs::kde_default(
"data") +
"karbon/templates/" );
127 s_instance->iconLoader()->addAppDir(
"koffice");
133KarbonResourceServer *KarbonFactory::rServer()
136 s_rserver =
new KarbonResourceServer;
141#include "karbon_factory.moc"