Kaydet (Commit) adf77268 authored tarafından Xisco Fauli's avatar Xisco Fauli Kaydeden (comit) Michael Meeks

Hello world (python) as a component

üst e20b4fe7
......@@ -74,6 +74,7 @@ LOCALPYFILES= \
$(BIN)$/pythonloader.py \
$(BIN)$/officehelper.py \
$(BIN)$/mailmerge.py \
$(BIN)$/CallWizard.py \
$(BIN)$/msgbox.py
.ENDIF
......
......@@ -404,7 +404,7 @@
</node>
<node oor:name="m1" oor:op="replace" install:module="writer">
<prop oor:name="URL" oor:type="xs:string">
<value >service:com.sun.star.wizards.fax.CallWizard?start</value>
<value >service:com.sun.star.wizards.fax.CallWizard?insert</value>
</prop>
<prop oor:name="Title">
<value xml:lang="en-US">~Fax...</value>
......
......@@ -357,6 +357,8 @@ my_components += evoab
my_components += component/avmedia/source/gstreamer/avmediagstreamer
.END
my_ooo_components = mailmerge component/wizards/com/sun/star/wizards/fax/fax
.INCLUDE: target.mk
ALLTAR : $(MISC)/services.rdb
......
......@@ -466,6 +466,17 @@ STD_JAR_FILE( gid_File_Jar_Saxon, saxon9 )
#endif
#endif
#ifndef AIX
#ifndef DISABLE_PYUNO
File gid_File_PyCallFaxWizard
TXT_FILE_BODY;
Dir = gid_Dir_Program;
Name = "CallWizard.py";
Styles = (PACKED);
End
#endif
#endif
#ifndef SYSTEM_LIBEXTTEXTCAT
// fingerprint files (lm)
......
......@@ -36,6 +36,7 @@ $(eval $(call gb_Module_add_targets,wizards,\
AllLangResTarget_tpl \
AllLangResTarget_wwz \
AllLangResTarget_wzi \
Pyuno_fax \
Zip_depot \
Zip_euro \
Zip_form \
......
# -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
import uno
import unohelper
from com.sun.star.task import XJobExecutor
# implement a UNO component by deriving from the standard unohelper.Base class
# and from the interface(s) you want to implement.
class HelloWorldJob(unohelper.Base, XJobExecutor):
def __init__(self, ctx):
# store the component context for later use
self.ctx = ctx
def trigger(self, args):
# note: args[0] == "HelloWorld", see below config settings
# retrieve the desktop object
desktop = self.ctx.ServiceManager.createInstanceWithContext(
"com.sun.star.frame.Desktop", self.ctx)
# get current document model
model = desktop.getCurrentComponent()
# access the document's text property
text = model.Text
# create a cursor
cursor = text.createTextCursor()
# insert the text into the document
text.insertString(cursor, "Hello World", 0)
# pythonloader looks for a static g_ImplementationHelper variable
g_ImplementationHelper = unohelper.ImplementationHelper()
g_ImplementationHelper.addImplementation( \
HelloWorldJob, # UNO object class
"com.sun.star.wizards.fax.CallWizard", # implemenation name
("com.sun.star.task.Job",),) # list of implemented services
# (the only service)
# vim:set shiftwidth=4 softtabstop=4 expandtab:
......@@ -26,10 +26,10 @@
*
**********************************************************************-->
<component loader="com.sun.star.loader.Java2"
<component loader="com.sun.star.loader.Python"
xmlns="http://openoffice.org/2010/uno-components">
<implementation
name="com.sun.star.wizards.fax.CallWizard$WizardImplementation">
<service name="com.sun.star.wizards.fax.CallWizard"/>
name="com.sun.star.wizards.fax.CallWizard">
<service name="com.sun.star.task.Job"/>
</implementation>
</component>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment