Dialog z Python wócyniś

Statiske dialogi LibreOffice se z dialogowym editorom napóraju a składuju se na rozdźělnych městnach za tym lěc su priwatne (Moje makra), zgromadnje wužyte (Nałožeńske makra) abo do dokumenta zasajźone. Nawopak se dynamiske dialogi za cas wužywanja ze skriptow Basic abo Python napóraju, abo z pomocu drugeje rěcy, kótaruž LibreOffice pódpěra. Dołojce se pokazujo, kak se statiske dialogi w Python wócynjaju. Wobchade z wuwześćami a internacionalizacija se pśeglědnosći dla wuwóstajatej.

Dialogi Móje makra abo Nałožeńske makra

Pśikłady dołojce konsolu Access2Base Trace abo importěrowany dialog TutorialsDialog z menija Rědy – Makra – Makro wuwjasć… wócynjaju:


        # -*- coding: utf-8 -*-
        from __future__ import unicode_literals
            
        def consoleDlg():
            ctx =XSCRIPTCONTEXT.getComponentContext()
            smgr = ctx.getServiceManager()
            dp = smgr.createInstanceWithContext("com.sun.star.awt.DialogProvider", ctx)
            dlg = dp.createDialog( "vnd.sun.star.script:Access2Base.dlgTrace?location=application")
            dlg.execute()
            dlg.dispose()
            
        def tutorDialog():
            ctx =XSCRIPTCONTEXT.getComponentContext()
            smgr = ctx.getServiceManager()
            dp = smgr.createInstanceWithContext("com.sun.star.awt.DialogProvider", ctx)
            dlg = dp.createDialog("vnd.sun.star.script:Standard.TutorialsDialog?location=application")
            dlg.execute()
            dlg.dispose()
            
        g_exportedScripts = (consoleDlg, tutorDialog)
    

Do dokumenta zasajźone dialogi

Pśikład dołojce nowo wobźěłany dialog Dialog1 z dokumenta z menijom Rědy – Makra – Makro wuwjasć… wócynja:


        # -*- coding: utf-8 -*-
        from __future__ import unicode_literals
            
        def docDialog():
            """ Dialog pokazaś, kótaryž na dokumenśe bazěrujo """
            model = XSCRIPTCONTEXT.getDocument()
            smgr = XSCRIPTCONTEXT.getComponentContext().ServiceManager
            dp = smgr.createInstanceWithArguments( "com.sun.star.awt.DialogProvider", (model,))
            dlg = dp.createDialog( "vnd.sun.star.script:Standard.Dialog1?location=document")
            dlg.execute()
            dlg.dispose()
            
        g_exportedScripts = (docDialog,)
    

Woglědajśo se pśikłady za dynamiski dialog Python w msgbox.py w zapisu {installation}/program/.

Pšosym pódprějśo nas!