Ich wollte Schritt für Schritt ein Addon aufbauen. Im ersten Schritt erstellte ich die *atestmenu.xcu*, die lediglich einen neuen Eintrag im Menü von LO eintragen sollte, was sie aber nicht tut. Hier meine *atestmenu.xcu*:
Code: Alles auswählen
<?xml version='1.0' encoding='UTF-8'?>
<oor:component-data
    xmlns:oor="http://openoffice.org/2001/registry"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    oor:name="Addons"
    oor:package="org.openoffice.Office">
    <node oor:name="AddonUI">
        
        <!-- MenuBar -->
        
        <node oor:name="OfficeMenuBar">
            <node
                oor:name="de.atestmenu.openoffice.WriteInDokument"
                oor:op="replace">
                
                <prop oor:name="Title" oor:type="xs:string">
                    <value>TESTMENUE</value>
                    <value xml:lang="de-DE">TESTMENUE</value>
                </prop>
                <prop oor:name="Target" oor:type="xs:string">
                    <value>_self</value>
                </prop>
                
                <!-- nur fuer Writer -->
                <prop oor:name="Context" oor:type="xs:string">
                    <value>com.sun.star.text.TextDocument</value>
                </prop>
                
                <node oor:name="Submenu">
                    <node oor:name="m1" oor:op="replace">
                        
                        <!-- command URL -->
                
                        <prop oor:name="URL" oor:type="xs:string">
                            <value>service:de.atestmenu.openoffice.WriteInDokument?execute</value>
                        </prop>
                        
                        <prop oor:name="Title" oor:type="xs:string">
                            <value>
                                ATESTMENU
                            </value>
                            <value xml:lang="en-US">
                                ATESTMENU
                            </value>
                            <value xml:lang="de">
                                ATESTMENÜ
                            </value>
                        </prop>
                
                    </node>
                </node>
                <!-- END node Submenu -->
                
            </node>
        </node>
        <!-- End MenuBar -->
        
    </node>
    <!-- END AddonUI -->
</oor:component-data>
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8"?>
<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest">
  <manifest:file-entry manifest:media-type="application/de.atestmenu.openoffice.configuration-data" 
      manifest:full-path="atestmenu.xcu"/>
  <manifest:file-entry manifest:media-type="application/de.atestmenu.openoffice.framework-script" 
      manifest:full-path="atestmenu.py"/>
    
</manifest:manifest>Code: Alles auswählen
import uno
import unohelper
from com.sun.star.task import XJobExecutor
 
 
class WriteInDokument( unohelper.Base, XJobExecutor ):
    def __init__( self, ctx ):
        self.ctx = ctx
 
    def trigger( self, args ):
        """Methode noch funktionslos
        """
        desktop = self.ctx.ServiceManager.createInstanceWithContext(
            "com.sun.star.frame.Desktop", self.ctx )
        doc = desktop.getCurrentComponent()
        return
###
# Funktionalitaet in UNO bekannt machen
g_ImplementationHelper = unohelper.ImplementationHelper()
g_ImplementationHelper.addImplementation(
        WriteInDokument,
        "de.atestmenu.openoffice.WriteInDokument",
        ("com.sun.star.task.Job",),
        )
Was habe ich falsch gemacht?