GUI Compilation Note for the #SWMM 5.1.x Delphi Code

This is for Students who want to make their own customized version of the SWMM5 GUI Interface. You can use the Embarcadero Starter Version for XE2 to XE7.  Here are the main files you download from the EPA


Note from the EPA: This archive contains source code for the Windows graphical user interface portion of Version 5.1.007 of the Storm Water Management Model (SWMM). The interface was written using Embarcadero's Delphi XE2 ( The name of the Delphi project containing the code is Epaswmm5. All of the files for the project can be found in the GUI5_1_007.ZIP file within this archive.

Before the Epaswmm5 project can be loaded into Delphi's Integrated Development Environment (IDE), several special components must be installed into the IDE's component pallette. The source code for these components is contained in the COMPONENTS.ZIP file in this archive. Consult the Delphi Users Guide for instructions on how to install these components. 

My note:  The Delphi Starter versions for XE2 to XE7 also can create a customized SWMM5.1 GUI.  You can by the Embarcadero Starter Version for $209 USD.  As explained in the readme from the EPA Site, Delphi uses the Delphi Interface (Bullet 1), the F(form files), D(dialog files), U(Utility files), Txt (Interface Rules) as shown in Bullet 2 and Components that work with the Forms of the Delphi Compiler (Bullet 3).  See Figure 1 below for an example. 

Figure 1. Delphi XE7 Interface for SWMM 5.1.007

Here is how to use the Components

This archive contains the source code for several 32-bit Delphi
custom components. The components and the files used to install
them are listed below.

OpenTxtFileDialog (OpenDlg.pas)
Windows standard Open File dialog with a preview window for text files.

NumEdit (NumEdit.pas)
Text box control that limits entries to valid numerical values.

PageSetupDialog (PgSetup.pas)
Dialog control that selects a printer and page orientation, margins,
and headers/footers.

VirtualListBox (VirtList.pas)
Listbox control that allows an unlimited number of items.

PrintControl (Xprinter.pas)
Nonvisual control that handles printing of text, tables, and graphics.
Includes a print preview feature. Documentation is provided in the file

What do the Components look like?

Figure 2. Delphi Components on a Form

via Blogger

Leave a Reply