LibreOffice DRAW - Flowcharting automation with scripting language

- mrmister001 at gmail.com
Mon Nov 25 15:51:55 PST 2013


We are submitting an idea / proposal to the LibreOffice developer's 
list, regarding a feature we think it could be important and never was 
developed before. We wrote an email to info at documentfoundation.org and 
they suggest us to post a message in the LibreOffice Developer's List 
and also the Design Mailing List.

In our university we are working a lot with technical documents about 
physics and maths. Recently we had an idea that we consider it could 
improve dramatically the Draw performance, allowing it to automate the 
flowcharting process.

We describe the idea as follows:

*Flowcharting automation process in Draw (creating flowcharts 
automatically, without effort) Scripting language*

This is a new feature never developed in the software industry. This 
idea help extensively to academic professionals, researches and companies.

*THE PROBLEM:* When you want to create a flowchart, basically you have 
to spend time drawing boxes, and connecting them. That happen when you 
are planning your flowchart, but many times people don't have time. They 
need a "magic solution" that create the flowchart automatically. This 
idea allows you to create flow chart automatically in seconds.

*HOW THE FLOWCHARTING AUTOMATION PROCESS WORKS:*
It works with a simple language of tags. I wouldn't call it language, 
I'd say it is a very easy script.

*SIMPLE LANGUAGE OF TAGS*

To explain how this works, the best thing is to show an example.

Let's imagine we want to connect theories in math. Differential 
geometry, is related to many things in maths. Okay, let's imagine I want 
to create a flow chart showing all the stuff in which differential 
geometry have a relationship. What should I do? Open Draw, creating the 
boxes, applying the format... generating the connection
Okay... what about if we do the same with a simple language? extremely 
easy to understand, in which you don't need to know anything about 
programming.

*[HEAD BEGIN: geometry: Rectangle, color: blue, rotation: 0, radious: 0, 
angle: 0, connector: normal, geometry-thickness: 2pt, 
connector-thickness: 2pt, shadow orientation:right-down, shadow color: 
grey, font-type-size: Calibri, 2pt, font-alignment: center, center]*

    // This lines is the commentaries line, if you read the head [ ], it
    connect the text "Differential geometry" creating boxes of blue
    color, the boxes are rectangles, they have 0 rotatio, 0 radious, 0
    angle, the connector of the boxes is normal, the thickness of the
    boxes is 2 points, the the thickness of the connector is also 2
    points, shawdow orientation of the boxes is right down, the shadow
    color is grey and the font type is Calibri, size is 2 point, and it
    is aligned at the center horizontally and also to the center
    vertically //

    Differential geometry >  differential calculus
    Differential geometry >  integral calculus
    Differential geometry >  linear algebra
    Differential geometry >  multilinear algebra


*[:HEAD END]*

With that simple code, you only have to type te head to define the 
properties, place all the stuff you want to connect... and then [HEAD END:].
You save that in a TXT file, and you're done! Open that file in Draw, 
and Draw will create that flowchart in seconds !!!
Basically you only define the properties in the head, then you put all 
the stuff you want to connect, and it is connected.

Let's analyze another piece of code.

*[HEAD BEGIN: begin, geometry: Rectangle, color: blue, rotation: 0, 
radious: 0, angle: 0, connector: normal, geometry-thickness: 2pt, 
connector-thickness: 2pt, shadow orientation:right-down, shadow color: 
grey, font-type-size: Calibri, 2pt, font-alignment: center, center]*

    Differential geometry >  differential calculus > integral calculus >
    Differential geometry


*[:HEAD END]*

Okay, that connect differential geometry WITH differential calculus WITH 
integral calculus WITH Differential geometry.

So basically you can connect a box with a new box, or also, with an 
already existing box.

In the head you define the properties [ ] and then you define the head's 
end [HEAD END:]

And that is all. You can set up geometry, properties, color, etc. etc. etc.

You place all the text you want to connect with >

And... everything is connected, represented and flowcharted in seconds !!!

Without this simple scripting language, you have to spend hours drawing 
boxes and doing it all.
Having a simple TXT file with the stuff you want to connect, allows you 
to edit it in Writer, add things, remove things, and do stuff, then you 
save it, load it in Draw and bingo! here you have the full flowchart in 
seconds.

Imagine how easy would be to organize members in a list. It would be a 
question of seconds generating flowcharts.

We can do something so simple, that even wouldn't be necessary control 
structures as FOR, WHILE, DO, REPEAT etc.

*EASY TO UNDERSTAND, AND EASY TO USE. That is the idea behind this.*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20131126/f8a20330/attachment.html>


More information about the LibreOffice mailing list