S T R U C T O R I Z E R

GNU General Public License



Read here ...
News
19.09.2021  

The new comprehensive release 3.32 now came with the long-announced change to require the Java 11 version to run (3.31-04 was the last version satisfied with Java 8).
This also means that the Java WebStart installation opportunity does not work any longer - not at least directly. You might possibly try to adopt a workaround like the OpenWebStart if you want to adhere to it - JNLP files will continue to be provided from the Structorizer homepage. See the Downloads page for more details.

The most recent functional improvement is that you may display the Analyser warnings related to an element in a popup now, simply by having the mouse hover over the little red triangle in its corner.

(Further improvements are still on the To Do list, please stay tuned.)

see comments on this news
09.06.2021  
Version 3.31-04 now offers substantially extended export opportunities to LaTeX - in addition to the StrukTeX diagram conversion Structorizer now also produces LaTeX pseudocode translations to four different packages:
  • algorithmicx
  • algorithmic (aka "algorithms")
  • algorithm2e
  • pseudocode
Enjoy it!
see comments on this news
01.03.2021  
The new release 3.31 is on the brink. It enhances Structorizer by two new source code parsers: Some tweaks were necessary to reflect several OOP aspects of the import languages in a more or less sensible way (though not executible within Structorizer). As usual, you will also get several bugfixes as free supplement.
see comments on this news
19.02.2021  

We plan to upgrade the Structorizer code to at least Java 11 by mid 2021 and give up Java 8 compatibility. The coming Structorizer versions will remind you.
This means, however, that direct support of Java WebStart will also end. With e.g. OpenWebStart there are alternatives, though, but you will have to care fo their installation yourself if you want to adhere to the JNLP paradigm (the JNLP package will still be provided on the Structorizer homepage as far as possible). Windows users may better use the installable App for Windows, anyway.

For discussion, you are invited to issue #944 on GitHub.

see comments on this news
12.02.2021  
Version 3.30-16 is dedicated to substantial usability improvements around CASE elements and the localization tool Translator:
  • The new CASE element editor was functionally enhanced and equipped with a lot of intelligence
  • In Translator, the options to reload prepared or modified translation files were made more obvious and sensible. (We hope of course that some of our Structorizer fans out there - you? - will help keeping the localizations up to date. Sent-in translation updates will be very much appreciated.)
Some more or less related bugfixes round the version up. Have fun!
see comments on this news
05.02.2021  
Great news: Version 3.30-15 further improved Structorizer!
  • A new input mask for CASE elements helps to maintain case/branch consistency.
  • A literal Infinity and the symbol ∞ may now be used in expressions to model infinite values.
  • Now you can also summon referenced Includable diagrams into a child editor from the including diagram head.
  • For the text and comment fields in the element editor there is now an undo/redo mechanism (depth 100 undoable edits)...
  • ... and so is in the popup translation line editor in Translator
  • Empty finally blocks in TRY elements are now hidden by default

Among the bugfixes the perhaps most important one is that variables with qualified access paths are now fully supported as "lvalues", i.e. on the left-hand side of an assignment or as target of an input instruction.

Moreover, on selecting a flawed element now the report list automatically scrolls the first related Analyser warning into view.

Enjoy it (and keep well)!

see comments on this news
18.01.2021  
What are the most important changes in version 3.30-14 delivered today?
  • Now there are two ways to step-test CALL elements on debugging: you may either step over them (new!) or step into the called subroutine diagram (as before but with a different button).
  • Elements, the text of which Analyser found fault with, are now flagged with a little red triangle (hints of a tutorial tour are marked with little blue triangles) – the flagging may be switched off via a new checkbox in the Analyser Preferences.
  • When modes "Switch text/comments", "Show comments?", and "Highlight variables?" are all active then the popped up element texts will show syntax highlighting.
  • The effect of the individual arrangement group visibility checkbox (eye) was modified: If you switch off the visibility of a group now, not only the group bounds won't be drawn anymore but the drawing of the member diagrams in Arranger will also be suppressed.
Furthermore, as usual, several bugs were fixed.
see comments on this news
16.12.2020  
Version 3.30-12 got ready!
The major functional benefit is a GUI extension for the Turtleizer module:
  • full scrolling and zooming functionality
  • status bar (current positions, drawing extents, zoom factor)
  • popup menu with many useful functions, e.g. content export to file
  • several key bindings for easy access
Then there are of course several bugfixes and minor changes integrated.
see comments on this news
23.04.2020  
Version 3.30-08 is available. It contains numerous bugfixes and the new functions introduced with version 3.30-07:
  • Group export (a selected arrangement group may be exported, i.e. as a library, even if the contained diagrams are not associated via calls)
  • Diagram or group export as flowchart compatible with PapDesigner v2.2.0.8.05-beta, which is now available
  • A new choice list in the diagram editor facilitates the maintenance of the include list
  • New import and export options
see comments on this news
06.10.2019  

Release 3.30 is ready and brings two major new features:

  1. Instant code preview: Whenever you modify your diagram, you may see the consequences to the generated code in the language of your choice immediately! And on clicking into the code pane the responsible element for the hit line will be selected (and vice versa).
  2. A Javascript generator was added (still just a prototype, but ...).

Then of course several bugs were fixed, some really tricky ones among them. And we dared to drop the deprecated ANSI-C73 parser, the ANSI-C99 parser has done better in any case.

Enjoy it!

Please log in first to post a comment.
05.08.2019  
Version 3.29-12 came with some innovations:
  • A true Windows installer for download. It installs Structorizer for either all users or just the current user. It provides an update mechanism with three modes: automatic; requiring user/administrator consent; disabled. (The mode is asked for on installation and can be altered via "Modify".)
  • The possibility of selective preferences export to file. Such a partial ini file may be used to preset the contained options for all users on start, if placed in the installation directory.
  • Several bugfixes (see changelog).
see comments on this news
24.03.2019  
Version 3.29-07 eventually introduced TRY elements as its major functional enhancement. They allow to model a basic exception handling, providing both catch and finally mechanism, albeit in a somewhat simplistic way. This is still an experimental feature beyond DIN 66261 but reflects capabilities of many modern programming languages. By now, only strings can be thrown and caught in the effect.
see comments on this news
14.03.2019  
Version 3.29-06 added support for routine diagrams with optional parameters. As in languages like C++ or Python, arguments are made optional by associating them with a default value in the parameter list in the diagram header. See the user guide for details.
see comments on this news
18.01.2019  
Release 3.29 and its "service pack" 3.29-01 brought a substantial functional upgrade for the Arranger and Arranger Index components:
  • Diagrams may now be organized in named groups.
  • Groups are automatically created when
    • an arrangement file is loaded,
    • an arrangement is saved as file,
    • source code is imported.
  • Outsourced subroutines join automatically all groups their parent diagram belongs to.
  • All other diagrams pushed to Arranger join a default group.
  • Groups can be visualized graphically and may improve the project overview dramatically.
  • Groups may be used for
    • collective operations,
    • completeness and dependency analysis,
    • maintenance of stored arrangements.
  • Users may easily
    • create groups from selection,
    • move or share diagrams among groups,
    • expand groups by referenced diagrams,
    • dissolve groups,
    • geometrically rearrange diagrams by groups.
In addition, many bugs and inconveniences were fixed.
see comments on this news