Main About Download Schemes Documentation Resources

Revision History

Version 2.18.4 (November 30, 2018)

  • In the Color Scheme Editor, the "all" dropper button can now be used with the preview image. When the image is clicked, the text, border, and fill will be set to shades of the clicked pixel.
  • Improved the line numbering in the Source Code Viewer.
  • Some minor changes were made to the internal scaling logic. The application will now work better on scaled desktops.
  • Fixed an odd bug that occurred on the 64-bit version of the application. The bug caused the Chart Style dropdown to malfunction.

Version 2.18.3 (November 20, 2018)

  • Updated the Paint (Dark) color scheme.
  • Improved the indentation in the Source Code Viewer.
  • Increased the size of the color scheme/chart style preview image. A preview of the Declare Shape was also added (which is what justified the increase in size).
  • Fixed several built-in program templates. In particular, C# and Visual Basic .NET. Special thanks to Dr. Petr Vanecek for reporting this.
  • Fixed a very minor bug when changing color schemes. If a custom scheme is created, the Console Window wouldn't update its colors. Reopening the window fixed it.

Version 2.18.2 (November 11, 2018)

  • Error messages, caused by a function, were improved. The system now properly identifies the cause.
  • Spacing in the Variable Watch Window was improved.
  • Fixed a cosmetic bug in the Source Code Viewer. The icon for "Aligned" was not being set correctly.
  • Various minor cosmetic tweaks to the Source Code Viewer.

Version 2.18.1 (November 7, 2018)

  • The Chart Style Editor and Color Scheme Editors were improved. Beforehand, any time a color scheme or chart style was *simply* opened, the system would treat it being a custom design. Now, the system will only treat as customized if there were, in fact, changes.
  • Made some minor revisions to the built-in color themes.
  • Made some a minor change to the Korean Translation. In particular, the translation of "Undo" and "Redo" was updated.
  • Fixed a few mistakes in the Gaddis and SDL chart styles.

Version 2.18.0 (November 8, 2018)

  • Customizable Chart Styles were added. You can now use the Chart Style Editor to create change the shapes used in the flowchart. This will allow you to create any style (within some limits) of flowchart you need. Currently, 21 shapes are supported, but additional ones may be added in the future.
  • The application is now "DPI-aware". This means that the window will "scale" on larger displays if Windows using a scaling factor. Often this is 125% or 150%. The user can also change the current scaling factor from the Tools Menu > Scale. Before this change, Windows would simply stretch the application on larger displays - making it become a tad blurry.
  • The layout of the Color Scheme Editor was revamped. The current scheme is displayed on the left which includes the preview and the meta fields (name, author, about). The right-hand side includes all the editing options. This layout matches the layout of the new Chart Style Editor.
  • Browse buttons were added to the Export Bitmap, Export Vector, Print, and Choose Chart Style windows. This buttons allow you to open a customized Chart Style File.
  • The Variable Watch Window now follows the current color theme. The current page's border, text, and background color are used. The color of the variable headers are hard coded to their current values.
  • Language dropdown in the Source Code Viewer is a tad bigger.
  • Several of the built-in color schemes were updated slightly. For example, in the Pastel color scheme, the "executing" color was change to be a tad more blue (it is still green - just a better hue).
  • Bug fixes:
    • The Source Code Viewer was generating incorrect Python code for string concatenation (in some cases). The flags, used by the template, were not being set properly. Special thanks to Dave Braunschweig for reporting this.
    • The application would crash if an function (with a return type) was declared and then used before saving. Special thanks to Robert Platt & Dave Braunschweig for reporting this.
    • If a runtime error ocurred, the shape was not being highlighted in red. Special thanks to Jose Mogrovejo Cardenas for reporting this.
    • The Source Code Viewer had a bug in generated Gaddis Pseudocode. Special thanks to Jaime Fernando Meza Meza for reporting this.
    • The Source Code Viewer had numerous mistakes in C# generated code. Special thanks to Paul Shaddick for reporting this.

Version 2.17.1 (August 4, 2018)

  • Bug fix: The Source Code Viewer was incorrectly using the syntax for addition for the modulus operator. Special thanks to T. Cruz for reporting this.
  • Added the Layout Windows button to the Console Window.
  • The Console Window buttons were also rearranged slightly.

Version 2.17 (July 31, 2018)

  • Bug fix: The Do Shape was not being properly exported with either bitmap file or vector file. The shape wasn't being aligned properly in some cases.
  • The Export Vector tool was improved slightly. The file type (EMF or SVG) can be selected from the dialog window rather than on the second tab. The second tab was also eliminated as it was no longer needed.
  • The Change Language menu entry can be activated by pressing F12 rather than the convoluted Control+Alt+T. It was also moved to the top of the menu.
  • The tooltip for the current translation, in the bottom right of the main window, was changed. It now uses the same text as the Change Language menu item.

Version 2.16 (July 24, 2018) - Major Release

  • Flowchart improvements:
    • If Shapes are now more compact. The true and false branches are now aligned with the center of If Shape (with some padding). Before, both branches were aligned to the side of the If Shape. This new version will take up less screen space.
    • While and For Shapes, like If, are now more compact. The loop branches now align to the right of the center of the header shape.
    • The width of text in If Shapes was increased. Beforehand, the text wrapped at a much smaller width. This became problematic for complex conditional expressions.
    • Function headers will now wrap text. Beforehand, it displayed all parameters on one line.
  • Variable Watch Window:
    • Variable values will now be retain when the program finishes. Beforehand, any time the program finished, the variable window was cleared.
    • By default size of the Variable Watch Window was changed. When opened, it will take 20% of the screen's width and 100% of the screen's height. It will also be right-aligned on the screen.
  • Source Code Viewer:
    • Added a dropdown icon next to the current language name.
    • The icon used for Visual Basic .NET, used in the Source Code Viewer, was changed.
  • New installer!
  • When a new function is added, and it returns a value, the system automatically adds the return variables declaration.
  • The Layout Windows utility was modified slightly. The "Variables" layout will set the Variable Window at 20% of the screen's width. The flowchart will be set to 80%.
  • When stepping through the program, the system will now only highlight the function's footer (rather than both the header and footer). This change was designed to emphasize the "return". The Source Code Viewer still highlights both the start and end of the function.
  • Added a button to the Console Window that opens the Variable Watch Window.
  • The default size of windows was increased slightly.
  • The Function Manager window was increased in size.
  • When the application is first executed, it will check if the current language, used by Windows, is English. If not, it will prompt the user for a language selection. This prompt will also appear if the application is first loaded in Administrative Mode regardless of language.
  • Bug fixes:
    • Program Templates were not setting the type-type flags properly. This causes the Source Code Viewer's generated programs to sometimes by incorrect. This affected C, Java, C#.
    • Layout Windows now works on a second screen. Beforehand, the windows were resizing on the main screen (and with incorrect sizes).
    • When a new program is created, the system was not clearing the Console Window.
    • Also, when a new program is created, the system wasn't stopping the current one from executing.
    • The dropdown language menu wasn't always aligning correctly on right-to-left translations (e.g. Arabic, Farsi).
    • In the Source Code Viewer, the line separating the Language and Line Style (if present) wasn't always showing.
    • If the current translation is changed, the Source Code Viewer was resetting to the Registry value rather than keeping the current settings.

Version 2.15.2 (June 15, 2018)

  • Color Schemes can be dragged and dropped on the Choose Chart Style window. This window was also increased in size, slightly.
  • The various translations were updated to report an "Invalid File" rather than an "Invalid Program File" when an invalid file is dragged and dropped. The original translation dates back to when Flowgorithm only used one file type: fpgt. Now, it also uses color schemes and program templates.
  • Added some internal exception-handling code. The code handles situations when links fail to open correctly.

Version 2.15.1 (June 13, 2018)

  • Fixed a bug in Visual Basic .NET generated code. The Input Statement was calling the wrong function. Special thanks to Jon Bek.
  • The icon used to represent Visual Basic .NET in the Source Code Viewer was updated.
  • Several program templates were updated. The templates were incorrectly indicating that the Aligned/Hanging option was available.

Version 2.15.0 (May 29, 2018)

  • Program Templates were added! Templates are simple text files that the Source Code Viewer can use to generate code for any pseudocode and/or programming language. This means that Flowgorithm is not limited to the programming languages currently supported. Please see the documentation for more information.
  • Bug fixes:
    • Fixed a bug when occurred of Flowgorithm was closed while running. In this case, it was possible for the runtime engine to get stuck in an infinite loop and the application hangs (without a GUI). Special thanks to Daniel Ivan Escobar.
    • Fixed a bug in Visual Basic .NET generated code. The Source Code Viewer was ending a Module definition with an End Class rather than End Module. There were also some mistakes with generated functions. Special thanks to Jon Bek.
    • Fixed a bug in Python Generated Code. The Source Code Viewer was displaying {1) rather than the correct operand for concatenation. This was a careless typo. Special thanks to Dave Braunschweig.

Version 2.14.1 (April 1, 2018)

  • The Italian Translation was updated - special thanks to Roberto Atzori.
  • The Gaddis Chart Style was updated. The application was displaying the text "Function" at the top of each flowchart - which was a mistake.
  •  Auto Pseudocode was updated. For If Statements, with an false branch, the pseudocode no longer contains the "True" label line.

Version 2.14 (March 30, 2018)

  • Added Undo and Redo. The new feature will allow users to undo and redo changes to the flowchart.
  • New pop-up menu was added to the main window. The new menu is displayed when the background of the flowchart is right-clicked. It contains "Choose Program Style...", "Program Attributes..." as well as Undo and Redo (if available).
  • PowerShell generated code was improved. In particular, how text is used with Write-Host was syntactically simplified.
  • The icon used to represent Gaddis Pseudocode in the Source Code Viewer was changed. The update was designed to reflect the release of the 5th edition of his popular book: Starting Out With Programming Logic. The fruit on the front of the book changed from an apple to a plum.
  • Updated the logic that forces the Console Window to the top of other windows. Now, it will only be forced to the top if either #1 the window was first opened or #2 the user clicks "Run" at full speed. 
  • Added the Run, Step, Pause, and Stop buttons to the Source Code Viewer.

Version 2.13 (March 8, 2018)

  • Added support for Romanian - special thanks to Vlăduț Ilie.
  • Fixed a bug in Visual Basic .NET generated code. Call Statements weren't putting parenthesis around the arguments.

Version 2.12.2 (March 6, 2018)

  • The Source Code Viewer now remembers if you selected line numbers. This setting is saved so that, the next time the application is opened, it will retain its value.
  • The Function Manager now checks an function, on the list, after a single click.
  • Bug fixes:
    • Pascal generated code was improved. The generated code was in inserting a semicolon after every statement rather than just between them. In Pascal, the semicolon is a statement separator rather than a delimited. Some compilers allow it to be used as a delimiter, but not all. The generated code was also using StrToFloat rather than FloatToStr for concatenation. Special thanks to Dr. Richard Lui for his help.
    • In the Source Code Viewer, VBA (Visual Basic for Applications) was displaying the aligned/hanging option even though it doesn't apply.
    • IBO Pseudocode and Gaddis Pseudocode were not displaying the "end". This was careless mistake.

Version 2.12.1 (February 28, 2018)

  • Updated the title bar on the main window. Now, the system will display the name of the file, a dash, and then "Flowgorithm". This is consistent with how most applications use the title bar. The version, which used to be displayed as part of the title bar, now is displayed in the footer when the application first loads.
  • Made some cosmetic changes to the About Window.
  • Fixed a bug in the Edit Function Window. If the user tabs to the Return Type dropdown, the system wasn't enabling the Variable Name field. Special thanks to Nathan Todd.
  • Fixed a bug in the VBA (Visual Basic for Applications) generated code. I had failed to as the "As" clause to functions. Thanks to Nic Lightfoot for letting me know.

Version 2.12 (February 21, 2018)

  • Added support for Malay - special thanks to Husnil Khatimi Hussin.
  • The Italian Translation was updated - special thanks to Roberto Atzori.
  • When an error occurs, the window will now highlight the shape before displaying the error window.
  • Source Code Viewer:
    • Added "Auto Pseudocode". This pseudocode is generated by using the current translation. This means that, for example, if Flowgorithm is in Spanish, it will produce Spanish pseudocode. This is the case for all other languages: Korean, Farsi, Arabic, Italian, etc...
    • Added Smalltalk. Invented by Alan Kay, Smalltalk created the concept of Object Oriented Programming.
    • Added PowerShell. This is a scripting language, created by Microsoft, that combines concepts of Smalltalk, Perl, and .NET.
    • Incomplete shapes are were improved. When a shape is incomplete, empty fields will now contain the field's name. Each name is read from the current translation. So, for example, if the current translation is Spanish, then the incomplete fields will contain Spanish names.
    • The line numbers are now right aligned
    • VBA generated code was improved. Special thanks to Nic Lightfoot.
    • When source code is saved, the system will only used UTF-8 if a Unicode (non-ASCII) character is present. Otherwise, it will default to ASCII.
    • Greatly improved the generated code for: C#, Lua, Pascal, Perl, and Visual Basic .NET.
    • The last language used is now saved in the Registry.
  • Bug fix: If a number is used with the Len() function, the system was incorrectly specifying it needed a "number" rather than "string". Thanks to Roberto Atzori for finding this.

Version 2.11.1 (January 25, 2018)

  • The shape captions used in the Default (Descriptive) chart style are a bit more descriptive.
  • Source Code Viewer:
    • Some of the language names were translated better. In particular, the word "pseudocode".
    • The mouse scroll wheel wasn't working on the Source Code Viewer.
    • QBasic code, in the Source Code Viewer, left off the '#' for generated functions - such as ToFixed.
    • Some of the languages, in the language dropdown menu, weren't being translated properly.

Version 2.11 (January 15, 2018)

  • The Slovenian translation was updated - Thanks to Gregor Anželj
  • Source Code Viewer:
    • TypeScript was added.
    • Scala was added.
    • The window GUI was revamped! Each programming language is now represented using a unique graphical icon. The icon is used on the main toolbar and new dropdown menu. The "Aligned/Handing Brace" dropdown was also replaced with a graphical version. It will only be displayed when it is relevant (rather than just being disabled).
    • JavaScript code was improved. The generated code for Random last lacking the "Math." prefix and always used parenthesis.
    • The scrollbar behavior was improved. It is now disabled if not needed.
  • The Change Chart Style toolbar icon was updated (yet again).
  • The Clipboard popup menu now aligns to the left on right-to-left languages such as Arabic and Farsi.
  • The Comment Shape's maximum width size (before word wrapping) was increased slightly.
  • The "Pastel" color scheme was updated slightly - in particular, the shade of gray used for comments.
  • Program Attributes window
    • It now shows the date that the file was last saved. This is not an editable, but useful, field.
    • Pressing F4 from the main window, will now open the Program Attributes window.
  • Bug fixes:
    • Fixed a minor bug in the Color Scheme Editor. When an image file was opened, it remained locked (can't be moved, deleted, etc...) until the editor was closed.
    • Opening the Function Manager no longer marks the program as "changed".

Version 2.10 (November 22, 2017)

  • The Function Manager was improved. The new version allows entire functions to be copied. cut, and pasted.
  • Color Scheme Editor can now be opened with Control-E
  • Fixed a bug in the Color Scheme Editor. The effects the "dropper" tool. If a transparent area of a shape is clicked, the color would be incorrect. 
  • Fixed some minor tab-order issues.

Version 2.9.2 (November 9, 2017)

  • The Save-As feature, in both the Main Window and the Color Scheme Editor, works far better now. It will show the current name as a default.
  • Updated the Retro Computer color scheme.
  • Restored textboxes, that are used for expressions, to left-to-right for all cultures.

Version 2.9.1 (November 4, 2017)

  • Fixed a bug that effected in Right-To-Left languages.

Version 2.9 (November 3, 2017)

  • Added support for Korean - special thanks to Inkee Jeong.
  • New error message. When a function is used in an expression, it must have a return value. The new error message properly explains, to the user, what happened. Beforehand, the error was being handled by Type Mismatch. This wasn't particularly helpful.
  • Output Shapes were improved. Output can now include or exclude the newline character. This will give better control over output - and allow the "ASCII art" commonly used in beginning programming.
  • Color schemes were improved. The colors of the Comment Shape can now be customized. Beforehand, it used the same colors as the page.
  • A few built-in color schemes were modified.
  • Bug fix: When an error occurs, the system will show the shape that cause the error. Unfortunately, the system failed to do this if the error occurred in a different function (than the one being displayed)
  • Updated the About Window. The new version of the About Window was designed to maximum screen real estate. The old version was becoming far too large.
  • Minor updates to the Error Dialog and Message Dialog windows.
  • Minor GUI tweaks.

Version 2.8 (October 7, 2017)

  • Added support for Dutch - special thanks to Ralf Djojomoenawi & Sander Dol.
  • If a function is incomplete (missing its return variable), it will now display in gray.
  • The comment shape was updated. The left-side connecting line will always use the color of the rest of the lines. The idea is to prevent it from "vanishing" if the current scheme's Selection border color is the same as the background color. In addition, the preview image no longer displays the left-side connecting line.
  • Fixed a bug that occurred when a function, that doesn't return a value, is used in an expression. While the error message produced now isn't the best, it is far better than before.

Additional Information