Prolint Desktop

The Prolint Desktop is simply a window with a couple of buttons on it, to launch several Prolint features from.
It is not exactly state of the art but comfortable.

It is especially comfortable when the Desktop is added to the PRO*Tools palette. There is a button near the bottom of the Prolint Desktop, labelled "Add to protools". Just press it and restart the PRO*Tools palette.
The button becomes invisible if there is already a program-name matching "*prolint*desktop*" in protools.dat.

If you have not added the Desktop to PRO*Tools yet, just run the following statement from a Progress procedure editor:

     RUN prolint/desktop.w.

button "Lint files..."

run prolint/launch/start.p

This button opens a dialog where you can select one or more files, and/or one or more directories to lint. You can also select a "Profile".

button "Configure"

run prolint/core/lintcfg.w("")

This button opens the window where you can do Profile maintenance.

button "Results Window"

run prolint/outputhandlers/logwin.w

The Results Window is where most of your Prolint sessions will send their output to. It is also
a convenient window to have around, because it contains a lot of command options.

button "Lint Active AB"

This button determines which file is currently active in the AppBuilder, and will lint that file.

button "Lint Open AB"

This button determines which files are currently open in the AppBuilder, and will lint those files.

button "Check for updates"

run prolint/core/checkrelease.p

This button does a HTTP GET using Progress V9 sockets, to get the online copy of http://www.oehive.org/files/prolintrelease.txt. This is a very small file.

It then compares it with file prolint/core/release.ini on your PC. If they are equal, you already have the latest release. Else you will be prompted to browse to http://oehive.org/prolint/download to download the newest release.

buttons "Query Prolintdb"

Browse results that are stored in the (optional) Prolint database. See prolintdb for more info.

button "Add New Rule"

run prolint/core/dnewrule.w

This dialog is a convenient way to add a new entry to prolint/rules/rules.d, the list of default rules. If you do not use this dialog please refer to how to create a new rule for a description of file rules.d.

button "Regression-test"

run prolint/launch/test.p

If you are modifying Prolint sources you may want to do some regression-testing. This action performs a Lint on directory "prolint/regrtest" and "prolint/regrtest-oo" which contain collections of correct and ugly 4GL-statements. The results are compared to a list of expected results. The outcome should be a window that says "FC: no changes".


Before you can run the regression test, you will first need to create a test database. Please see Regression testing for details.

button "Proparse launcher"

run proparse/launcher.w

Starts a window similar to the Prolint Desktop, but now for Proparse utilities.
The Tokenlister is what you will be using a lot, if you are writing rules for Prolint.