Buyer's FAQ

Updated July 2017

This page answers some of the most frequently asked questions from potential purchasers of Winteracter, the Fortran GUI toolset.

Note: This is not a technical FAQ. Winteracter includes an extensive technical FAQ in its documentation. See the Support page.)

Fundamental Product Features

  • Does Winteracter support true Windows look & feel?

Winteracter uses the native menu/window/dialog handling features provided by the Windows API to ensure a 'standard' look & feel. The X Windows version uses Xlib and the well established Motif interface, to achieve a close equivalent.

  • Are visual tools supplied or is it just a subroutine library?

From Winteracter's inception we were committed to providing visual tools to simplify the design and development process. One of Winteracter's core tools is the resource editor, which is used to create and mantain your application's menus, dialogs, toolbars, icons, bitmap-buttons and cursors. This allows you to design and edit your main user interface components without writing a single line of code. You also get full control over the layout of your dialogs, instead of having to second guess complex auto-layout algorithms.

Winteracter also includes its own development environment (WiDE), which integrates the design, edit, compile, link, run, debug cycle. While use of WiDE is optional, it offers a credible alternative to compiler/platform-specific IDEs from other sources.

Our commitment to a visual style of programming is on-going. The Winteracter visual toolset is regularly updated and expanded. Significantly, virtually all of these tools are supplied on all supported platforms, not just on Windows. The full set of Winteracter tools are detailed on the Visual Tools page.

  • Is a Fortran compiler included?

No. You must choose and obtain a compatible Fortran compiler yourself. See Supported Compilers/Platforms for the current list.

Licence

  • Are there any hidden costs like royalties or at-cost extras?

There are no run-time fees or royalty payments. The licence agreement specifically permits redistribution of Winteracter-based programs, without any royalty requirement. Educational licence holders are restricted to redistribution to other educational/research users. There are no such restrictions on Commerical licence holders.

Winteracter includes all visual tools and hardcopy export drivers as standard. Unlike some competing products, it is not necessary to purchase a selection of "optional" components to obtain a full toolset. You just need one of the supported Fortran 9x/200x compilers.

Note : If you intend to build help files in either of Microsoft's HTML Help (CHM) or WinHelp (HLP) formats, via the Windows versions of our HelpEd tool, you will need the corresponding Microsoft help compiler. CHM is the recommended format when creating new help files on Windows. The HTML Help Workshop includes HHC, the HTML Help Compiler. This is freely downloadable from Microsoft's web site.

  • Can I install on more than one computer?

The Winteracter licence agreement allows the software to be installed on two computers, provided it is not used on both computers at the same time. In other words, it is a single user licence which allows installation on two computers used by that licensee.

Resources

  • What are resources and how do they work?

Winteracter makes use of resource files which define dialog and menu layout. In addition they can contain other UI resources such as bitmaps, icons and cursors. This resource gets incorporated into your executable just like any other object file, using the resource compiler which is supplied with your compiler tools (under Windows) or with Winteracter itself (under X Windows). The individual resources are then accessible in the calling Fortran program via simple numeric identifiers.

The resource file and the associated list of numeric identifiers are maintained automatically by Winteracter's resource editor. Developers need no knowledge of the resource script format.

  • What are the benefits of a resource based programming model?

Our resource based programming model is the key to our powerful visual design methodology. It clearly separates dialog/menu design from input handling. Good UI design is a development task, not something to be performed at run-time. A resource based programming model makes this possible. What's more, changes to menu and dialog layout can be made and viewed in our resource editor and saved as updated resource files with no need for Fortran source recompilation.

"But I've read that resources run out very quickly. Won't Winteracter programs use up all my Windows resources?" Certainly not! This fails to understand how resources work. For example, under Windows, the resources built into an executable don't use any of the memory reserved by Windows for resource usage until explicitly requested. Winteracter allows you to load and unload dialogs, etc as needed. It's up to you how many dialogs you load simultaneously. In reality, a Winteracter program uses no more system resources than development systems which use 'on-the-fly' resource creation.

Another benefit of using resource files to define your user interface layout, rather than subroutine calls, is the ability of our resource editor to reload and edit those layouts throughout the development cycle. Visual tools which generate Fortran source code to define the user interface cannot do this.

  • Where do I get a resource compiler?

You will have one already! On Windows, your compiler tools will include a resource compiler. X/Winteracter includes our own equivalent for use with Motif based applications.

Language / Calling Interface

  • Is Winteracter totally Fortran based?

Our business has always been about servicing the needs of Fortran programmers writing Fortran programs. Winteracter delivers just that : A totally Fortran-based GUI solution. No mixed language programming is necessary, avoiding all the horrors of interfacing to C, C++, Delphi, Visual Basic, Java, etc.. Our aim is one language, one solution.

  • Why Fortran 9x/200x?

Reliance on compilers which suport Fortran 90 or later allows us to take advantage of features such as modules, free format source code, optional arguments, CASE constructs and much more. The WINTERACTER module in particular is a fundamental part of Winteracter programming, providing a full set of interface definitions (eliminating most argument passing errors) and meaningful parameter names. An extensive set of Fortran Winteracter example programs are also provided, which all use modern Fortran syntax.

Of course, simply because Winteracter requires a Fortran 9x/200x compiler, this does not mean you cannot reuse your old Fortran 77 code. Newer Fortran standards include the whole of Fortran 77 as a subset.

  • How readable is Winteracter code?

If you care about the readability and maintainability of your code, Winteracter must be high on your list. We believe our calling interface is simpler and cleaner than any competing Fortran based product. Winteracter uses meaningful names for all of its subroutines, instead of cryptic 6 character names. In addition, hundreds of meaningful parameter names are declared for subroutine argument values and function result codes. You can actually read a typical Winteracter program and get a pretty good idea of what's going on, without having used the product or written the program.

  • Does Winteracter require the use of callbacks?

No it doesn't. Callbacks make program flow hard to follow. Instead we have implemented what we term 'semi modeless' dialogs. These appear modal to the user (i.e. the rest of the application is blocked out) but modeless to the application (i.e. the program retains full control over the user interface while the dialog is visible). Winteracter can also report when dialog fields change or when the focus moves between fields, allowing field-by-field validation without resorting to callback routines.

  • Can I use Winteracter with other GUI development tools?

While developers may find that certain Winteracter features work with some 3rd party GUI tools or APIs, we are unable to provide advice or support on the use of these programming interfaces. We don't have any control over their behaviour. They may well perform message/event processing which interferes with Winteracter's normal operation. The use of such tools is therefore likely to be counter-productive.

Graphics

  • Does Winteracter offer more than basic graphics primitives?

Winteracter's extensive graphics routines are derived from our well established INTERACTER product. This means that Winteracter's graphics are extensively tried and tested. It also means that they have been developed to a level of maturity way beyond just a few GDI line and fill interface routines. In addition to comprehensive device independent primitives, we also provide extensive higher level graph/chart plotting and 3D modelling functions at no extra charge.

  • Which hardcopy/export formats does Winteracter support?

Fortran graphics programmers invariably need to get their results onto paper or into third party products like word-processors. As an industry we've managed to invent more ways of doing this than bears thinking about. Thankfully, I.S.S. has been addressing this problem since the late 1980's, so Winteracter not only supports Windows API output to Print Manager and Windows metafiles, it also provides drivers for HP-GL, HP-GL/2, HP PCL, Epson ESC P and ESC P/2, PostScript, DXF, CGM, SVG, BMP, PCX, PNG and JPEG/JFIF formats. Bit image printer dumps are also supported. This way, whatever device you need to print on or whatever package you need to export to, chances are we provide a solution which genuinely works. Also, remember that you get all these drivers as standard with Winteracter.

  • Does Winteracter support the old CalComp interface?

Winteracter includes a full emulation of the old CalComp HCBS interface (1977 spec), supplied in source code form. Also included is an emulation of Lahey's Video Graphics Library as supplied with F77L, F77L-EM/32 and early versions of LF90. As an added bonus the emulation also supports a substantial subset of Lahey's add-on Graphoria product.

  • Are web browser graphics formats supported?

We support PNG (Portable Network Graphics), JPEG and SVG (Scalable Vector Graphics - the web vector graphics format defined by W3C).

Supported Platforms

  • What version do I need for 64-bit Windows?

The Windows version includes support for creation of 32-bit and 64-bit applications on both 32-bit and 64-bit Windows. Simply order the Windows version, whatever your requirements on that particular platform.

  • Is a Linux version available?

Yes. The Linux version is based on X Windows and the Motif toolkit. Known as X/Winteracter, this version provides a high degree of compatibility with the Windows implementation. As on other platforms, a single licence provides support for creation of both 32-bit and 64-bit applications on either 32-bit or 64-bit versions of Linux.

  • Is a Mac version available?

Yes. The X Windows version has also been ported to the Mac. This relies on the "X11" or "XQuartz" X server. X11 is shipped as part of OS X in versions up to and including Mac OS X 10.7. From OS X 10.8, XQuartz is downloadable from the XQuartz web site.. A Mac version of the Motif toolkit is also required, as on Linux. Suitable versions of Open Motif are downloadable from our Open Motif for Mac page.

As on Linux and Windows, a single licence provides support for creation of both 32-bit and 64-bit Mac applications.

Support for the old PowerPC platform was frozen in 2006 at v7.10a. Support is now focussed on the current generation of Intel-based Macs.

  • Are versions available for non-Intel platforms?

We currently only support Intel based platforms. Support for certain PowerPC, SPARC and Alpha based platforms was variously frozen at versions 7.10a and 3.10.

Lahey Fortran compilers

  • Which Lahey compilers does Winteracter support?

On Windows, we support version 5.7 or later of Lahey/Fujitsu Fortran (LF95). This includes support for the version of LF95 supplied with Lahey Fortran 7.x. Any of the Express, Standard or Pro variants of LF95 are suitable. Since LF95 32-bit, the corresponding version of Winteracter can be used to create 32-bit applications.

The Windows version of Winteracter also includes support for Lahey/GNU Fortran. This implementation allows creation of both 32-bit and 64-bit applications. (Note: Lahey/GNU Fortran is available both as a standalone product or as part of Lahey Fortran 7.5 onwards. Winteracter supports both.)

The Linux version includes for support for both Lahey Fortran 6.2 (Linux/x86) and 8.x (Linux/x86_64). However, it should be noted that both these compilers are now discontinued, so use of one of the other supported compilers might be a better choice.

The discontinued Lahey "Fortran" for .NET compiler is not supported for several reasons, primarily because it does not compile standard Fortran. Support for the obsolete LF90 and Elf90 compilers was dropped at v11.0, as was support for the early versions of LF95 (5.0-5.6) which relied on the old Phar Lap tools.

  • What is the difference between WiSK and Winteracter?

The Lahey Winteracter Starter Kit (WiSK) (as supplied with various Lahey Fortran products from v4.0 onwards) includes plenty of functionality to allow you to create substantial Windows programs. However, if you decide that you want access to more user-interface or graphics features then you might consider upgrading to the the full version of Winteracter.

The full version of Winteracter adds memory bitmap/metafile manipulation, toolbars/tooltips, tabbed dialogs, more dialog field types, spreadsheet input, built-in editor, range checking, Print Manager hardcopy interface, a more extensive range of graphics primitives, presentation graphics, 3D modelling, several graphics hardcopy/export drivers, more visual tools, operating system interface, etc.

  • Is Winteracter compatible with Lahey's Elf90?

Versions up to and including 10.10 did support this compiler. However, Elf90's extreme age and restricted functionality meant support was dropped at Winteracter 11.0.

  • Which versions of Lahey/Fujitsu Fortran are supported?

All but the earliest Windows versions of Lahey/Fujitsu Fortran 95 are supported:

  • On Windows, a Lahey Fortran compiler package which includes Lahey/Fujitsu Fortran 95 (LF95) 5.7 or later is required. The early versions of LF95 (5.0-5.6) which relied on the old Phar Lap linker are no longer supported, as of v11.0.
  • Lahey Fortran v7.x exists in a variety of configurations, combining multiple compilers in various permutations. The Win32 Fortran 95 compiler which shipped previously as LF95 5.7, has subsequently formed part of the Lahey Fortran v7.x "Enterprise" and "Professional" editions. It continues to ship with the most recent LF 7.7 compiler package, which combines Lahey/Fujitsu Fortran and Lahey/GNU Fortran (the latter was first introduced at LF 7.5). Since the version of Lahey/Fujitsu Fortran (LF95) which ships as part of LF 7.x remains largely unchanged from v5.7, the support added at Winteracter 4.10 is equally applicable to the v7.x releases. Support for Lahey/GNU Fortran was first added to Winteracter at version 9.30.
  • On Linux, LF95 6.2 (32-bit) and 8.x (64-bit) are supported. However, those compilers are both discontinued.

Visual Fortran

  • Is Visual Fortran supported?

Winteracter supports Intel Visual Fortran 10.0 or later. This is the same compiler as ships under a variety of Intel product names, such as "Composer XE" or "Parallel Studio XE". Both 32-bit and 64-bit versions are provided for use with this compiler, on Windows.

While we supported the earlier Digital/Compaq Visual Fortran 5.0/6.x compilers for 20 years, support was dropped at version 11.0.

Open Source Compilers

  • Are open source compilers supported?

Every Winteracter licence, on all platforms, includes support for GNU gfortran. On Windows, the MinGW implementation is supported, allowing creation of both 32-bit and 64-bit applications. On Linux and Mac platforms, 64-bit GNU gfortran is supported.

Support for the g95 and Open64 compilers was dropped at version 11.0, when our Linux and Mac gfortran implementations were introduced.

Support and Updates

  • What about technical support?

We operate a Winteracter technical support service via email. Registered users may submit bug reports and other Winteracter related enquiries to this service. Please use email to submit support enquiries, since this allows rapid and efficient exchange of supporting material and solutions. See the Support page for more detailed support instructions.

  • When is the next new release due?

Periodically, we introduce new versions adding new functionality. We do not pre-announce new release dates. Availability of new versions is always announced on this web site, on the day of release.

  • What is your upgrade policy?

Users of any previous Winteracter release can purchase an upgrade to the current version. The cost of an upgrade is related to the age of your existing version. Broadly, the newer your licence, the cheaper the upgrade. (Note: We no longer offer maintenance contracts. These were dropped in 2001.)

Customers who purchase a new licence or upgrade immediately prior to a new release will normally be entitled to a free upgrade to the new version. Qualification for free upgrades is based on the date of shipment from I.S.S. or a recognised I.S.S. reseller and in any event is at the sole discretion of I.S.S. Ltd. Free updates are normally shipped automatically and do not need to be requested.

  • Can I upgrade from a 32-bit licence to 64-bit?

Yes. All licences now include both 32-bit and 64-bit support. Holders of earlier "single-target" licences can upgrade to the current version. Upgrade fees are as per our Price List.

  • How are bug fixes provided?

Between new releases, we periodically make minor bug fix updates available.These fix known issues in the current release and are signified by a revision letter (e.g. the first bug fix update after the initial release of version 11.0 would be v11.0a). Bug fix updates are specific to a particular release (e.g. to install a 11.0a update you must own a v11.0 licence).

We do not have a fixed bug-fix update schedule. Exact frequency depends largely on the number and severity of bugs which have accumulated. Several bug fix updates are usually uploaded to our web site between new releases. Bug fixing for a particular version number stops when a new release becomes available. Bug fix updates for earlier versions normally remain available on our web site for several years.

For versions prior to 10.0, updates are available from the Updates page on this web site. From version 10.0 onwards, updates are provided via whole product downloads, from the page specified in your licence email.

INTERACTER Compatibility

  • Why did you develop a new product?

The primary motivation was the 'look and feel' issue. Many customers were demanding a truly Windows-like appearance. We also encountered demand for similar functionality on other platforms under X Windows (particularly on Linux). Portability and backwards compatibility issues precluded such a development within INTERACTER, which employs a character mode interface, even on graphics displays. Instead, we decided to take all those parts of INTERACTER which we could reuse (notably our tried & trusted graphics and operating system interface) and incorporate them in a new product. The user interface elements of Winteracter (menus, dialogs, etc.) were therefore redesigned to match the structure of the Windows environment while retaining much of the simplicity and style of programming interface which made INTERACTER popular.

  • What happens to INTERACTER now?

INTERACTER development ceased in 2000. Technical support was withdrawn in August 2006. INTERACTER is no longer available. We recommend Winteracter for new development.

  • How do I convert my INTERACTER programs to Winteracter?

Any INTERACTER graphics code can be used virtually without modification. The only change likely to be required is the introduction of a USE WINTERACTER statement at the start of each program unit which calls our graphics routines. Similarly code which calls routines in our OS (operating system), BF (Binary File handling), CH (character handling) and MM (max/min) subroutine groups can also be reused.

Code which uses INTERACTER's Forms Manager will require some modification, notably the conversion of forms to Windows dialogs. However, we provide a tool (IFD2DLG) which will do this automatically. Many of INTERACTER's Forms Manager routines have direct equivalents in Winteracter too, notably the field assignment/retrieval routines. The function of the INTERACTER form designer INTFORM is replaced by the dialog editor, which forms part of the resource editor. Other code which relies on INTERACTER will generally require reimplementation. The documentation supplied with Winteracter provides more detailed advice on how to achieve this.

  • Can I still use the old INTERACTER short name interface?

INTERACTER was upgraded to use a modern long-name calling interface in 1994. Legacy codes which still use the early 6-name calling interface can be upgraded using the TOLONG tool which ships with both INTERACTER and Winteracter.

For more information email: