[ANN]: v1.4 of 4D v13 Code Analysis component Improves

I have updated the 4Dv13 Code Analysis component to address a fewoutstanding bug and added some enhancements. The bulk of theenhancements are enhancing how the preferences are stored and movingthe component to better support code management. This version is nowusing more platform friendly end-of-line characters so that sourcecode control systems will recognize each line. I have added a quicklauncher floating palette that makes it much easier for you to quicklyexport any method changes to disk.

WHAT IS IT==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D===3D==3D==3D==3D==3D==3D==3D=Code Analysis is easy to use and offers the following features:- Can perform analysis on "all" stored methods in the structureincluding project methods, project form/object methods, tableform/object methods, database methods and trigger methods.- Gathers stats on line counts, comment line counts, blank linecounts, code line counts, and cyclomatic complexity.- Can export, as disk files, every method in the structure. Can beused for archiving, backups, and source code management.- Can export, as JSON files, every available form and form objectproperty in the structure. Can be used for archiving, backups, andsource code management.- Can export, as JSON files, every available table and field propertyin the structure. Can be used for archiving, backups, and source codemanagement.- Can create HTML documentation of the methods in the structure. TheHTML docs can be limited to only those methods that have been markedas shared with host. This gives 4D developers to easily producedocumentation for components that they share.- Can create a docset for the shared methods. Third party Docsetviewers are available on many platforms.

Please feel free to drop me a note on suggestions and featurerequests. I do plan to do some more tweaks and add new features in thefuture.

HOW TO GET IT==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D===3D==3D==3D==3D==3D==3D==3D=Go to<http://openroaddevelopment.com/projects_4dComponent_CodeAnalysis.html>to get more information and download the component.

VERSION 1.4 CHANGES==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D==3D===3D==3D==3D==3D==3D==3D==3D=

General-Adjusted the layout of the Preferences and API Docs buttons on thewindow.-Enhanced the format used in the internal xml preference files. Apreference label attribute is part of each preference.-Worked around an issue with the "folder separator" constant with ahotfix version of 4D.-Fixed issue that allowed html files to be dragged onto the webarea onthe documentation/release notes window.-Fixed issue where object names had special characters. The objectsare display properly rather than encoded characters. The issue wasfixed on screen and in the exported HTML docs.-Improved Read Me file

Quick Launcher- Added a quick launcher window that can be set as floating or just aplain palette. From this quick launcher window you can export themethods to text files as well as open the main window for thecomponent or the preferences. The window can be opened by calling the"CA_ShowQuickLauncher method".

Preferences- Split the preference on what to append to the folder containing theexported methods. The options are nothing, date only, date & time.- Added a preference to control which line endings to use for theexports. CR, LF and CRLF are the options.

Method Difference Viewer- Made some slight UI updates to the screen.- Added ability to copy, using an Apply button, the method from diskinto the 4D method. Note: Form methods can only be updated. Theycannot be created this way.- Fixed issue where the changes within a line would not be highlightedif the that line of the method contained a <, > or &.- Fixed issue where any html embedded in a line would be hidden if thethat line of the method contained a <, > or &.- The DIFF parser will normalize the end-of-line character(s) beforeperforming the DIFF. The result is that two files of identical contentbut with different EOLs will not show as having differences. This alsoapplies to the differences tab as well.

Complexity Tab- Added "Called" column that shows the number of times that method iscalled directly in 4D Code.

Differences Tab- The folder that was used to check for differences against is storedin the local structure preferences. The next time the Code Analysiswindow is opened, that last folder is restored so that a quick"Re-Check" button can be done.- Fixed a bug in the "Create Method From File" so that the BOM in theUTF8 file is not imported as part of the code. The option to create amethod from a file is part of the contextual menu when clicking on amethod in the list of differences.- Fixed a bug that caused the "Show File on Disk" pop-up menu optionto not work. This option is part of the contextual menu when clickingon a method in the list of differences.

Structure Export Tab- Fixed runtime errors that would occur when Exporting Properties.Apparently using pointers to local vars as parms to an EXECUTE METHODis not a good idea.

Internal Changes- Window locations are stored in a global preference file rather onepreference file per structure that the CodeAnlysis component isinstalled in.- The Preference dialog preference values are now tied to an internalproject name that is generated the first time the CodeAnaysiscomponent is used. This means that the preferences will persist if thehost structure changes it's name. The internal project name is storedin the host structure's resource folder.

Dani Beaubiendbeaubien@...Open Road Development, Inc.Reply to this messageSummary created 4/7/14 at 12:36PM by Intellex Corporation