summaryrefslogtreecommitdiffstats
path: root/translations/source/bn/helpcontent2/source/text/sbasic/python.po
diff options
context:
space:
mode:
Diffstat (limited to 'translations/source/bn/helpcontent2/source/text/sbasic/python.po')
-rw-r--r--translations/source/bn/helpcontent2/source/text/sbasic/python.po3416
1 files changed, 3416 insertions, 0 deletions
diff --git a/translations/source/bn/helpcontent2/source/text/sbasic/python.po b/translations/source/bn/helpcontent2/source/text/sbasic/python.po
new file mode 100644
index 000000000..baaaf9690
--- /dev/null
+++ b/translations/source/bn/helpcontent2/source/text/sbasic/python.po
@@ -0,0 +1,3416 @@
+#. extracted from helpcontent2/source/text/sbasic/python
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
+"POT-Creation-Date: 2020-07-02 14:37+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Accelerator-Marker: ~\n"
+"X-Generator: LibreOffice\n"
+
+#. naSFZ
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python Scripts"
+msgstr ""
+
+#. 9RJv6
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"bm_id491543348147708\n"
+"help.text"
+msgid "<bookmark_value>macros;Python scripts</bookmark_value> <bookmark_value>Python;macros</bookmark_value> <bookmark_value>scripts;Python</bookmark_value>"
+msgstr ""
+
+#. vAoRU
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"hd_id3154232\n"
+"help.text"
+msgid "<variable id=\"pythonscriptshelp\"><link href=\"text/sbasic/python/main0000.xhp\" name=\"mainpython\">%PRODUCTNAME Python Scripts Help</link></variable>"
+msgstr ""
+
+#. snE38
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"par_id3153894\n"
+"help.text"
+msgid "%PRODUCTNAME provides an Application Programming Interface (API) that allows controlling the $[officename] components with different programming languages by using the $[officename] Software Development Kit (SDK). For more information about the $[officename] API and the Software Development Kit, visit <link href=\"https://api.libreoffice.org/\" name=\"api.libreoffice.org\">https://api.libreoffice.org</link>"
+msgstr ""
+
+#. 9EUoJ
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"par_id3147226\n"
+"help.text"
+msgid "This help section explains the most common Python script functions for %PRODUCTNAME. For more in-depth information please refer to the <link href=\"https://wiki.documentfoundation.org/Macros/Python_Design_Guide\" name=\"wiki.documentfoundation.org PYTHON Guide\">Designing & Developing Python Applications</link> on the Wiki."
+msgstr ""
+
+#. FjaiD
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"hd_id3146957\n"
+"help.text"
+msgid "Working with Python Scripts in %PRODUCTNAME"
+msgstr ""
+
+#. mQFKb
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"N0102\n"
+"help.text"
+msgid "You can execute Python scripts choosing <menuitem>Tools - Macros - Run Macro</menuitem>. Editing scripts can be done with your preferred text editor. Python scripts are present in various locations detailed hereafter. You can refer to Programming examples for macros illustrating how to run the Python interactive console from %PRODUCTNAME."
+msgstr ""
+
+#. bb68x
+#: main0000.xhp
+msgctxt ""
+"main0000.xhp\n"
+"par_id131568902936659\n"
+"help.text"
+msgid "The %PRODUCTNAME scripting framework for Python is optional on some GNU/Linux distributions. If it is installed, selecting <menuitem>Tools - Macros - Run Macro...</menuitem> and checking <literal>%PRODUCTNAME Macros</literal> for the presence of <literal>HelloWorld – HelloWorldPython</literal> macro is sufficient. If absent, please refer to your distribution documentation in order to install the %PRODUCTNAME scripting framework for Python."
+msgstr ""
+
+#. naZBV
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python to Basic"
+msgstr ""
+
+#. dkYtk
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0330\n"
+"help.text"
+msgid "<bookmark_value>Python;Calling Basic</bookmark_value> <bookmark_value>ParamArray</bookmark_value>"
+msgstr ""
+
+#. rGfKE
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0331\n"
+"help.text"
+msgid "<variable id=\"py2ba_h1\"><link href=\"text/sbasic/python/python_2_basic.xhp\" name=\"Calling Basic macros from Python\">Calling Basic Macros from Python</link></variable>"
+msgstr ""
+
+#. XzJcA
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0332\n"
+"help.text"
+msgid "You can call %PRODUCTNAME Basic macros from Python scripts, and notable features can be obtained in return such as:"
+msgstr ""
+
+#. ehCg3
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0333\n"
+"help.text"
+msgid "Simple logging facilities out of <literal>Access2Base</literal> library Trace console,"
+msgstr ""
+
+#. HhDdS
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0334\n"
+"help.text"
+msgid "<literal>InputBox</literal> and <literal>MsgBox</literal> screen I/O functions based on Basic to ease Python development,"
+msgstr ""
+
+#. DzFBB
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0335\n"
+"help.text"
+msgid "<literal>Xray</literal> calls interrupting Python script execution to help inspect variables."
+msgstr ""
+
+#. nABRD
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0336\n"
+"help.text"
+msgid "The %PRODUCTNAME Application Programming Interface (API) Scripting Framework supports inter-language script execution between Python and Basic, or other supported programming languages for that matter. Arguments can be passed back and fourth across calls, providing they represent primitives data types that both languages recognize, and assuming that the Scripting Framework converts them appropriately."
+msgstr ""
+
+#. Gn9Bv
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0337\n"
+"help.text"
+msgid "It is recommended to have knowledge of Python standard modules and %PRODUCTNAME API features prior to perform inter-language calls from Python to Basic, JavaScript or any other script engine."
+msgstr ""
+
+#. yXTrk
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0338\n"
+"help.text"
+msgid "When running Python scripts from an Integrated Development Environment (IDE), the %PRODUCTNAME nested Basic engine may be absent. Avoid Python to %PRODUCTNAME Basic calls in such context. However Python environment and Universal Networks Objects (UNO) are fully available. Refer to <link href=\"text/sbasic/python/python_ide.xhp\" name=\"Setting Up an Integrated IDE for Python\">Setting Up an Integrated IDE for Python</link> for more information."
+msgstr ""
+
+#. NcuDF
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0339\n"
+"help.text"
+msgid "Retrieving %PRODUCTNAME Basic Scripts"
+msgstr ""
+
+#. yiTqz
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0340\n"
+"help.text"
+msgid "%PRODUCTNAME Basic macros can be personal, shared, or embedded in documents. In order to execute them, Python run time needs to be provided with Basic macro locations. Implementing the <link href=\"https://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1script_1_1provider_1_1XScript.html\" name=\"XScriptProvider interface\">com.sun.star.script.provider.XScriptProvider</link> interface allows the retrieval of executable scripts:"
+msgstr ""
+
+#. w4UAs
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0341\n"
+"help.text"
+msgid "<bookmark_value>API;script.provider.MasterScriptProviderFactory: Retrieving Basic scripts</bookmark_value><bookmark_value>API;script.provider.XScript: Executing Basic scripts</bookmark_value><bookmark_value>API;XScriptProvider: Retrieving Basic scripts</bookmark_value>"
+msgstr ""
+
+#. iu5YW
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0347\n"
+"help.text"
+msgid "'''Grab Basic script object before invocation.'''"
+msgstr ""
+
+#. PnPTm
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0363\n"
+"help.text"
+msgid "Executing %PRODUCTNAME Basic Scripts"
+msgstr ""
+
+#. GNDbf
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0364ndx\n"
+"help.text"
+msgid "<bookmark_value>API;script.provider.XScript : Executing Basic scripts</bookmark_value>"
+msgstr ""
+
+#. 7BfDh
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0364\n"
+"help.text"
+msgid "The %PRODUCTNAME Software Development Kit (SDK) documentation for <link href=\"https://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1script_1_1provider_1_1XScript.html#a11a551f5a2520f74c5109cd8c9f8c7b7\" name=\"XScript interface\">com.sun.star.script.provider.XScript</link> interface details the calling convention for inter-language calls. Invocation of functions requires three arrays:"
+msgstr ""
+
+#. UDhtt
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0365\n"
+"help.text"
+msgid "the first lists the arguments of the called routine"
+msgstr ""
+
+#. A9CMY
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0366\n"
+"help.text"
+msgid "the second identifies modified arguments"
+msgstr ""
+
+#. v3GcD
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0367\n"
+"help.text"
+msgid "the third stores the return values"
+msgstr ""
+
+#. TeGwy
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0368\n"
+"help.text"
+msgid "Python Syntax"
+msgstr ""
+
+#. GXEC9
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0369\n"
+"help.text"
+msgid "<literal>results = script.invoke((prompt,buttons,title), (), ())</literal>"
+msgstr ""
+
+#. 465No
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0370\n"
+"help.text"
+msgid "<literal>script.invoke((message,), tuple, ())</literal>"
+msgstr ""
+
+#. wnGWp
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0371\n"
+"help.text"
+msgid "<literal>script.invoke((args), (), results)</literal>"
+msgstr ""
+
+#. oWBhX
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0372\n"
+"help.text"
+msgid "Examples of Personal or Shared Scripts"
+msgstr ""
+
+#. nyNGG
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0373\n"
+"help.text"
+msgid "Examples in <link href=\"text/sbasic/python/python_screen.xhp\" name=\"Input/Output to Screen\">Input/Output to Screen</link> detail Python to Basic invocation calls. <link href=\"text/sbasic/python/python_document_events.xhp\" name=\"Monitoring Document Events\">Monitoring Document Events</link> illustrates the usage of *args Python idiom to print a variable number of parameters to <literal>Access2Base</literal> logging console dialog."
+msgstr ""
+
+#. dt25D
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0374\n"
+"help.text"
+msgid "At time of development you can interrupt Python script execution using <link href=\"https://berma.pagesperso-orange.fr/index2.html\" name=\"Xray extension\">Xray extension</link> in order to inspect properties and methods of UNO objects. The APSO extension debugger allows object introspection using either Xray either MRI extensions."
+msgstr ""
+
+#. F8dF9
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0378\n"
+"help.text"
+msgid "Examples of Embedded Scripts in Documents"
+msgstr ""
+
+#. EmqHD
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0379\n"
+"help.text"
+msgid "<literal>*args</literal>Python simplified syntax can be used in conjunction with %PRODUCTNAME Basic routines that accept a variable number of arguments. Below <literal>Print</literal> and <literal>SUM</literal> Python functions call their Basic <literal>Print</literal> and <literal>SUM</literal> counterparts, using aforementioned <literal>getBasicScript</literal> function. Exception handling is not detailed."
+msgstr ""
+
+#. ej8XP
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0384\n"
+"help.text"
+msgid "\"\"\"Outputs the specified strings or numeric expressions in a dialog box.\"\"\""
+msgstr ""
+
+#. RJuGD
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0389\n"
+"help.text"
+msgid "\"\"\"SUM the specified number expression.\"\"\""
+msgstr ""
+
+#. aPmSn
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0402\n"
+"help.text"
+msgid "The %PRODUCTNAME Basic <literal>Print</literal> and <literal>SUM</literal> document-based routines accept a variable number of arguments. The <literal>Private</literal> or <literal>Public</literal> attributes have no effect. The arguments type checking is skipped for clarity."
+msgstr ""
+
+#. jHUxq
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0407\n"
+"help.text"
+msgid "''' Print item list of variable number '''"
+msgstr ""
+
+#. 3pFAj
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0408\n"
+"help.text"
+msgid "' all CStr() convertible args are accepted"
+msgstr ""
+
+#. G9n5d
+#: python_2_basic.xhp
+msgctxt ""
+"python_2_basic.xhp\n"
+"N0419\n"
+"help.text"
+msgid "''' SUM a variable list of numbers '''"
+msgstr ""
+
+#. CDJo4
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"tit\n"
+"help.text"
+msgid "Opening a Dialog with Python"
+msgstr ""
+
+#. XWAwA
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0334\n"
+"help.text"
+msgid "<bookmark_value>Python;dialogs</bookmark_value> <bookmark_value>dialog box;Python</bookmark_value> <bookmark_value>dialogs;Python</bookmark_value>"
+msgstr ""
+
+#. rXdUF
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0336\n"
+"help.text"
+msgid "<variable id=\"pythondialog\"><link href=\"text/sbasic/python/python_dialogs.xhp\" name=\"command_name\">Opening a Dialog with Python</link></variable>"
+msgstr ""
+
+#. WAuH7
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0337\n"
+"help.text"
+msgid "%PRODUCTNAME static dialogs are created with the <link href=\"text/sbasic/guide/create_dialog.xhp\" name=\"dialog editor\">Dialog editor</link> and are stored in varying places according to their personal (My Macros), shared (%PRODUCTNAME Macros) or document-embedded nature. In reverse, dynamic dialogs are constructed at runtime, from Basic or Python scripts, or using any other <link href=\"text/shared/guide/scripting.xhp\">%PRODUCTNAME supported language</link> for that matter. Opening static dialogs with Python is illustrated herewith. Exception handling and internationalization are omitted for clarity."
+msgstr ""
+
+#. BNxEA
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0338\n"
+"help.text"
+msgid "My Macros or %PRODUCTNAME Macros dialogs"
+msgstr ""
+
+#. jCE4m
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0339\n"
+"help.text"
+msgid "The examples below open <literal>Access2Base Trace</literal> console or the imported <literal>TutorialsDialog</literal> dialog with <menuitem>Tools – Macros – Run Macro...</menuitem> menu:"
+msgstr ""
+
+#. ChW9B
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0364\n"
+"help.text"
+msgid "Document embedded dialogs"
+msgstr ""
+
+#. SsPGJ
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0365\n"
+"help.text"
+msgid "The example below opens a newly edited <literal>Dialog1</literal> dialog from a document with <menuitem>Tools – Macros – Run Macro...</menuitem> menu:"
+msgstr ""
+
+#. mMo7w
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0370\n"
+"help.text"
+msgid "\"\"\" Display a doc-based dialog \"\"\""
+msgstr ""
+
+#. txExG
+#: python_dialogs.xhp
+msgctxt ""
+"python_dialogs.xhp\n"
+"N0381\n"
+"help.text"
+msgid "Refer to <literal>msgbox.py</literal> in <literal>{installation}/program/</literal> directory for Python dynamic dialog examples."
+msgstr ""
+
+#. r6FEK
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python : Monitoring Document Events"
+msgstr ""
+
+#. 7vwHs
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0526\n"
+"help.text"
+msgid "<bookmark_value>Basic;Monitoring Document Events</bookmark_value> <bookmark_value>Python;Monitoring Document Events</bookmark_value> <bookmark_value>Access2Base;Console</bookmark_value> <bookmark_value>Access2Base;Trace</bookmark_value> <bookmark_value>Tools;Strings</bookmark_value> <bookmark_value>API;GlobalScope.BasicLibraries</bookmark_value> <bookmark_value>API;document.DocumentEvent: Monitoring Document Event</bookmark_value> <bookmark_value>API;document.XDocumentEventBroadcaster: Monitoring Document Event</bookmark_value> <bookmark_value>API;document.XDocumentEventListener: Monitoring Document Event</bookmark_value> <bookmark_value>API;frame.Desktop: Monitoring Document Event</bookmark_value> <bookmark_value>API;frame.GlobalEventBroadcaster: Monitoring Document Event</bookmark_value> <bookmark_value>API;lang.EventObject: Monitoring Document Event</bookmark_value> <bookmark_value>API;script.provider.MasterScriptProviderFactory: Monitoring Document Event</bookmark_value> <bookmark_value>API;script.provider.XScript: Monitoring Document Event</bookmark_value>"
+msgstr ""
+
+#. gsCNB
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0527\n"
+"help.text"
+msgid "<variable id=\"pythonmonitor\"><link href=\"text/sbasic/python/python_document_events.xhp\" name=\"Monitoring Document Events\">Monitoring Document Events</link></variable>"
+msgstr ""
+
+#. bXprs
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0528\n"
+"help.text"
+msgid "Next to <link href=\"text/sbasic/shared/01040000.xhp\" name=\"assigning macros to events\">assigning macros to events</link>, one can monitor events raised by %PRODUCTNAME documents. Application Programming Interface (API) broadcasters are responsible for calling event scripts. Unlike listeners that require to define all supported methods, even if unused, document monitors require only two methods next to hooked event scripts."
+msgstr ""
+
+#. HztRG
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0529\n"
+"help.text"
+msgid "Listening to Document Events"
+msgstr ""
+
+#. tFSkv
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0530\n"
+"help.text"
+msgid "Monitoring is illustrated herewith for Basic and Python languages using object-oriented programming. Assigning <literal>OnLoad</literal> script, to the <literal>Open Document</literal> event, suffices to initiate and terminate document event monitoring. <menuitem>Tools – Customise...</menuitem> menu <menuitem>Events</menuitem> tab is used to assign either scripts."
+msgstr ""
+
+#. 27Dcq
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0531\n"
+"help.text"
+msgid "Intercepting events helps setting scripts pre- and post-conditions such as loading and unloading libraries or track script processing in the background. <literal>Access2Base Trace</literal> module usage is illustrating that second context."
+msgstr ""
+
+#. BG7Xs
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0532\n"
+"help.text"
+msgid "With Python"
+msgstr ""
+
+#. eGKkK
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0533\n"
+"help.text"
+msgid "Events monitoring starts from object instantiation and ultimately stops when Python releases the object. Raised events are reported using <literal>Access2Base</literal> console."
+msgstr ""
+
+#. 35oEi
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0534\n"
+"help.text"
+msgid "<literal>OnLoad</literal> and <literal>OnUnload</literal> events can be used to respectively set and unset Python programs path. They are described as <literal>Open document</literal> and <literal>Document closed</literal>."
+msgstr ""
+
+#. AdYNb
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0543\n"
+"help.text"
+msgid "class UiDocument(unohelper.Base, AdapterPattern):"
+msgstr ""
+
+#. i7waD
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0544\n"
+"help.text"
+msgid "\"\"\" Monitor document events \"\"\""
+msgstr ""
+
+#. 4k7DQ
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0546\n"
+"help.text"
+msgid "adapted from 'Python script to monitor OnSave event' at"
+msgstr ""
+
+#. AMBQD
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0550\n"
+"help.text"
+msgid "\"\"\" Document events monitor \"\"\""
+msgstr ""
+
+#. FNyTn
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0551\n"
+"help.text"
+msgid "''' report using Access2Base.Trace console OR"
+msgstr ""
+
+#. ops87
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0552\n"
+"help.text"
+msgid "report in 1st sheet, 1st column for Calc docs '''"
+msgstr ""
+
+#. SUrHQ
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0558\n"
+"help.text"
+msgid "#self.row = 0 # uncomment for Calc documents only"
+msgstr ""
+
+#. bdxDG
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0560\n"
+"help.text"
+msgid "self.listen() # Start monitoring doc. events"
+msgstr ""
+
+#. 8tXZv
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0569\n"
+"help.text"
+msgid "\"\"\" Output doc. events on 1st column of a Calc spreadsheet \"\"\""
+msgstr ""
+
+#. HEByB
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0575\n"
+"help.text"
+msgid "def listen(self, *args): # OnLoad/OnNew at the earliest"
+msgstr ""
+
+#. eq9UC
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0576\n"
+"help.text"
+msgid "\"\"\" Start doc. events monitoring \"\"\""
+msgstr ""
+
+#. o7xSw
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0578\n"
+"help.text"
+msgid "Console.log(\"INFO\", \"Document events are being logged\", True)"
+msgstr ""
+
+#. jnyCD
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0580\n"
+"help.text"
+msgid "def sleep(self, *args): # OnUnload at the latest (optional)"
+msgstr ""
+
+#. QiSAD
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0581\n"
+"help.text"
+msgid "\"\"\" Stop doc. events monitoring \"\"\""
+msgstr ""
+
+#. TyiYD
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0583\n"
+"help.text"
+msgid "Console.log(\"INFO\", \"Document events have been logged\", True)"
+msgstr ""
+
+#. utJGT
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0587\n"
+"help.text"
+msgid "\"\"\" Intercepts all doc. events \"\"\""
+msgstr ""
+
+#. Xwnsi
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0588\n"
+"help.text"
+msgid "#self.setCell(event.Source, event.EventName) # only for Calc docs"
+msgstr ""
+
+#. rE9Ep
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0595\n"
+"help.text"
+msgid "\"\"\" Release all activities \"\"\""
+msgstr ""
+
+#. XaEoP
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0601\n"
+"help.text"
+msgid "def OnLoad(*args): # 'Open Document' event"
+msgstr ""
+
+#. CkJg4
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0604\n"
+"help.text"
+msgid "def OnUnload(*args): # 'Document has been closed' event"
+msgstr ""
+
+#. KobNT
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0605\n"
+"help.text"
+msgid "pass # (optional) performed when disposed"
+msgstr ""
+
+#. xPosR
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0613\n"
+"help.text"
+msgid "(Back/Fore)ground console to report/log program execution."
+msgstr ""
+
+#. Qph5m
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0617\n"
+"help.text"
+msgid "\"\"\" Print free item list to console \"\"\""
+msgstr ""
+
+#. nzjHS
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0622\n"
+"help.text"
+msgid "\"\"\" Append log message to console, optional user prompt \"\"\""
+msgstr ""
+
+#. HDXPV
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0627\n"
+"help.text"
+msgid "\"\"\" Set log messages lower limit \"\"\""
+msgstr ""
+
+#. fXnMH
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0632\n"
+"help.text"
+msgid "\"\"\" Display console content/dialog \"\"\""
+msgstr ""
+
+#. 2dfeg
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0647\n"
+"help.text"
+msgid "Mind the misspelled <literal>documentEventOccured</literal> method that inherits a typo from %PRODUCTNAME Application Programming Interface (API)."
+msgstr ""
+
+#. uGHTE
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0648\n"
+"help.text"
+msgid "<literal>Start application</literal> and <literal>Close application</literal> events can respectively be used to set and to unset Python path for user scripts or %PRODUCTNAME scripts. In a similar fashion, document based Python libraries or modules can be loaded and released using <literal>Open document</literal> and <literal>Document closed</literal> events. Refer to <link href=\"text/sbasic/python/python_import.xhp\" name=\"Importing Python Modules\">Importing Python Modules</link> for more information."
+msgstr ""
+
+#. 8pHCg
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0649\n"
+"help.text"
+msgid "With %PRODUCTNAME Basic"
+msgstr ""
+
+#. SEw8V
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0650\n"
+"help.text"
+msgid "The <literal>Onload</literal> script is assigned to <literal>Open document</literal> event using <menuitem>Tools – Customise...</menuitem> menu <menuitem>Events</menuitem> tab. Events monitoring starts from the moment a <literal>ConsoleLogger</literal> object is instantiated and ultimately stops when Basic engine releases it. <literal>OnLoad</literal> event loads necessary Basic libraries, while caught events are reported using <literal>Access2Base.Trace</literal> module."
+msgstr ""
+
+#. TAiMF
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0651\n"
+"help.text"
+msgid "REM controller.Events module"
+msgstr ""
+
+#. kYy8A
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0653\n"
+"help.text"
+msgid "Private _obj As Object ' controller.ConsoleLogger instance"
+msgstr ""
+
+#. PfRq6
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0655\n"
+"help.text"
+msgid "Sub OnLoad(evt As com.sun.star.document.DocumentEvent) ' >> Open Document <<"
+msgstr ""
+
+#. BEVFV
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0659\n"
+"help.text"
+msgid "REM controller.ConsoleLogger class module"
+msgstr ""
+
+#. PG65V
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0664\n"
+"help.text"
+msgid "' ADAPTER design pattern object to be instantiated in « Open Document » event"
+msgstr ""
+
+#. 9ZNpG
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0668\n"
+"help.text"
+msgid "' CONSTRUCTOR/DESTRUCTOR"
+msgstr ""
+
+#. EQG8C
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0674\n"
+"help.text"
+msgid "' MEMBERS"
+msgstr ""
+
+#. aGuEg
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0679\n"
+"help.text"
+msgid "''' System-dependent filename '''"
+msgstr ""
+
+#. kEEgf
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0686\n"
+"help.text"
+msgid "' METHODS"
+msgstr ""
+
+#. YMAtN
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0688\n"
+"help.text"
+msgid "''' Monitor document events '''"
+msgstr ""
+
+#. cBx2G
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0701\n"
+"help.text"
+msgid "''' Initialize document events logging '''"
+msgstr ""
+
+#. A5RuU
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0706\n"
+"help.text"
+msgid "IIf(IsMissing(evt),\"\",evt.EventName & \"-\") & \"Document events are being logged\", _"
+msgstr ""
+
+#. NkHa4
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0714\n"
+"help.text"
+msgid "''' Terminate document events logging '''"
+msgstr ""
+
+#. np2xy
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0717\n"
+"help.text"
+msgid "IIf(IsMissing(evt),\"\",evt.EventName & \"-\") & \"Document events have been logged\", _"
+msgstr ""
+
+#. uVpJf
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0723\n"
+"help.text"
+msgid "' Your code for handled events goes here"
+msgstr ""
+
+#. AJJDf
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0724\n"
+"help.text"
+msgid "Mind the misspelled <literal>_documentEventOccured</literal> method that inherits a typo from %PRODUCTNAME Application Programming Interface (API)."
+msgstr ""
+
+#. b3qae
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0725\n"
+"help.text"
+msgid "Discovering Documents Events"
+msgstr ""
+
+#. BDj9Q
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0726\n"
+"help.text"
+msgid "The broadcaster API object provides the list of events it is responsible for:"
+msgstr ""
+
+#. Z2BhT
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0727\n"
+"help.text"
+msgid "With Python"
+msgstr ""
+
+#. 8PCHK
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0734\n"
+"help.text"
+msgid "\"\"\" Display document events \"\"\""
+msgstr ""
+
+#. SECnV
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0736\n"
+"help.text"
+msgid "adapted from DisplayAvailableEvents() by A. Pitonyak"
+msgstr ""
+
+#. wXN8p
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0747\n"
+"help.text"
+msgid "The <link href=\"https://extensions.libreoffice.org/extensions/apso-alternative-script-organizer-for-python\" name=\"Alternative Python Script Organizer\">Alternative Python Script Organizer (APSO)</link> extension is used to render events information on screen."
+msgstr ""
+
+#. kgY8m
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0748\n"
+"help.text"
+msgid "With %PRODUCTNAME Basic"
+msgstr ""
+
+#. KjotC
+#: python_document_events.xhp
+msgctxt ""
+"python_document_events.xhp\n"
+"N0750\n"
+"help.text"
+msgid "''' Display document events '''"
+msgstr ""
+
+#. upkPP
+#: python_examples.xhp
+msgctxt ""
+"python_examples.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python examples"
+msgstr ""
+
+#. Etrfb
+#: python_examples.xhp
+msgctxt ""
+"python_examples.xhp\n"
+"bm_id20191031405\n"
+"help.text"
+msgid "<bookmark_value>Python;examples</bookmark_value> <bookmark_value>Python;shell</bookmark_value> <bookmark_value>Python;platform</bookmark_value> <bookmark_value>Python;session</bookmark_value> <bookmark_value>Python;screen input/output</bookmark_value>"
+msgstr ""
+
+#. 2vmkq
+#: python_examples.xhp
+msgctxt ""
+"python_examples.xhp\n"
+"hd_id201901031407\n"
+"help.text"
+msgid "<variable id=\"pythonexamples2\"><link href=\"text/sbasic/python/python_examples.xhp\" name=\"python examples\">Python programming examples</link></variable>"
+msgstr ""
+
+#. xkeov
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"tit\n"
+"help.text"
+msgid "Creating A Dialog Handler"
+msgstr ""
+
+#. WeSDk
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0664\n"
+"help.text"
+msgid "<bookmark_value>Basic;Dialog Handler</bookmark_value> <bookmark_value>Python;Dialog Handler</bookmark_value> <bookmark_value>Access2Base;dlgTrace</bookmark_value> <bookmark_value>Access2Base;_DumpToFile</bookmark_value> <bookmark_value>API;DialogProvider2</bookmark_value> <bookmark_value>API;XDialogEventHandler</bookmark_value>"
+msgstr ""
+
+#. MQUtw
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0665\n"
+"help.text"
+msgid "<variable id=\"pythonhandler_h1\"><link href=\"text/sbasic/python/python_handler.xhp\" name=\"Creating a Dialog Handler\">Creating a Dialog Handler</link></variable>"
+msgstr ""
+
+#. AxGAd
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0666\n"
+"help.text"
+msgid "Next to <link href=\"text/sbasic/shared/01040000.xhp\" name=\"Assigning macros to events\">assigning macros to events</link> or <link href=\"text/sbasic/basic/python/python_listener\" name=\"creating event listeners\">creating event listeners</link>, one can use dialog handlers, whose principle is to define UNO keywords, or methods, that are mapped to events to watch for. The event handler is responsible for executing methods using the <literal>vnd.sun.star.UNO:<method_name></literal> protocol. Unlike listeners that require to define all supported methods, even if unused, dialog handlers require only two methods on top of intended control hook scripts."
+msgstr ""
+
+#. Waa56
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0667\n"
+"help.text"
+msgid "The advantages of this approach are:"
+msgstr ""
+
+#. bBbcE
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0668\n"
+"help.text"
+msgid "It packs the code that handles event-driven macros,"
+msgstr ""
+
+#. NCGBC
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0669\n"
+"help.text"
+msgid "it decorrelates events from macros names which facilitates maintenance or updates, in particular when moving macros or modules."
+msgstr ""
+
+#. WETAj
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0670\n"
+"help.text"
+msgid "This mechanism is illustrated herewith for Basic and Python languages using an imported copy of <literal>Access2Base</literal> <literal>dlgTrace</literal> dialog. Exception handling and localisation are omitted for clarity."
+msgstr ""
+
+#. qfJEk
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0671\n"
+"help.text"
+msgid "Assigning Dialog methods"
+msgstr ""
+
+#. 46GAC
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0672\n"
+"help.text"
+msgid "Export <literal>Access2Base</literal> <literal>dlgTrace</literal> dialog and import it into <literal>MyLib</literal> application library."
+msgstr ""
+
+#. QKmBa
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0673\n"
+"help.text"
+msgid "Inside the control properties pane of the <link href=\"text/sbasic/guide/create_dialog.xhp\" name=\"Dialog Editor\">Dialog Editor</link>, use the Events tab to replace macro assignments by component assignments, and type in the intended method names:"
+msgstr ""
+
+#. qNEVD
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0674\n"
+"help.text"
+msgid "Set <literal>Dump to file</literal> dialog button component method name to <literal>_dump2File</literal>"
+msgstr ""
+
+#. t65Et
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0675\n"
+"help.text"
+msgid "Optionally define <literal>txtTracelog</literal> key pressed and mouse button pressed events component method names as <literal>_openHelp</literal>"
+msgstr ""
+
+#. WMZBj
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0676\n"
+"help.text"
+msgid "Optionally define <literal>Ok</literal> button receiving focus event component method name as <literal>onOkHasfocus</literal>"
+msgstr ""
+
+#. Joqhs
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0677\n"
+"help.text"
+msgid "Events assigned actions should mention the <literal>vnd.sun.star.UNO:</literal> protocol."
+msgstr ""
+
+#. BTnaF
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0678\n"
+"help.text"
+msgid "Creating the handler"
+msgstr ""
+
+#. nHvEi
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0679\n"
+"help.text"
+msgid "<literal>createDialogWithHandler</literal> method of <link href=\"https://api.libreoffice.org/docs/idl/ref/servicecom_1_1sun_1_1star_1_1awt_1_1DialogProvider2.html\" name=\"com.sun.star.awt.DialogProvider2\">com.sun.star.awt.DialogProvider2</link> service is used to set the dialog and its handler. The handler is responsible for implementing <link href=\"https://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1awt_1_1XDialogEventHandler.html\" name=\"com.sun.star.awt.XDialogEventHandler\">com.sun.star.awt.XDialogEventHandler</link> interface."
+msgstr ""
+
+#. 2CCEz
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0680\n"
+"help.text"
+msgid "All component method names must be explicitly declared when using a dialog handler."
+msgstr ""
+
+#. kBAiZ
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0681\n"
+"help.text"
+msgid "With Python"
+msgstr ""
+
+#. rUiYd
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0682\n"
+"help.text"
+msgid "In this example the dialog is located on the computer."
+msgstr ""
+
+#. FyaBp
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0692\n"
+"help.text"
+msgid "\"\"\" Access2Base Console Handler \"\"\""
+msgstr ""
+
+#. dugqK
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0693\n"
+"help.text"
+msgid "''' adapted from « Créer un dialogue avec gestionnaire d'événements » by JM Zambon"
+msgstr ""
+
+#. 5Cysb
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0716\n"
+"help.text"
+msgid "\"\"\" Create a Dialog from its location \"\"\""
+msgstr ""
+
+#. C9pNa
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0729\n"
+"help.text"
+msgid "''' Ugly MsgBox '''"
+msgstr ""
+
+#. zcjmD
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0740\n"
+"help.text"
+msgid "As expected, <literal>onOkHasFocus</literal> missing method throws an exception."
+msgstr ""
+
+#. 63rxz
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0741\n"
+"help.text"
+msgid "Refer to <link href=\"text/sbasic/python/python_2_basic.xhp\" name=\"Python calls to %PRODUCTNAME Basic\">Python calls to %PRODUCTNAME Basic</link> page for <literal>getBasicScript</literal> routine description and for details about cross-language scripting execution."
+msgstr ""
+
+#. b6xGw
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0742\n"
+"help.text"
+msgid "With %PRODUCTNAME Basic"
+msgstr ""
+
+#. 5N3MV
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0743\n"
+"help.text"
+msgid "In this example the dialog is embedded in a document, and can equally be located on the computer."
+msgstr ""
+
+#. Ahwda
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0751\n"
+"help.text"
+msgid "dp.Initialize(Array(ThisComponent)) ' if doc-embedded dialog"
+msgstr ""
+
+#. Cf88b
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0958c\n"
+"help.text"
+msgid "method As String) As Boolean"
+msgstr ""
+
+#. j4aLN
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0770\n"
+"help.text"
+msgid "'dialog.endDialog(1) if computer-based dialog"
+msgstr ""
+
+#. EBBRf
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0779\n"
+"help.text"
+msgid "' adapted from « Créer un dialogue avec gestionnaire d'événements » by JM Zambon"
+msgstr ""
+
+#. NF93B
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0781\n"
+"help.text"
+msgid "As expected, <literal>onOkHasFocus</literal> missing method throws an exception."
+msgstr ""
+
+#. 4RevF
+#: python_handler.xhp
+msgctxt ""
+"python_handler.xhp\n"
+"N0505\n"
+"help.text"
+msgid "<link href=\"text/sbasic/shared/03132000.xhp\" name=\"CreateUnoListener Function\">CreateUnoListener Function</link>"
+msgstr ""
+
+#. Ur3DA
+#: python_ide.xhp
+msgctxt ""
+"python_ide.xhp\n"
+"tit\n"
+"help.text"
+msgid "IDE for Python"
+msgstr ""
+
+#. ETCU9
+#: python_ide.xhp
+msgctxt ""
+"python_ide.xhp\n"
+"bm_id761543349138561\n"
+"help.text"
+msgid "<bookmark_value>APSO</bookmark_value> <bookmark_value>Alternative Python Scripts Organizer</bookmark_value> <bookmark_value>python;IDE - integrated development environment</bookmark_value> <bookmark_value>python;editor</bookmark_value>"
+msgstr ""
+
+#. cANSA
+#: python_ide.xhp
+msgctxt ""
+"python_ide.xhp\n"
+"hd_id151543348965464\n"
+"help.text"
+msgid "<variable id=\"pythonideh1\"><link href=\"text/sbasic/python/python_ide.xhp\" name=\"Python IDE Setup\">Setting up an Integrated Development Environment (IDE) for Python</link></variable>"
+msgstr ""
+
+#. k7syF
+#: python_ide.xhp
+msgctxt ""
+"python_ide.xhp\n"
+"par_id541543348965465\n"
+"help.text"
+msgid "Writing Python macros requires extra configuration steps to set an IDE of choice."
+msgstr ""
+
+#. NGxNi
+#: python_ide.xhp
+msgctxt ""
+"python_ide.xhp\n"
+"N0106\n"
+"help.text"
+msgid "Unlike Basic language macros development in %PRODUCTNAME, developing Python scripts for %PRODUCTNAME requires to configure an external Integrated Development Environment (IDE). Multiple IDEs are available that range from beginners to advanced Python coders. While using a Python IDE programmers benefit from numerous features such as syntax highlighting, code folding, class browsing, code completion, coding standard enforcement, test driven development, debugging, version control and many more. You can refer to <link href=\"https://wiki.documentfoundation.org/Macros/Python_Design_Guide\" name=\"Designing & Developing Python Applications\">Designing & Developing Python Applications</link> on the Wiki for more in-depth information about the setup of a bridge between your IDE and a running instance %PRODUCTNAME."
+msgstr ""
+
+#. u2xio
+#: python_ide.xhp
+msgctxt ""
+"python_ide.xhp\n"
+"hd_id761544698669786\n"
+"help.text"
+msgid "The APSO Extension"
+msgstr ""
+
+#. 4isF2
+#: python_ide.xhp
+msgctxt ""
+"python_ide.xhp\n"
+"N0104\n"
+"help.text"
+msgid "The <link href=\"https://extensions.libreoffice.org/extensions/apso-alternative-script-organizer-for-python\" name=\"Alternative Python Script Organizer (APSO)\">Alternative Python Script Organizer (APSO)</link> extension eases the edition of Python scripts, in particular when embedded in a document. Using APSO you can configure your preferred source code editor, start the integrated Python shell and debug Python scripts. Extensions exist that help inspect arbitrary UNO objects, refer to <link href=\"https://wiki.documentfoundation.org/Macros/Python_Design_Guide\" name=\"eDesigning & Developing Python Applications\">Designing & Developing Python Applications</link> for additional details on such extensions."
+msgstr ""
+
+#. 5E2EV
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python : Importing Modules"
+msgstr ""
+
+#. gFTth
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0461\n"
+"help.text"
+msgid "<bookmark_value>Python;import</bookmark_value> <bookmark_value>Python;Modules</bookmark_value> <bookmark_value>Python;pythonpath</bookmark_value> <bookmark_value>PythonLibraries</bookmark_value>"
+msgstr ""
+
+#. 5QqdJ
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0462\n"
+"help.text"
+msgid "<variable id=\"pythonimporth1\"><link href=\"text/sbasic/python/python_import.xhp\" name=\"python imports\">Importing Python Modules</link></variable>"
+msgstr ""
+
+#. VHAM5
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0463\n"
+"help.text"
+msgid "%PRODUCTNAME Python scripts come in three distinct flavors, they can be personal, shared or embedded in documents. They are stored in varying places described in <link href=\"text/sbasic/python/python_locations.xhp\">Python Scripts Organization and Location</link>. In order to import Python modules, their locations must be known from Python at run time."
+msgstr ""
+
+#. zMSfx
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0464\n"
+"help.text"
+msgid "This mechanism is illustrated for file system based modules and document based modules. Exception handling is omitted for clarity. The terms library or directory, scripts or modules are used interchangeably. A Python macro refers to a function inside a module."
+msgstr ""
+
+#. GUdHS
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0465\n"
+"help.text"
+msgid "Note that <literal><User Profile>/Scripts/python/pythonpath</literal> local directory is always explored when running a Python macro from <literal><User Profile>/Scripts/python</literal>."
+msgstr ""
+
+#. fyFof
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0466\n"
+"help.text"
+msgid "File System module import"
+msgstr ""
+
+#. SRZgQ
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0467\n"
+"help.text"
+msgid "User or Shared Modules"
+msgstr ""
+
+#. NAJzP
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0468\n"
+"help.text"
+msgid "Personal & shared Python scripts can be imported once their directories are included in Python run time path. Refer to <link href=\"text/sbasic/python/python_session.xhp\">Getting session information</link> page for more details regarding omitted Session Class."
+msgstr ""
+
+#. A4v4U
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0473\n"
+"help.text"
+msgid "user_lib = Session().UserPythonScripts # User scripts location"
+msgstr ""
+
+#. AAJUq
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0475\n"
+"help.text"
+msgid "sys.path.insert(0, user_lib) # Add to search path"
+msgstr ""
+
+#. yFcur
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0476\n"
+"help.text"
+msgid "import screen_io as ui # 'screen_io.py' module resides in user_lib directory"
+msgstr ""
+
+#. 6KtvD
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0477\n"
+"help.text"
+msgid "# Your code follows here"
+msgstr ""
+
+#. G8bHh
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0478\n"
+"help.text"
+msgid "This Python example exposes a local XSCRIPTCONTEXT variable to an imported module:"
+msgstr ""
+
+#. uwiPp
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0483\n"
+"help.text"
+msgid "share_lib = Session.SharedPythonScripts() # Shared scripts location"
+msgstr ""
+
+#. HugAN
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0485\n"
+"help.text"
+msgid "sys.path.insert(0, share_lib) # Add to search path"
+msgstr ""
+
+#. zGybv
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0486\n"
+"help.text"
+msgid "from IDE_utils import ScriptContext # 'IDE_utils.py' sits with shared Python scripts."
+msgstr ""
+
+#. VoPZU
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0488\n"
+"help.text"
+msgid "# Your code follows here"
+msgstr ""
+
+#. AH3MT
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0489\n"
+"help.text"
+msgid "Installation Modules for Applications"
+msgstr ""
+
+#. VFZdV
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0490\n"
+"help.text"
+msgid "Unlike personal and shared scripts, %PRODUCTNAME installation scripts can be imported any time. Next to <literal>uno</literal> & <literal>unohelper</literal> %PRODUCTNAME Python modules, other scripts present in <literal><installation_path>/program</literal> directory can be imported directly, such as the <literal>msgbox</literal> module."
+msgstr ""
+
+#. TnQ2j
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0491\n"
+"help.text"
+msgid "With Python shell:"
+msgstr ""
+
+#. DDinb
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0534\n"
+"help.text"
+msgid "Document Module Import"
+msgstr ""
+
+#. AUzGt
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0535\n"
+"help.text"
+msgid "Importing a Python document embedded module is illustrated below. Error handling is not detailed. Python run time path is updated when document has been opened and before closure. Refer to <link href=\"text/sbasic/shared/01040000.xhp\">Event-Driven Macros</link> to learn how to associate Python macros to document events."
+msgstr ""
+
+#. APbCX
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0541\n"
+"help.text"
+msgid "\"\"\" Prepare Python modules import when doc. loaded \"\"\""
+msgstr ""
+
+#. DJStg
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0542\n"
+"help.text"
+msgid "PythonLibraries.loadLibrary('lib/subdir') # Add directory to search path"
+msgstr ""
+
+#. tPsVb
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0543\n"
+"help.text"
+msgid "PythonLibraries.loadLibrary('my_gui', 'screen_io') # Add dir. & import screen_io"
+msgstr ""
+
+#. KxLAs
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0546\n"
+"help.text"
+msgid "\"\"\" Cleanup PYTHON_PATH when doc. Gets closed \"\"\""
+msgstr ""
+
+#. siAC7
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0547\n"
+"help.text"
+msgid "PythonLibraries.unloadLibrary('my_gui') # Python runtime path cleanup"
+msgstr ""
+
+#. zajf5
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0548\n"
+"help.text"
+msgid "# Note: imported modules remain loaded in this example."
+msgstr ""
+
+#. pKa7R
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0553\n"
+"help.text"
+msgid "\"\"\" Python library loader and module importer"
+msgstr ""
+
+#. ruYCE
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0555\n"
+"help.text"
+msgid "adapted from 'Bibliothèque de fonctions' by Hubert Lambert"
+msgstr ""
+
+#. 8gpRJ
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0556\n"
+"help.text"
+msgid "at https://forum.openoffice.org/fr/forum/viewtopic.php?p=286213 \"\"\""
+msgstr ""
+
+#. T6bdz
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0558\n"
+"help.text"
+msgid "\"\"\" Check run time module list \"\"\""
+msgstr ""
+
+#. EFaRv
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0561\n"
+"help.text"
+msgid "\"\"\" Check PYTHON_PATH content \"\"\""
+msgstr ""
+
+#. fvFq9
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0564\n"
+"help.text"
+msgid "\"\"\" add directory to PYTHON_PATH, import named module \"\"\""
+msgstr ""
+
+#. eCTGx
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0573\n"
+"help.text"
+msgid "\"\"\" remove directory from PYTHON_PATH \"\"\""
+msgstr ""
+
+#. 5xScE
+#: python_import.xhp
+msgctxt ""
+"python_import.xhp\n"
+"N0580\n"
+"help.text"
+msgid "Refer to <link href=\"text/sbasic/python/python_listener.xhp\">Creating a Python Listener</link> for examples of event-driven macros."
+msgstr ""
+
+#. 9BBze
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python Listeners : Creating Event Listeners"
+msgstr ""
+
+#. ouQd3
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0385\n"
+"help.text"
+msgid "<bookmark_value>Python;Event Listener</bookmark_value> <bookmark_value>Python;createUnoListener</bookmark_value> <bookmark_value>Basic;Event Listener</bookmark_value> <bookmark_value>API;ActionEvent</bookmark_value> <bookmark_value>API;DialogProvider</bookmark_value> <bookmark_value>API;EventObject</bookmark_value> <bookmark_value>API;ExecutableDialogResults</bookmark_value> <bookmark_value>API;XActionListener</bookmark_value>"
+msgstr ""
+
+#. Pjc9z
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0386\n"
+"help.text"
+msgid "<variable id=\"pythonlistener\"><link href=\"text/sbasic/python/python_listener.xhp\" name=\"python listeners\">Creating Event Listeners</link></variable>"
+msgstr ""
+
+#. DGgrp
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0387\n"
+"help.text"
+msgid "Events raised by dialogs, documents, forms or graphical controls can be linked to macros, which is referred to as event-driven programming. The most common method to relate events to macros are the <literal>Events</literal> tab in <menuitem>Tools – Customize</menuitem> menu and the <link href=\"text/sbasic/guide/create_dialog.xhp\" name=\"Create dialog\">Dialog Editor</link> Control properties pane from <menuitem>Tools - Macros – Organise Dialogs...</menuitem> menu."
+msgstr ""
+
+#. DmmbY
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0388\n"
+"help.text"
+msgid "Graphical artifacts, keyboard inputs, mouse moves and other man/machine interactions can be controlled using UNO listeners that watch for the user’s behaviour. Listeners are dynamic program code alternatives to macro assignments. One may create as many UNO listeners as events to watch for. A single listener can also handle multiple user interface controls."
+msgstr ""
+
+#. UVzsE
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0389\n"
+"help.text"
+msgid "Creating an event listener"
+msgstr ""
+
+#. knF23
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0390\n"
+"help.text"
+msgid "Listeners get attached to controls held in dialogs, as well as to document or form events. Listeners are also used when creating runtime dialogs or when adding controls to a dialog on the fly."
+msgstr ""
+
+#. DwE8A
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0391\n"
+"help.text"
+msgid "This example creates a listener for <literal>Button1</literal> control of <literal>Dialog1</literal> dialog in <literal>Standard</literal> library."
+msgstr ""
+
+#. Wsp8E
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0392\n"
+"help.text"
+msgid "With Python"
+msgstr ""
+
+#. pPjfw
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0405\n"
+"help.text"
+msgid "_MY_LABEL = 'Python listens..'"
+msgstr ""
+
+#. UJrnb
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0417\n"
+"help.text"
+msgid "MsgBox(\"The user acknowledged the dialog.\")"
+msgstr ""
+
+#. XVRK7
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0419\n"
+"help.text"
+msgid "MsgBox(\"The user canceled the dialog.\")"
+msgstr ""
+
+#. FUuHB
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0424\n"
+"help.text"
+msgid "\"\"\" Create a Dialog from its location \"\"\""
+msgstr ""
+
+#. NeZcJ
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0437\n"
+"help.text"
+msgid "\"\"\" Listen to & count button clicks \"\"\""
+msgstr ""
+
+#. WK4DA
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0448\n"
+"help.text"
+msgid "def disposing(self, evt: EventObject): # mandatory routine"
+msgstr ""
+
+#. 9mtTR
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0457\n"
+"help.text"
+msgid "<emph>msgbox.py</emph> in <emph>{installation}/program/</emph> directory has some examples of button listeners."
+msgstr ""
+
+#. MgUyV
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0458\n"
+"help.text"
+msgid "With %PRODUCTNAME Basic"
+msgstr ""
+
+#. CCUMV
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0459d\n"
+"help.text"
+msgid "Const MY_LABEL = \"Basic listens..\""
+msgstr ""
+
+#. eJe7e
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0478\n"
+"help.text"
+msgid "Case rc.OK : MsgBox \"The user acknowledged the dialog.\",, \"Basic\""
+msgstr ""
+
+#. KVrqd
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0479\n"
+"help.text"
+msgid "Case rc.CANCEL : MsgBox \"The user canceled the dialog.\",, \"Basic\""
+msgstr ""
+
+#. 9AeGf
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0486\n"
+"help.text"
+msgid "''' Listen to & count button clicks '''"
+msgstr ""
+
+#. 5Arxo
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0496\n"
+"help.text"
+msgid "' your code goes here"
+msgstr ""
+
+#. AQA8b
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0498\n"
+"help.text"
+msgid "Other Event Listeners"
+msgstr ""
+
+#. HsXBE
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0499\n"
+"help.text"
+msgid "Listeners are usually coded along with <link href=\"text/sbasic/python/python_dialogs.xhp\" name=\"dialog opening\">dialog opening</link>. Numerous listener approaches are possible such as event handlers for dialogs or event monitors for documents or forms."
+msgstr ""
+
+#. Xyv2b
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0505\n"
+"help.text"
+msgid "<link href=\"text/sbasic/shared/03132000.xhp\" name=\"CreateUnoListener Function\">CreateUnoListener Function</link>"
+msgstr ""
+
+#. zKQhy
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0506\n"
+"help.text"
+msgid "<link href=\"text/swriter/01/05060700.xhp\" name=\"Events mapping to objects\">Events mapping to objects</link>"
+msgstr ""
+
+#. Xbxfm
+#: python_listener.xhp
+msgctxt ""
+"python_listener.xhp\n"
+"N0509\n"
+"help.text"
+msgid "See also <link href=\"text/sbasic/shared/01040000.xhp\" name=\"Document events\">Document events</link>, <link href=\"text/shared/02/01170202.xhp\" name=\"Form events\">Form events</link>."
+msgstr ""
+
+#. GC8Ny
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python Scripts Organization"
+msgstr ""
+
+#. KKGnc
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id391543358231021\n"
+"help.text"
+msgid "<variable id=\"pythonlocations1\"><link href=\"text/sbasic/python/python_locations.xhp\" name=\"command_name\">Python Scripts Organization and Location</link></variable>"
+msgstr ""
+
+#. sG2Rn
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id771543358231022\n"
+"help.text"
+msgid "The Python script files are stored in the filesystem, in folders controlled by %PRODUCTNAME. The macros can be started at installation, user or file level."
+msgstr ""
+
+#. iEtmS
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id911544049584458\n"
+"help.text"
+msgid "Python Script Locations"
+msgstr ""
+
+#. cmghv
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id121551089455774\n"
+"help.text"
+msgid "Refer to <link href=\"text/sbasic/python/python_session.xhp\" name=\"Getting Session Information\">Getting Session Information</link> in order to get programmatic access to Python script locations."
+msgstr ""
+
+#. QGXPA
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id591544049572647\n"
+"help.text"
+msgid "%PRODUCTNAME Macros container"
+msgstr ""
+
+#. xBzRT
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id261544049064421\n"
+"help.text"
+msgid "Existing macros in this location (container) were copied by the installation program and are available to every computer user, and any open document can access macros stored the container. You need administrative rights to store or edit macros here."
+msgstr ""
+
+#. M8CGu
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id861544210028670\n"
+"help.text"
+msgid "The %PRODUCTNAME Macros container location in the file system depends on the operating system:"
+msgstr ""
+
+#. GMBSF
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id191544210072242\n"
+"help.text"
+msgid "For <emph>Windows</emph>: <literal>{Installation}\\share\\Scripts\\python</literal>."
+msgstr ""
+
+#. DV8TD
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id61544210078654\n"
+"help.text"
+msgid "For <emph>Linux</emph> and <emph>macOS</emph>: <literal>{Installation}/share/Scripts/python</literal>."
+msgstr ""
+
+#. 5sHwj
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id861544049692222\n"
+"help.text"
+msgid "My Macros"
+msgstr ""
+
+#. aiMzD
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id981544049055996\n"
+"help.text"
+msgid "This container is accessible only by the %PRODUCTNAME user. Any open document can access macros stored the container. Macros in this location are stored in the %PRODUCTNAME user profile."
+msgstr ""
+
+#. wUjx4
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id341544210187846\n"
+"help.text"
+msgid "The My Macros container location is in the user space and depends on the operating system:"
+msgstr ""
+
+#. mhNtD
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id381544210213190\n"
+"help.text"
+msgid "For <emph>Windows</emph>,<br/><literal>%APPDATA%\\LibreOffice\\4\\user\\Scripts\\python</literal>."
+msgstr ""
+
+#. fQYPE
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id691544210219850\n"
+"help.text"
+msgid "For <emph>Linux</emph> and <emph>macOS</emph>,<br/><literal>$HOME/.config/libreoffice/4/user/Scripts/python</literal>."
+msgstr ""
+
+#. CSJC9
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id101544049707712\n"
+"help.text"
+msgid "Document macros"
+msgstr ""
+
+#. FBmoB
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id31544049046497\n"
+"help.text"
+msgid "Document macros are embedded in the document and are accessible only when the document is open."
+msgstr ""
+
+#. qbVc9
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id171544049715310\n"
+"help.text"
+msgid "Libraries, Modules and Macros"
+msgstr ""
+
+#. KnZCV
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id181544209916707\n"
+"help.text"
+msgid "Like BASIC macros, Python macros can be organized in libraries, modules and macros."
+msgstr ""
+
+#. LoK2E
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id21544209865082\n"
+"help.text"
+msgid "Creating a Python Library"
+msgstr ""
+
+#. R2uCF
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id191544209928221\n"
+"help.text"
+msgid "Libraries are folders in the container tree. To create a library, add a folder in the target container. The library name is the folder name."
+msgstr ""
+
+#. hFS3L
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id31544209872869\n"
+"help.text"
+msgid "Creating a Python Module."
+msgstr ""
+
+#. djeua
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id161544209936743\n"
+"help.text"
+msgid "A module is a python file in the library or the container. Create a module adding a file in the container."
+msgstr ""
+
+#. Paoju
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"hd_id151544209895574\n"
+"help.text"
+msgid "Python macros"
+msgstr ""
+
+#. CBeyB
+#: python_locations.xhp
+msgctxt ""
+"python_locations.xhp\n"
+"par_id61544209944591\n"
+"help.text"
+msgid "A macro is a python object in the module."
+msgstr ""
+
+#. Zcfxg
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python : Platform class"
+msgstr ""
+
+#. jnNvg
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0508\n"
+"help.text"
+msgid "<bookmark_value>Platform;isLinux</bookmark_value> <bookmark_value>Platform;isMacOsX</bookmark_value> <bookmark_value>Platform;isWindows</bookmark_value> <bookmark_value>Platform;ComputerName</bookmark_value> <bookmark_value>Platform;OSName</bookmark_value> <bookmark_value>API;ConfigurationAccess</bookmark_value> <bookmark_value>Tools;GetRegistryContent</bookmark_value>"
+msgstr ""
+
+#. uMBGn
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0509\n"
+"help.text"
+msgid "<variable id=\"pythonplatform\"><link href=\"text/sbasic/python/python_platform.xhp\" name=\"platform01\">Identifying the operating system</link></variable>"
+msgstr ""
+
+#. vqduy
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0510\n"
+"help.text"
+msgid "Identifying the operating system can be performed with Python or Basic language."
+msgstr ""
+
+#. gZrHC
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0511\n"
+"help.text"
+msgid "ComputerName property is solely available for Windows. Basic calls to Python macros help overcome %PRODUCTNAME Basic limitations."
+msgstr ""
+
+#. sV6Fp
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0512\n"
+"help.text"
+msgid "Using a Python class:"
+msgstr ""
+
+#. ikwcW
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0529\n"
+"help.text"
+msgid "Using a Basic classmodule:"
+msgstr ""
+
+#. 7BpCv
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"NO529b\n"
+"help.text"
+msgid "%PRODUCTNAME Basic lacks MacOS X native recognition. Platform identification is possible using %PRODUCTNAME Application Programming Interface (API)."
+msgstr ""
+
+#. tTyE5
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0451\n"
+"help.text"
+msgid "' Return platform name as \"MAC\", \"UNIX\", \"WIN\""
+msgstr ""
+
+#. AwTGx
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0551\n"
+"help.text"
+msgid "' Inferred from \"Tools.UCB.ShowHelperDialog\" function"
+msgstr ""
+
+#. jtA2N
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0564\n"
+"help.text"
+msgid "Examples:"
+msgstr ""
+
+#. riK2q
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0565\n"
+"help.text"
+msgid "With Python"
+msgstr ""
+
+#. FELjZ
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0567\n"
+"help.text"
+msgid "<literal>>>> print(Platform().isMacOSX) # object property</literal>"
+msgstr ""
+
+#. dAWDs
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0569\n"
+"help.text"
+msgid "<literal>>>> input(Platform().OSName) # object property</literal>"
+msgstr ""
+
+#. MkpG4
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0571\n"
+"help.text"
+msgid "From <menuitem>Tools – Macros - Run Macro...</menuitem> menu."
+msgstr ""
+
+#. Qk6MM
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0576\n"
+"help.text"
+msgid "With %PRODUCTNAME Basic"
+msgstr ""
+
+#. Jkyqd
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0578\n"
+"help.text"
+msgid "Dim p As New Platform ' instance of Platform class"
+msgstr ""
+
+#. HWYHg
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0579\n"
+"help.text"
+msgid "MsgBox p.isLinux ' object property"
+msgstr ""
+
+#. 9FGEv
+#: python_platform.xhp
+msgctxt ""
+"python_platform.xhp\n"
+"N0580\n"
+"help.text"
+msgid "Print p.isWindows, p.OSName ' object properties"
+msgstr ""
+
+#. ej5WE
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python : Programming with Python"
+msgstr ""
+
+#. bG2BP
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0218\n"
+"help.text"
+msgid "<bookmark_value>Python;Programming</bookmark_value> <bookmark_value>XSCRIPTCONTEXT;Python</bookmark_value> <bookmark_value>uno.py</bookmark_value>"
+msgstr ""
+
+#. CU6JS
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"hd_id691546462755220\n"
+"help.text"
+msgid "<variable id=\"pythonprogrammingheading\"><link href=\"text/sbasic/python/python_programming.xhp\" name=\"python programming\">Programming with Python Scripts</link></variable>"
+msgstr ""
+
+#. BjiFe
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0220\n"
+"help.text"
+msgid "A Python macro is a function within a .py file, identified as a module. Unlike %PRODUCTNAME Basic and its dozen of <link href=\"text/sbasic/shared/uno_objects.xhp\" name=\"UNO objects functions or services\">UNO objects functions or services</link>, Python macros use the <literal>XSCRIPTCONTEXT</literal> UNO single object, shared with JavaScript and BeanShell. The <literal>g_exportedScripts</literal> global tuple explicitly lists selectable macros from a module. Python modules hold autonomous code logic, and are independent from one another."
+msgstr ""
+
+#. 8Ri8m
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0221\n"
+"help.text"
+msgid "XSCRIPTCONTEXT Global Variable"
+msgstr ""
+
+#. xnRGE
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0222\n"
+"help.text"
+msgid "Genuine Basic UNO facilities can be inferred from <literal>XSCRIPTCONTEXT</literal> global variable. Refer to %PRODUCTNAME API for a complete <link href=\"https://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1script_1_1provider_1_1XScriptContext.html\" name=\"description of XSCRIPTCONTEXT\">description of XSCRIPTCONTEXT</link>. <literal>XSCRIPTCONTEXT</literal> methods summarize as:"
+msgstr ""
+
+#. U6KbS
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0224\n"
+"help.text"
+msgid "Methods"
+msgstr ""
+
+#. skMQF
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0225\n"
+"help.text"
+msgid "Description"
+msgstr ""
+
+#. onsBW
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0226\n"
+"help.text"
+msgid "Mapped in Basic as"
+msgstr ""
+
+#. 54Nun
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0228\n"
+"help.text"
+msgid "The document reference on which the script can operate."
+msgstr ""
+
+#. CR7pv
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0231\n"
+"help.text"
+msgid "The desktop reference on which the script can operate."
+msgstr ""
+
+#. rAVfx
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0234\n"
+"help.text"
+msgid "The component context which the script can use to create other uno components."
+msgstr ""
+
+#. 5wUcN
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0237\n"
+"help.text"
+msgid "<emph>HelloWorld</emph> and <emph>Capitalise</emph> installation shared scripts illustrate UNO-related macros making use of <literal>XSCRIPTCONTEXT</literal> global variable."
+msgstr ""
+
+#. RQgKR
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0238\n"
+"help.text"
+msgid "Python standard output file is not available when running Python macros from <menuitem>Tools - Macros - Run Macro</menuitem> menu. Refer to <emph>Input/Output to Screen</emph> for more information."
+msgstr ""
+
+#. WuGCs
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0239\n"
+"help.text"
+msgid "Module import"
+msgstr ""
+
+#. tBVP2
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0240\n"
+"help.text"
+msgid "<literal>XSCRIPTCONTEXT</literal> is not provided to imported modules."
+msgstr ""
+
+#. dURCV
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0241\n"
+"help.text"
+msgid "%PRODUCTNAME Basic libraries contain classes, routines and variables, Python modules contain classes, functions and variables. Common pieces of reusable Python or UNO features must be stored in <link href=\"text/sbasic/python/python_locations.xhp\" name=\"My macros\">My macros</link> within <literal>(User Profile)/Scripts/python/pythonpath</literal>. Python libraries help organize modules in order to prevent module name collisions. Import <literal>uno.py</literal> inside shared modules."
+msgstr ""
+
+#. a2xVe
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0242\n"
+"help.text"
+msgid "Genuine BASIC UNO facilities can be inferred using <literal>uno.py</literal> module. Use <link href=\"text/sbasic/python/python_shell.xhp\" name=\"Python interactive shell\">Python interactive shell</link> to get a complete module description using <literal>dir()</literal> and <literal>help()</literal> Python commands."
+msgstr ""
+
+#. Gi6iz
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0244\n"
+"help.text"
+msgid "Functions"
+msgstr ""
+
+#. jFADb
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0245\n"
+"help.text"
+msgid "Description"
+msgstr ""
+
+#. 6wDQn
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0246\n"
+"help.text"
+msgid "Mapped in Basic as"
+msgstr ""
+
+#. 7prVF
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0248\n"
+"help.text"
+msgid "Returns an absolute file url from the given urls."
+msgstr ""
+
+#. PE7AD
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0251\n"
+"help.text"
+msgid "Creates a UNO struct or exception given by typeName."
+msgstr ""
+
+#. FNPMc
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0254\n"
+"help.text"
+msgid "Returns a system path."
+msgstr ""
+
+#. sFbd9
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0257\n"
+"help.text"
+msgid "Returns the class of a concrete UNO exception, struct, or interface."
+msgstr ""
+
+#. qAbMv
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0260\n"
+"help.text"
+msgid "Returns the UNO component context used to initialize the Python runtime."
+msgstr ""
+
+#. WQBzo
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0264\n"
+"help.text"
+msgid "Looks up the value of an IDL constant by giving its explicit name."
+msgstr ""
+
+#. VD2pr
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0265\n"
+"help.text"
+msgid "See API constant groups"
+msgstr ""
+
+#. RMBST
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0267\n"
+"help.text"
+msgid "Returns True, when obj is a class of a UNO interface."
+msgstr ""
+
+#. B84WF
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0270\n"
+"help.text"
+msgid "Returns a file URL for the given system path."
+msgstr ""
+
+#. GEMGY
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0272\n"
+"help.text"
+msgid "<emph>LibreLogo</emph> and <emph>TableSample</emph> installation shared scripts use <literal>uno.py</literal> module."
+msgstr ""
+
+#. 9NieC
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0273\n"
+"help.text"
+msgid "More Python-Basic samples"
+msgstr ""
+
+#. 6Yct5
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0275\n"
+"help.text"
+msgid "Python UNO"
+msgstr ""
+
+#. 8GvqG
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0276\n"
+"help.text"
+msgid "Basic UNO features"
+msgstr ""
+
+#. 8EWYh
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0284\n"
+"help.text"
+msgid "See <link href=\"text/sbasic/python/python_dialogs.xhp\" name=\"Opening a Dialog\">Opening a Dialog</link>"
+msgstr ""
+
+#. F2cFF
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0286\n"
+"help.text"
+msgid "See <link href=\"text/sbasic/python/python_listener.xhp\" name=\"Creating a Listener\">Creating a Listener</link>"
+msgstr ""
+
+#. LNUaK
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0288\n"
+"help.text"
+msgid "See UNO data types"
+msgstr ""
+
+#. 4vWGa
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0297\n"
+"help.text"
+msgid "Importing an embedded Module"
+msgstr ""
+
+#. SGVBE
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0298\n"
+"help.text"
+msgid "Similarly to %PRODUCTNAME Basic that supports browsing and dynamic loading of libraries, Python libraries can be explored and imported on demand. For more information on library containers, visit <link href=\"https://api.libreoffice.org/\" name=\"API Documentation site\">%PRODUCTNAME Application Programming Interface</link> (API) or download <link href=\"https://www.libreoffice.org/download/download/\" name=\"SDK download page\">%PRODUCTNAME Software Development Kit</link> (SDK)."
+msgstr ""
+
+#. VtFrH
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0299\n"
+"help.text"
+msgid "Importing a Python document embedded module is illustrated below, exception handling is not detailed:"
+msgstr ""
+
+#. P2R2D
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0303\n"
+"help.text"
+msgid "\"\"\" load library and import module"
+msgstr ""
+
+#. oBnkG
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0305\n"
+"help.text"
+msgid "Adapted from 'Bibliothèque de fonctions' by Hubert Lambert"
+msgstr ""
+
+#. FFxTV
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0306\n"
+"help.text"
+msgid "at https://forum.openoffice.org/fr/forum/viewtopic.php?p=286213\"\"\""
+msgstr ""
+
+#. A2Zvp
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0307\n"
+"help.text"
+msgid "doc = XSCRIPTCONTEXT.getDocument() # current document"
+msgstr ""
+
+#. qqpCF
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0310\n"
+"help.text"
+msgid "if not url in sys.path: # add path if necessary"
+msgstr ""
+
+#. HWoLC
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0311\n"
+"help.text"
+msgid "sys.path.insert(0, url) # doclib takes precedence"
+msgstr ""
+
+#. wBdYA
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0312\n"
+"help.text"
+msgid "if module_name: # import if requested"
+msgstr ""
+
+#. B9zJW
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0316\n"
+"help.text"
+msgid "ui = load_library(\"my_gui\",'screen_io') # add <lib> path + import <module>"
+msgstr ""
+
+#. HFcCm
+#: python_programming.xhp
+msgctxt ""
+"python_programming.xhp\n"
+"N0321\n"
+"help.text"
+msgid "<link href=\"text/sbasic/shared/uno_objects.xhp\" name=\"UNO objects page\">Basic UNO Objects, Functions and Services</link>"
+msgstr ""
+
+#. zRBRa
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python : Screen Input/Output"
+msgstr ""
+
+#. tMEMB
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0433\n"
+"help.text"
+msgid "<bookmark_value>Python;InputBox</bookmark_value> <bookmark_value>Python;MsgBox</bookmark_value> <bookmark_value>Python;Print</bookmark_value> <bookmark_value>API;script.provider.MasterScriptProvider: Screen Input/Output</bookmark_value> <bookmark_value>API;script.provider.XScript: Screen Input/Output</bookmark_value>"
+msgstr ""
+
+#. fovpz
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0434\n"
+"help.text"
+msgid "<variable id=\"ioscreen\"><link href=\"text/sbasic/python/python_screen.xhp\" name=\"IO to screen\">Input/Output to Screen</link></variable>"
+msgstr ""
+
+#. qCLEs
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0435\n"
+"help.text"
+msgid "Python standard output file is not available when running Python macros from <menuitem>Tools – Macros - Run Macro</menuitem>... menu. Presenting the output of a module requires the Python interactive console. Features such as <literal>input()</literal>, <literal>print()</literal>, <literal>repr()</literal> and <literal>str()</literal> are available from the Python shell."
+msgstr ""
+
+#. NHHFB
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0436\n"
+"help.text"
+msgid "The <link href=\"https://extensions.libreoffice.org/extensions/apso-alternative-script-organizer-for-python\" name=\"apso\">Alternative Python Script Organizer</link> (APSO) extension offers a msgbox() function out of its <literal>apso_utils</literal> module."
+msgstr ""
+
+#. aPSDz
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0437\n"
+"help.text"
+msgid "%PRODUCTNAME Basic proposes <literal>InputBox()</literal>, <literal>Msgbox()</literal> and <literal>Print()</literal> screen I/O functions. Python alternatives exist relying either on %PRODUCTNAME API Abstract Windowing Toolkit, either on Python to Basic function calls. The latter proposes a syntax that is intentionally close to that of Basic, and uses a Python module next to a Basic module. The API Scripting Framework is used to perform Basic, BeanShell, JavaScript and Python inter-languages function calls."
+msgstr ""
+
+#. hat4k
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0438\n"
+"help.text"
+msgid "Python syntax:"
+msgstr ""
+
+#. QypFq
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0442\n"
+"help.text"
+msgid "Examples:"
+msgstr ""
+
+#. DbZVx
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0449\n"
+"help.text"
+msgid "Installation:"
+msgstr ""
+
+#. QDrDk
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0450\n"
+"help.text"
+msgid "Copy <literal>screen_io</literal> Python module in <link href=\"text/sbasic/python/python_locations.xhp\" name=\"User macros\">My macros</link> within <UserProfile>/Scripts/python/pythonpath,"
+msgstr ""
+
+#. bckjW
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0451\n"
+"help.text"
+msgid "Copy <literal>uiScripts</literal> Basic module in <link href=\"text/sbasic/python/python_locations.xhp\" name=\"User macros\">My macros</link> Standard Basic library,"
+msgstr ""
+
+#. XAthB
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0452\n"
+"help.text"
+msgid "Restart %PRODUCTNAME."
+msgstr ""
+
+#. jGGGZ
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0453\n"
+"help.text"
+msgid "<literal>screen_io</literal> Python module"
+msgstr ""
+
+#. EB2zZ
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0467\n"
+"help.text"
+msgid "\"\"\" Displays a dialog box containing a message and returns a value.\"\"\""
+msgstr ""
+
+#. nUtxt
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0473\n"
+"help.text"
+msgid "\"\"\" Displays a prompt in a dialog box at which the user can enter text.\"\"\""
+msgstr ""
+
+#. MFz5D
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0479\n"
+"help.text"
+msgid "\"\"\"Outputs the specified strings or numeric expressions in a dialog box.\"\"\""
+msgstr ""
+
+#. EYqxJ
+#: python_screen.xhp
+msgctxt ""
+"python_screen.xhp\n"
+"N0492\n"
+"help.text"
+msgid "<literal>uiScripts</literal> Basic module"
+msgstr ""
+
+#. CGnPe
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python_Session : Session class"
+msgstr ""
+
+#. vkS8P
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0339\n"
+"help.text"
+msgid "<bookmark_value>Session;UserName</bookmark_value> <bookmark_value>Session;SharedScripts</bookmark_value> <bookmark_value>Session;SharedPythonScripts</bookmark_value> <bookmark_value>Session;UserProfile</bookmark_value> <bookmark_value>Session;UserScripts</bookmark_value> <bookmark_value>Session;UserPythonScripts</bookmark_value> <bookmark_value>API;PathSubstitution</bookmark_value>"
+msgstr ""
+
+#. EvmoA
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0340\n"
+"help.text"
+msgid "<variable id=\"pythonsession\"><link href=\"text/sbasic/python/python_session.xhp\" name=\"session01\">Getting Session Information</link></variable>"
+msgstr ""
+
+#. nmTjF
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0341\n"
+"help.text"
+msgid "Computing %PRODUCTNAME user profile and shared modules system file paths can be performed with Python or with Basic languages. BeanShell, Java, JavaScript and Python scripts locations can be derived from this information."
+msgstr ""
+
+#. gMnyC
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0343\n"
+"help.text"
+msgid "Examples:"
+msgstr ""
+
+#. m498C
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0344\n"
+"help.text"
+msgid "With Python shell."
+msgstr ""
+
+#. yziJv
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0346\n"
+"help.text"
+msgid "<literal>>>> print(Session.SharedPythonScripts()) # static method</literal>"
+msgstr ""
+
+#. ezhbr
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0347\n"
+"help.text"
+msgid "<literal>>>> print(Session().UserName) # object property</literal>"
+msgstr ""
+
+#. K4Cjj
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0348\n"
+"help.text"
+msgid "<literal>>>> input(Session().UserProfile) # object property</literal>"
+msgstr ""
+
+#. CVdoK
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0349\n"
+"help.text"
+msgid "From <menuitem>Tools – Macros - Run Macro</menuitem>... menu."
+msgstr ""
+
+#. k47pk
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0354\n"
+"help.text"
+msgid "ui.MsgBox(Session.Share(),title='Installation Share') # static method"
+msgstr ""
+
+#. mFu9h
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0355\n"
+"help.text"
+msgid "ui.Print(Session.SharedPythonScripts()) # static method"
+msgstr ""
+
+#. osmNG
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0356\n"
+"help.text"
+msgid "s = Session() # instance creation"
+msgstr ""
+
+#. Gqz8J
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0357\n"
+"help.text"
+msgid "ui.MsgBox(s.UserName,title='Hello') # object property"
+msgstr ""
+
+#. 8c4GN
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0358\n"
+"help.text"
+msgid "ui.Print(s.UserPythonScripts) # object property"
+msgstr ""
+
+#. GAffb
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0360\n"
+"help.text"
+msgid "g_exportedScripts = (demo_session,) # public macros"
+msgstr ""
+
+#. GfLEb
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0361\n"
+"help.text"
+msgid "With %PRODUCTNAME Basic."
+msgstr ""
+
+#. CJAPH
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0364\n"
+"help.text"
+msgid "Print \"Shared scripts location:\", s.SharedScripts"
+msgstr ""
+
+#. nKgLS
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0365\n"
+"help.text"
+msgid "MsgBox s.UserName,,\"Hello\""
+msgstr ""
+
+#. Dvp2n
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0368\n"
+"help.text"
+msgid "Using COM/OLE and Visual Basic Scripting language."
+msgstr ""
+
+#. u2czW
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0369\n"
+"help.text"
+msgid "' The service manager is always the entry point"
+msgstr ""
+
+#. BiCRF
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0370\n"
+"help.text"
+msgid "' If there is no office running then an office is started up"
+msgstr ""
+
+#. mepxA
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0372\n"
+"help.text"
+msgid "' PathSubstitution service exhibits information to infer"
+msgstr ""
+
+#. njK5P
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0373\n"
+"help.text"
+msgid "' <UserProfile|Share>/Scripts/python locations from"
+msgstr ""
+
+#. XPAGf
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0381\n"
+"help.text"
+msgid "Python Session class:"
+msgstr ""
+
+#. ePFtK
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0401\n"
+"help.text"
+msgid "@property # alternative to '$(username)' variable"
+msgstr ""
+
+#. CBvZv
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0342\n"
+"help.text"
+msgid "Unlike Basic, pathname normalization is performed with Python inside Session class."
+msgstr ""
+
+#. 8zUvW
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0412\n"
+"help.text"
+msgid "%PRODUCTNAME Basic Session class:"
+msgstr ""
+
+#. ivAG6
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0417\n"
+"help.text"
+msgid "Private _ps As Object ' Private member"
+msgstr ""
+
+#. Q9sNs
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0422\n"
+"help.text"
+msgid "End Sub ' Constructor"
+msgstr ""
+
+#. ELSQJ
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0426\n"
+"help.text"
+msgid "End Sub ' Destructor"
+msgstr ""
+
+#. 7neVV
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0439\n"
+"help.text"
+msgid "Public Property Get UserName() As String ' User account name"
+msgstr ""
+
+#. NsDBi
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0443\n"
+"help.text"
+msgid "Public Property Get UserProfile() As String ' User profile system path"
+msgstr ""
+
+#. do2CY
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0447\n"
+"help.text"
+msgid "Public Property Get UserScripts() As String ' User scripts system path"
+msgstr ""
+
+#. Gg3yg
+#: python_session.xhp
+msgctxt ""
+"python_session.xhp\n"
+"N0451\n"
+"help.text"
+msgid "Public Property Get UserPythonScripts() As String ' User Python scripts system path"
+msgstr ""
+
+#. DRC4A
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"tit\n"
+"help.text"
+msgid "Python Interactive Shell"
+msgstr ""
+
+#. LUGZ7
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"N0117\n"
+"help.text"
+msgid "<bookmark_value>Python console</bookmark_value> <bookmark_value>Python Interactive Shell</bookmark_value>"
+msgstr ""
+
+#. PmoqF
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"N0118\n"
+"help.text"
+msgid "<variable id=\"pythonshell1\"><link href=\"text/sbasic/python/python_shell.xhp\" name=\"python shell\">Running Python Interactive Console</link></variable>"
+msgstr ""
+
+#. Met9b
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"N0119\n"
+"help.text"
+msgid "The Python interactive console, also known as Python interpreter or Python shell, provides programmers with a quick way to execute commands and try out and test code without creating a file. UNO objects introspection as well as %PRODUCTNAME Python modules documentation can be obtained from the terminal."
+msgstr ""
+
+#. MZodx
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"N0121\n"
+"help.text"
+msgid "Using a Basic macro:"
+msgstr ""
+
+#. vXGF7
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"N0127\n"
+"help.text"
+msgid "Using a Python macro:"
+msgstr ""
+
+#. oBg3T
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"N0141\n"
+"help.text"
+msgid "Usage:"
+msgstr ""
+
+#. EzwwC
+#: python_shell.xhp
+msgctxt ""
+"python_shell.xhp\n"
+"N0142\n"
+"help.text"
+msgid "<image src=\"media/helpimg/python/python_shell.png\" id=\"N0143\"><alt id=\"N0144\">Python Interactive Console</alt></image>"
+msgstr ""