Date: prev next · Thread: first prev next last
2018 Archives by date, by thread · List index


Hi,

Le 31/01/2018 à 21:48, Heiko Tietze a écrit :
[...]
GSoC

  * Full list of ideas https://pad.documentfoundation.org/p/UX-GSoC_Ideas
  * Public list https://wiki.documentfoundation.org/Development/GSoC/Ideas#User_Interface

Here are some suggestions based on my recent experience in teaching LibreOffice and writing a python macro :



Impress : work on "papercut" bugs
----------------------------------


1 - Animations sets for a text box with several paragraphs don't affect new paragraphs (not inherited)
https://bugs.documentfoundation.org/show_bug.cgi?id=57581

This is the most annoying problem that new users face :
  - they create a slide with few lines of text,
  - they add an animation on the text, to make it appear line by line
  - they test : it works correctly
  - they add one line of text (inside or at the end)
  - they test and boom... the animation is "broken"
  - they make a pause, then... close impress and open powerpoint...



2 - Editing: Text spacing changes when click in textbox
https://bugs.documentfoundation.org/show_bug.cgi?id=89060

It is a subtle but very annoying visual effect.






Python macros
----------------


I had to create a macro embedded in a file.
As I had not written basic for a long time, I tried to write it in python.

The fist problem is that on Ubuntu, it is necessary to install a specific package 'libreoffice-script-provider-python'


The second problem is that, by default, there is no tool to integrate a python macro in a document.
I found the APSO extension [1] that allows that and is very useful.

I found some difficult points in writing python macro with that extension :
- after modifying a python script, you have to close and re-open the odf file
  - some inline documentation is missing : about API, and some sample code
- the context (available via XSCRIPTCONTEXT) is missing some API, compared to basic





So here are my suggestions for GSoC :
- allow an easy activation of python support : a simple button would download and install all necessary packages - integrate the functionality of APSO (to allow embedding/managing python script in odf file) - remove the need to re-open the odf file before using a new version of python script



Other points can be done directly in the current extension :
  - add some inline documentation about API [2]
  - add inline documentation on both ways to use python script :
    - an external script that connects to LibreOffice
    - an internal script that get called by menu/button
- allow to create scripts empty or with comments (that provide minimum documentation and good practice) - add a library of sample code (a list of "how-to ?"), that can be easily copied in script files


Adding API to the context (available via XSCRIPTCONTEXT) can be done by working on LibreOffice code :
/usr/lib/libreoffice/program/pythonscript/py






Cheers,

Michel






[1] https://extensions.libreoffice.org/extensions/apso-alternative-script-organizer-for-python

[2] based on very useful page https://wiki.openoffice.org/wiki/Python/Transfer_from_Basic_to_Python

--
To unsubscribe e-mail to: design+unsubscribe@global.libreoffice.org
Problems? https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/global/design/
All messages sent to this list will be publicly archived and cannot be deleted

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.