Skip to content

Releases: fesch/Structorizer.Desktop

Version 3.32-22 (2024-05-15)

16 May 15:06
fb49fe5
Compare
Choose a tag to compare

Bugfix

  • #1166 Certain Java version strings with hyphen after the major number, like "23-ea", caused version detection failure and thus inhibited Structorizer start.

Code revisions

  • Two GUI classes were renamed;
    • gui/ExportOptionDialoge → guit/ExportOptionDialog (requiring an adapation of individual locale files),
    • locales/Tab → locales/TranslatorTab;
  • Inheritance modification of loop Element classes For, While, Repeat, Forever (no external impact).

Version 3.32-21 (2024-04-19)

19 Apr 08:25
16bb227
Compare
Choose a tag to compare

Bugfixes

  • #1157 EOF handling on code import improved (comment preserved);
  • #1159 Java import
    1. import of labelled break instructions hadn't always worked,
    2. class comment attachment ensured,
    3. import of non-trivial switch instructions had significant flaws;
  • #1160 Drawing of rotated elements (in CASE structures) mended;
  • #1161 More consistent reachability check in Analyser ensured;
  • #1162 Analyser markers will turn white on red or blue elements;
  • #1163 C99 import of non-trivial switch instructions improved (in analogy to #1159.3);
  • #1164 ANSI-C99 grammar had rejected certain expressions in case clauses.

Version 3.32-20 (2024-04-10)

10 Apr 12:53
3e0b28c
Compare
Choose a tag to compare

Bugfixes

  • #1128 revised (record component retrieval gave up too early now):
  • #1136 revised ("instanceof" detected between angular brackets to deny cast context);
  • #1148 Code export of IF ELSE IF chains optimized for Pascal and Python, too, now;
  • #1154 Modified hatching for CALL elements being diverted for the presentation of method signatures (Java / Delphi import) or labels (COBOL import);
  • #1155 Stack overflow risk on Pascal export / code preview;
  • #1156 Defective export of typed constants to Perl and PHP code, thereby introducing a new Perl-specific export option (pragma use constant);
  • #1157 Code import used to fail if the source file ended with a line comment. More verbose explanation of code import errors because of trailing comments (code error.group_runaway).

Version 3.32-19 (2024-03-21)

21 Mar 11:29
09f6920
Compare
Choose a tag to compare

Bugfixes

  • #1136 revised: ? generally accepted now as type parameter on Java import.
  • #1146: IF THEN ELSIF chain export to Oberon now stable w.r.t. disabled involved alternatives.
  • #1148: Special formatting of IF ELSE IF chains on export to C, C++, C#, Java, Javascript, modern BASIC, Perl, PHP (in analogy to Oberon #1146).
  • #1149: Selection in Code Preview missed to update buttons.
  • #1150: Java import failed on class declarations with type parameters.
  • #1151: Java and C import failed with tab characters in string literals.
  • #1152: Pascal import had failed completely in version 3.32-18 (due to a defective adaptation of #1141 for Pascal).

Version 3.32-18 (2024-03-19)

19 Mar 07:15
34beb4c
Compare
Choose a tag to compare

Enhancements

  • #1084 Pascal import toughened up for ObjectPascal/Delphi sources (first approach).

Bugfixes

  • #901 FilesDrop was lacking to set the WAITING cursor.
  • #1135 Two Java import bugs - unicode escape sequences in string literals and identifiers str, binary, hex, unbinary, and unhex caused failure.
  • #1136 Four Java import problems due to angular brackets of type arguments (nested parameterized types, casting, <?>, <> parameters, and arrays over parameterized types).
  • #1137 Workaround for Java import errors due to the occurrence of .this in the code.
  • #1138 Arranger collision warnings could become a nuisance on large imports or loading giant arrangement files with a lot of signature collisions.
  • #1139 TRY elements without catch variable caused defects in various contexts.
  • #1140 Transmutation didn't work for CALLs with method syntax (i.e. qualified names).
  • #1141 Stack overflow risk during build phase of code import.
  • #1142 Java import failed on assert statements.
  • #1143 Java import grammar always demanded modifiers before enum.
  • #1145 Java import used to crash when source files contain two or more classes / interfaces / enumerators on top level.
  • #1146: Wrong/awkward Oberon export of Alternatives

Documentation

  • HowTo file for the addition of code import parsers (src/lu/fisch/structorizer/parsers/howto.txt) revised and extended.

Version 3.32-17 (2024-03-11)

11 Mar 07:02
95d4e6a
Compare
Choose a tag to compare

Bugfixes

  • Menu mnemonics for the PT_BR locale rectified.
  • #1128 Risk of getting stuck on record component retrieval (in Analyser or Input assist) eliminated.
  • #1129 Analyser warning popup didn't open with too many error entries.
  • #1130 C import expanded macros within char literals.
  • #1131 Anonymous inner classes were not dissected into diagrams on Java import.
  • #1132 Java import used to fail if backslashes occurred at the end of string literals (wrong escape sequence handling).

Version 3.32-16 (2024-02-28)

28 Feb 16:05
fc93d6c
Compare
Choose a tag to compare

Locale updates

  • #1126: Spanish and Italian messages for View menu were missing, the attempt to open Translator led to an error abort, therefore.
  • Completion and corrections of the Portuguese/Brazilian locale (thanks to Theldo Cruz F.)

Bugfixes

  • #1121 Type-specific Scanner methods on Java export of INPUT.
  • #1122 Defective export of INPUT instructions to Javascript.
  • #1123 Proper export of random(...) to C, C++, C#, Java, and Js.
  • #1125 Diagram comparison in Arranger didn't distinguish disabled state of elements.

Version 3.32-15 (2023-12-20)

20 Dec 11:27
2276c96
Compare
Choose a tag to compare

GUI modifications

  • #311: Menu items "copy PNG image" and "copy EMF image" moved from menu "Edit" to menu "Diagram", preference category "Diagram" renamed to "View" (according to menu changes as of 3.32-14).

Enhancements

  • #1114: Caret positioning on first '?' in text for new elements;
  • #1115: New C99 import option to convert #defines into consts in order to preserve symbolic names.
  • #1117: The changelog page on the "About" window now provides active HTML links for the issue numbers.

Bugfixes

  • #1116: C99 import failed on array typedefs with named ranges;
  • #1118: The comment of empty Instructions wasn't exported to C, C++, C#, Java, etc.;
  • #1119: An empty editor text will no longer produce an element with a single empty line but with no lines.

Version 3.32-14 (2023-11-08)

08 Nov 14:58
537df01
Compare
Choose a tag to compare

Bugfixes

  • Error messages for string comparison conversion in Executor now show more precise context.
  • #1108: C import may fail in case of nested comments.
  • #1109: Code generation for throw (rethrow) was defective (several languages).
  • #1110: Math.* function call conversion failed on Java/Processing import.
  • #1112: Analyser no longer complains about missing initialisation and missing components on java.lang. and java.util. method calls

Version 3.32-13 (2023-10-31)

31 Oct 11:27
9c348cc
Compare
Choose a tag to compare

Enhancements / modifications

  • #311 Menu reorganised (mere representation stuff from menu "Diagram" moved to new menu "View")
  • #980 Multi-variable declarations supported on
    • export to C, C++, Java, C#, Javascript;
    • export to Python, PHP;
    • Executor;
  • Syntax check for declarations added to Analyser
  • Many translations (using webtran.de) added to Luxemburgish locale.

Bugfixes

  • #1093 Code export had unduly inserted "return 0" instructions at the end of main programs in some progarmming languages.
  • #1094 C99 batch import failed with an index range error.
  • #1096 Several problems with type definitions and variable declarations (esp. C/Java style) in Analyser and code generation solved (also see #980).
  • #1098 Javascript export didn't transform array and record initializer expressions recursively.
  • #1099: PHP export of constants was defective, on export to C, C++, Java etc. the repositioning of constant calls was wrong.
  • #1100: Precaution against insufficient Java RE on start (installation assistant and launcher for Windows also improved).
  • #1102: Obsolete start hint translations removed from locales, defective log record configuration fixed.