v7.0 [Oct 31, 2013]
- ClearWin is now available in the form of a 64 bit DLL called clearwin64.dll for use with third party 64 bit compilers. Routines in this library that previously ended with the @ symbol now end with $. In order to allow parallel development, FTN95 has been extended so that routines such as winio@ can now end in $ as an alternative to @. Also new standard modules are provided so that all ClearWin library routines for FTN95 can take this alternative form. For further information, search for "64 bit" in ftn95.chm.
- ClearWin now accepts UTF-8 encoded character strings.
- EXPORT_IMAGE@ and IMPORT_IMAGE@ now accept .PNG files and resources.
- Four library routines (START_THREAD@, WAIT_FOR_THREAD@, LOCK@ and UNLOCK@) have been added in order to initiate and manage Win32 threads.
- The default ClearWin colour mode has been changed from "VGA colours" to "RGB colours".
- ClearWin : Added a format code %em has been introduced to allow you to put icons in the left hand column of menus.
- ClearWin : Added a format code %nw has been introduced. %nw takes one argument and this is the handle (%hw) of a window that has already been created
-
v6.3 [Jun 30, 2012]
New Features:
-*.cs files can now be included in a DBK_LINK2/4 command line in order to transmit assembly attributes to the exe/dll.
-/CHECK argument checking now extended to module subprograms.
-/LINK with /DEBUG now activates /3GB in SLINK.
-ASSEMBLEY_INTERFACE now allows ARRAY="REF" (default ARRAY="NET") to allow star-sized arrays to be passed only as a reference to the first element of each array in the argument list.
-Clearwin : Two new functions have been added to the library as an alternative or addition to %gr[user_surface]. These are CREATE_USER_SURFACE@ and SELECT_USER_SURFACE@. The associated %gr is identified by its Windows handle (see %lc) and the programmer must store the associated device context and DIB pointer.
-CALL CREATE_USER_SURFACE@(width, height, hdc, ptr) !(inputs width and height and returns hdc and ptr - all INTEGERs)
ia = SELECT_USER_SURFACE@(hwnd, hdc, ptr) !(inputs all arguments and returns non-zero value on success)
-Clearwin : New standard callback HELP_LOOKUP added. This takes two character strings. The first is the full path of a .CHM help file. The second is the keyword that identifies the topic that is to be displayed. This keyword must be included in the .HHK file that forms part of a Microsoft project to compile the .CHM file. Note: HELP_CONTENTS can already be used with .CHM files.
Outline summary of bugs that have been fixed:
-TYPE definition failed to propagate in a particular subprogram that was internal to the main program.
-RECOVER_DIB_BLOCK@ had 2048 horizontal pixel limit.
-A particular ALLOCATE statement reported and incorrect array rank.
-PAD was not working in the RESHAPE intrinsic except for integers.
-VAX initialisation statements failed when the list contained an array that was not the first item in the list.
-Assignment via a pointer failed when pointing to an element of an array of user-defined type which, in turn, had array members.
-Assignment to NULL using =>NULL() rather than NULLIFY was failing under .NET.
-MAXLOC and MINLOC intrinsics could not be called directly in order to set an array index.
-For arrays of rank one, MAXLOC and MINLOC now only return a scalar when DIM=1 is an explicit argument.
-SET_SUFFIX@ and SET_SUFFIX1@ were only working correctly for extensions of length three.
-Logical test for element by element character equality was failing for scalar against array constructor.
-Clearwin Improvement: %`rs can produce unwelcome additional height with XP theme.
-Existing option [no_additional_depth] used to restore old (non-XP) height.
-Clearwin : Documentation has been added for existing functions import_gif@ and export_gif@. These are similar to import_bmp@ and export_bmp@. Interfaces are now included in standard header files.
-Clearwin Improvement: import_image@ has been extended to handle GIF files and resources.
v6.1 [May 9, 2011]
- Compiler regression at 6.00: character variable comparision failed when using /full_undef (i.e. /checkmate)
- Long path names could not be used with wild card command line "FTN95 *.f90" etc.
- Pure functions as procedure arguments were constrained to be INTENT(IN) but the standard does not require this.
- FILL@ gave locked register failure with /opt.
- Compiler failed to create runtime code for array assignment with INTEGER*8 array index and the same index on the RHS.
- CHECK mode gave false runtime error for INTEGER*2 do-loop index (changed externally) when index was used in a CONTAINed subroutine.
- SDBG: In some circumstances Windows loads DLLs with Unicode details instead of ANSI. SDBG detects this and acts accordingly
- ClearWin+: Two problems with the %eb horizontal scrollbar have been fixed
- ClearWin+: Regression fix: This was caused by spurious mouse_hover event (see 301) in %ib and affected use of SDBG in particular
- ClearWin+: %lv was not working under Windows 7 when using the XP theme/manifest
- ClearWin+: %ps was failing in a special case
- Support for Visual Studio 2010
- Support for .NET 4.0
- A new compiler option /NO_TRUNCATE has been added.
- ClearWin+: A new option [mouse_hover] has been added to %ib
- ClearWin+: The standard callback COPY has now been implemented for %cw
- ClearWin+: The local font given by %fn is now applied to %pb
- ClearWin+: New library routines have been added to make it easier to use %eb[user_colours]
- ClearWin+: Check boxes in %lv can now be set and reset under program control
- ClearWin+: Mouse wheel messages are now available with %gr[full_mouse_input]
- ClearWin+: GET_MULTIPLE_FILENAMES@ has been made available
- A specific test for character equality was failing with /FULL_UNDEF
- There was a failure to flag a compilation error when a DO loop end control value is not a scalar.