23#include <tqapplication.h>
26#include <kgenericfactory.h>
27#include <kstandarddirs.h>
29#define KROSS_MAIN_EXPORT TDE_EXPORT
30#include <main/manager.h>
31#include <main/scriptguiclient.h>
32#include <main/wdgscriptsmanager.h>
34#include <kspread_doc.h>
35#include <kspread_view.h>
37typedef KGenericFactory<Scripting> KSpreadScriptingFactory;
38K_EXPORT_COMPONENT_FACTORY( kspreadscripting, KSpreadScriptingFactory(
"kspreadscripting" ) )
40Scripting::Scripting(TQObject *parent, const
char *name, const TQStringList &)
41 : KParts::Plugin(parent, name)
43 setInstance(KSpreadScriptingFactory::instance());
45 kdDebug() <<
"Scripting plugin. Class: "
46 << metaObject()->className()
48 << parent->metaObject()->className()
51 if ( parent->inherits(
"KSpread::View") )
53 setInstance(Scripting::instance());
55 m_scriptguiclient =
new Kross::Api::ScriptGUIClient( m_view, m_view );
57 kdDebug() <<
"Setup actions for scripting !" << endl;
59 setXMLFile(locate(
"data",
"kspread/kpartplugins/scripting.rc"),
true);
61 new TDEAction(i18n(
"Execute Script File..."), 0, 0, m_scriptguiclient, TQ_SLOT(executeScriptFile()), actionCollection(),
"executescriptfile");
62 new TDEAction(i18n(
"Script Manager..."), 0, 0, m_scriptguiclient, TQ_SLOT(showScriptManager()), actionCollection(),
"configurescripts");
64 TDEAction* scriptmenuaction = m_scriptguiclient->action(
"installedscripts");
65 actionCollection()->insert(scriptmenuaction);
67 connect(m_scriptguiclient, TQ_SIGNAL(executionFinished(
const Kross::Api::ScriptAction* )),
this, TQ_SLOT(executionFinished(
const Kross::Api::ScriptAction*)));
69 Kross::Api::Manager::scriptManager()->addTQObject(m_view->doc(),
"KSpreadDocument");
70 Kross::Api::Manager::scriptManager()->addTQObject(m_view,
"KSpreadView");
75Scripting::~Scripting()
79void Scripting::executionFinished(
const Kross::Api::ScriptAction*)
81 TQApplication::restoreOverrideCursor();
84#include "scripting.moc"
The View class displays a KSpread document.