Release Notes
(1.2.24-25) |
ATTENTION CVF 6.0/6.1/6.5 USERS: CVF 6.0 and 6.1 is not supported
anymore. Try installing XFT 1.2.14 and rebuild the sources (open Program
Files\Xeffort\Xeffort.dsp and build Release
configuration.)
ATTENTION IVF USERS:
Minimal required version of IVF is
9.0. When building, make sure your
application is built with default calling
convention and default string argument
passing (after all items) (Project Properties/Fortran/External
Procedures category). For compatibility with CVF 6.0/6.1, Xeffort routines
do not have defined !DEC$ATTRIBUTES DEFAULT (as they should).
The source consists
of the following files:
.\Source\Xeffort.f90 - Main Xeffort Module
.\Source\XFT.f90 - XFT Module for compatibility with old XFT
codes
.\Source\XFTAPI.f90 - INTERFACEs to Win32 API Routines
.\Source\XFTAPIty.f90 - TYPEs and PARAMETERs of Win32
API
.\Source\XFLOGM2.f90 - XFLOGM Module v. 2
.\Source\XFTApp.f90 - XFTApp Module
.\Source\XFTcaret.f90 - XFTCaret Module
.\Source\XFTCtrl.f90 - XFTCtrl Module
.\Source\XFTDialog.f90 - XFTDialog Module
.\Source\XFTExtra.f90 - XFTExtra Module
.\Source\XFTIntrf.fi - INTERFACEs to user-defined
handlers
.\Source\XFTListView.f90 - ListView controls
.\Source\XFTFile.f90 - XFTFile Module
.\Source\XFTGDI.f90 - XFTGDI Module
.\Source\XFTMDI.f90 - XFTMDI Module
.\Source\XFTMenu.f90 - XFTMenu Module
.\Source\XFTMenuTy.f90 - XFTMenuTy Module
.\Source\XFTNotify.f90 - INTERFACEs to X_NM_ macros
.\Source\XFTPrint.f90 - XFTPrint Module
.\Source\XFTReg.f90 - XFTReg Module
.\Source\XFTTypes.f90 - Xeffort-specific TYPEs and
PARAMETERs
.\Source\XFTToolbar.f90 - XFTToolbar Module
.\Source\XFTWnd.f90 - XFTWnd Module
.\Source\XFTStrings.f90 - XFTStrings Module
.\Source\EXCheckStack.f90 - EXCheckStack routine
.\Source\EXEpilog.f90 - Dummy XEpilog routine
.\Source\EXGetCmdData.f90 - EXGetCmdData routine
.\Source\EXWinMain.f90 - WinMain for Xeffort
Applications
.\Source\XYPlotMod.90 - X-Y Plotting module
The package is downloadable from www.xeffort.com/xeffort/home.htm.
Revision History
= fixed
= added
= changed
JD = Jugoslav Dujic
MG = Mike Gaitens
GC = Greg Charlton
Xeffort
1.2.25 (November 18 2009.)
|
18.11.2009. |
JD |
Release for IVF 11.0 / 11.1 and VS2008
|
|
14.04.2008. |
MG |
XMenuSetLog returned .FALSE. on success
(XFTMenu.f90).
|
|
14.04.2008. |
JD |
Fixed several issues related with toolbar's
dragging and docking. (XFTToolbar.f90)
|
|
14.04.2008. |
JD |
XToolbarSet(CTL_STYLE) was breaking toolbar's
dockability. Fixed (XFTToolbar.f90)
|
Xeffort 1.2.24 (April 08 2008.)
|
08.04.2008. |
JD |
Added tentative (untested) support for
Visual Studio 2008. |
|
07.04.2008. |
MG |
Fixed XCreateMetafile (forgotten
Char(0)-termination) (XFTExtra.f90) |
|
26.01.2008. |
MG |
Added XYPlotComplex to plot complex
arrays in magnitude and phase-angle form. Unassociated
elements in an XYCURVE array are no longer considered an
error. Fixed some minor bugs in the XYPlot module having to do
with custom margins and custom labels on log axes. |
|
21.01.2008. |
MG |
Modified XFTToolBar to allow multiple
rows of buttons in a toolbar, and to not overlay the
status bar (if any). Added
XToolbarRemoveAllButtons |
|
08.01.2008. |
MG |
Added XSystemPath, XEnvironmentString to
XFTFile.f90 |
Xeffort 1.2.23 (December 19 2007.)
|
19.12.2007. |
JD |
Setup now supports IVF 10.1. For Visual
Studio PPE and 64-bit, it will install the Xeffort.lib, module files
and XWizard.exe; user should append the LIB and INCLUDE path
manually. |
|
18.12.2007. |
MG |
XToolbarRemoveButtons worked only when
bById is both present and .FALSE. (XFTWnd.f90). |
|
13.12.2007. |
MG |
Added semi-documented
FXNotifySysReturnValue, which can be used from the command callback
to return a non-default (1) value from the window procedure
(XFTWnd.f90). |
|
13.12.2007. |
MG |
When a ListView row is selected from
code, it did not automatically scroll. (XftCtrl.f90) |
|
25.11.2007. |
MG |
Added XYPlot X-Y plotting package. It is
capable of producing either a quick plot or a presentation-quality
plot. |
|
10.11.2007. |
MG |
Added XCreateMetaFile,
XCloseMetaFile. |
|
08.11.2007. |
MG |
Imported XNumber, XSqueeze, XTimerStart,
XTimerStop, XUserWarn, XUserInfo, XUserStop, XUserAsk, XPlaySound,
XSetDialogFocus, XOneInstance, XPickFont, XPickCtlFont, XPickColor
from the Xeffort
Extras site. (XFTextra.f90) |
|
05.11.2007. |
MG |
Limited output of XView2Client to 2**27
to agree with GDI "page" limits. (XFTGDI.f90) |
|
02.11.2007. |
JD MG |
Fixed font resource leak in XSetFont
(XFTGDI.f90) |
|
30.10.2007. |
MG |
Added XNowAt, XMoveRelative,
XLineToRelative to XFTGDI.f90. |
|
16.10.2007. |
JD |
Changed value of toolbar CCS_DOCKABLE to
avoid conflict with CCS_ADJUSTABLE |
|
06.09.2007. |
JD |
Fixed return value from XScrollbarSet
(XFTWnd.f90) |
Xeffort 1.2.22 (August 02 2007.)
|
08.06.2007. |
JD |
Minor aesthetic change in XFTAPIty.f90
back in June had broken XMessageBox.
Fixed. |
Xeffort 1.2.21 (June 12 2007.)
|
08.06.2007. |
JD |
Setup now supports IVF 10. Application
wizards for all installations are stored in a separate directory
"AppWizard" under installation root directory. Due to new VF10
registry nomenclature, reinstallation of Xeffort may be required
after VF updating. |
|
14.02.2007. |
JD |
Added SW_TOP, SW_BOTTOM, SW_TOPMOST and
SW_NOTOPMOST flags to XSetWindowPos (XFTWnd.f90) |
|
05.12.2006. |
JD |
xWnd and xWndDeact arguments to
WM_MDIACTIVATEHANDLER now match the docs (same arguments were passed
to child window being deactivated) (XFTWnd.f90) |
|
11.09.2006. |
JD |
Added sWorkingDir argument to
XCreateShortcut. (XFTFile.f90) |
|
25.07.2006. |
JD |
XShorten hangs in endless loop with
certain strings. (XFTStrings.f90) |
|
17.07.2006. |
GC |
XCtlGetInt did not work for CTL_RANGEMAX
and CTL_RANGEMIN for spin (updown) controls
(XFTCtrl.f90) |
|
17.07.2006. |
GC |
XCtlSetInt did not return success for
CTL_RANGEMAX for spin controls, and CTL_RANGEMIN for sliders.
(XFTCtrl.f90) |
Xeffort 1.2.20 (May 30 2006.)
|
30.05.2006. |
JD |
XCtlGet for classic listview control
returned zero for integer item with i0, j0 or k0 format. Fixed.
(XFTListView.f90) |
|
30.05.2006. |
JD |
When a classic listview control was
resorted, XCtlSetItem and XCtlGetItem worked with a wrong item (the
one in display order rather than the one in original order).
(XFTListView.f90) |
|
30.05.2006. |
JD |
When a virtual listview control was
resorted, XLVUpdate for specified selection did not redraw the
correct item due to wrong ordering. (XFTListView.f90) |
|
30.05.2006. |
MG JD |
Subsequent setting of CTL_FORMAT for a
listview control appended the columns. Now, it erases all the
contents instead (XFTListView.f90) |
|
23.05.2006. |
JD |
Uninstallation tasks implemented in
InnoSetup script. XUninstall*.exe is not necessary
anymore. |
|
23.05.2006. |
JD |
Added support for IVF9.1 (tested) and
VS2005 (untested). The setup is modified so that it will bind
Xeffort with all VF/VS combinations it encounters (not only for
newest as before). |
|
25.04.2006. |
MG |
Due to a uninitialized variable bHandled
in FXWndProc, menus and scrolling (and maybe also few other things)
would ocasionally stop working. (XFTWnd.f90) |
|
21.04.2006. |
GC JD |
Added support for CTL_KILLFOCUS and
CTL_GAINFOCUS for combo boxes, list boxes and drop-down lists
(XFTCtrl.f90/XFTWnd.f90) |
|
07.04.2006. |
MG |
XDeleteMenuItem did not work at all.
Fixed. (XFTMenu.f90) |
|
03.04.2006. |
MG |
XRegRead for real argument caused an
access violation. (XFTReg.f90) |
Xeffort 1.2.19 (February 27 2006.)
|
27.02.2006. |
JD |
The package is built with
/fpscomp:logicals. Some APIs on Win9x (notably, IsWindow) return a
positive non-1 value for BOOL, which was misinterpreted by Xeffort
as .FALSE. (Xeffort.dsp). However, as result, non-standard
expressions as "if(aLogical.EQ..TRUE.)" may cease to behave - use
"if(aLogical)" instead. |
|
27.02.2006. |
JD |
When the XW_FRAME is closed, Xeffort
automatically posts WM_QUIT message. However, that causes all
subsequent message loops to quit, so XModalDialog and XMessageBox
will also return immediately. Instead, these function will now
operate normally, but "store & retrieve" WM_QUIT.
XProcessMessages is not changed, i.e. it will return immediately as
before. (XFTDialog.f90) |
|
01.11.2005. |
JD |
Fixed bug in CVF MDI skeleton code where
= > should be used instead of = in xChild=XMDIGetActive(). (IVF
was OK). |
|
01.11.2005. |
JD |
WM_LBUTTONDOWN on a native Xeffort
window now does SetFocus by default. That affects WM_MOUSEWHEEL
handling, as well as WM_KEY* handling, as the keyboard focus will
now be directed as users expect. (XFTWnd.f90) |
|
01.11.2005. |
MG |
iScanCode argument to WM_KEY* handlers
extended by 1 bit to match the documentation.
(XFTWnd.f90) |
|
01.11.2005. |
MG |
Added XF2C.
(XFTStrings.f90) |
|
31.10.2005. |
JD |
Added bPopup optional argument to
XLoadMenu. (XFTMenu.f90) |
Xeffort 1.2.18 (October 26 2005.)
|
26.10.2005. |
MG |
Added "Keyboard and Character Codes"
page to documentation. |
|
26.10.2005. |
JD |
Partially fixed situation where
libifcorert.dll is not in PATH. XWizard now works from VS menu, but
uninstallation will not be complete. |
|
25.10.2005. |
JD |
CTS_CLIENTEDGE and CTS_WINDOWEDGE for
XCtlCreate now work (XFTCtrl.f90) |
|
24.10.2005. |
JD |
WM_MOUSEWHEEL should not do the Xeffort
default scrolling for subclassed windows (XFTWnd.f90) |
|
24.10.2005. |
JD |
Integer values of edit controls (same as
*etDlgItemInt) now supported as CTL_STATE. CTL_SELECTION must be
specified explicitly (XFTCtrl.f90) |
|
24.10.2005. |
JD |
Introduced CTL_APPEND constant to mean
the same as zero/DLG_ADDSTRING (XFTCtrl.f90) |
|
24.10.2005. |
JD |
PXCreateBitmap_File now returns .FALSE.
when it fails (XFTGDI.f90) |
|
21.10.2005. |
JD |
XRegWriteChar will now correctly store
entire untrimmed string; before the fix, it stored trimmed version
but indicated full length, resulting in ERROR_MORE_DATA on retrieval
(XFTReg.f90) |
|
21.10.2005. |
JD |
XMenuGetChar did not retrieve menu item
title because of forgotten MENUITEMINFO.cch member; fixed.
(XFTMenu.f90) |
|
20.10.2005. |
JD |
Added XMenuSetItem/XMenuGetItem, but not
published (XFTMenu.f90) |
|
17.10.2005. |
JD |
Added replacement possibility to
XInsertMenuItem (XFTMenu.f90) |
|
17.10.2005. |
JD |
Added generic interface and
documentation for XDeleteMenuItem (XFTMenu.f90) |
|
17.10.2005. |
JD |
Added XMENU_ID and XMENU_INDEX features
for XMenuGet (XFTMenu.f90) |
|
17.10.2005. |
JD |
Added SEQUENCE keyword to all Xeffort
types so they could be included in common blocks
(XFTTypes.f90) |
|
11.10.2005. |
JD |
XCtlGetChar fills the output string with
blanks even when it fails. Some old CVF (ShowFont) codes depended on
that feature (XFTCtrl.f90) |
Xeffort 1.2.17 (October 06 2005.)
|
06.10.2005. |
JD |
Fixed bug in AppWizard where Back or
Next buttons could cause VS to crash if "Dialog-based application"
is selected. |
|
06.10.2005. |
JD |
"Concepts" page added into help file and
several overviews (XFTCtrl, XFTWnd, XFTDialog, Getting Started)
enhanced. |
|
05.10.2005. |
JD |
Selection of items in list-boxes using
"old" (dflogm) style fixed to match dflogm one
(XFTCtrl.f90). |
|
03.10.2005. |
JD |
Fixed default IDOK/IDCANCEL callback for
dialogs so that it propagates WM_QUIT correctly when the dialog is
XW_FRAME (XFTWnd.f90). |
|
03.10.2005. |
JD |
Added capability of appending text to
edit controls and retrieving lines from multi-line edit controsl
(XFTCtrl.f90). |
|
26.09.2005. |
JD |
Added XProcessMessages
(XFTApp.f90). |
|
26.09.2005. |
JD |
Added XEnableWindow
(XFTWnd.f90). |
|
26.09.2005. |
JD |
Extended documentation for message
handlers. |
Xeffort 1.2.16 (September 26. 2005.)
|
26.09.2005. |
JD |
Added sUserButton argument to
XMessageBox (XFTDialog.f90). |
|
26.09.2005. |
JD |
Setup for IVF 8.1 did not install the
AppWizard correctly. Fixed. Presence of multiple IVF versions
(8.1+9.0) with various combinations of VS.NET 2002/2003 can still be
an issue; in that case, the Xeffort is (allegedly) installed only on
the "newest" combination. |
|
26.09.2005. |
JD |
Due to a change of function return type
(XLOWORD) in 1.2.15, command handlers for IDs greater than 32767
ceased to work. That included default menu IDs in Wizard-generated
code. Fixed (hopefully for good). (XFTWnd.f90) |
|
23.09.2005. |
JD |
DLGINIT resources are now parsed. That
means that combo/list data entered in "Data" fields of the resource
editor now appear in the dialog.
(XFTDialog.f90::PXParseDlgInit) |
|
22.09.2005. |
JD |
Added XSetCanvas and XGetCanvas
(XFTWnd.f90). WM_*SCROLL, WM_SIZE and WM_PAINT default handling
changed accordingly. |
|
18.09.2005. |
JD |
Fixed wrong appearance of icon in
XMessageBox, as well as occasional text truncating
(XFTDialog.f90) |
|
18.09.2005. |
JD |
XCtlGetChar truncated last character if
the supplied string is of exact necessary length.
(XFTCtrl.f90) |
Xeffort 1.2.15 (August 31 2005.)
|
26.08.2005. |
JD |
Changed WM_KEYUP and WM_KEYDOWN
prototypes (XFTWnd.f90). |
|
23.08.2005. |
JD |
Added enhanced XFTStrings. |
|
23.08.2005. |
JD |
Added XMessageBox. |
|
11.08.2005. |
JD |
Accelerator keys in MDI skeleton code
made working by fixing nCode from 1 to 0
(FXWindowProc::XftWnd.f90). |
|
11.08.2005. |
JD |
Fixed the bug in XCreateWindow where
windows with non-default class (i.e. PRESENT(sClassName)) were not
bound. (XFTWnd.f90) |
|
11.08.2005. |
JD |
Added WM_MDIDESTROY handler
(XFTWnd.f90). XWizard.f90 updated accordingly and Wizard-generated
code for MDI application updated to catch for case where there are
no child windows. |
|
11.08.2005. |
JD |
Package renamed to Xeffort. All
sources reorganized. |
1.2.14 (August 08 2005.)
|
08.08.2005. |
JD |
Setup modified to (allegedly) support
all VS.NET (2002/2003) and IVF (8.1/9.0) combinations (but
untested). |
|
05.08.2005. |
JD |
Changed X_MENU structure and added
appropriate code so that the main menu bar is properly redrawn after
change (XFTMenu.f90). |
|
05.08.2005. |
MG JD |
Added XBeep and XMessageBeep routines
(XFTApp.f90). |
|
01.08.2005. |
MG |
Handled the case of file extension given
as .* in XGetSaveFile (XFTFile.f90). |
|
01.08.2005. |
MG |
Added optional bExtend argument to
XTextOut and XGetTextExtent (XFTGDI.f90). |
|
01.08.2005. |
MG |
Fixed type of xWndAfter argument of
XSetWindowPos routine to agree with documentation
(XFTWnd.f90). |
|
01.08.2005. |
MG |
Implemented forgotten XPostMessage
(XFTWnd.f90). |
|
01.08.2005. |
MG |
Added XStdCursor.
(XFTWnd.f90) |
|
01.08.2005. |
MG |
Added XScrollWindow.
(XFTGDI.f90) |
|
01.08.2005. |
MG |
Added XFTCaret module. |
|
01.08.2005. |
JD |
Added .NET Application Wizard for IVF
Release. |
|
09.07.2005. |
JD |
CVF AppWizard enhanced with "Additional
Features" tab. |
|
09.07.2005. |
JD |
Added WM_DROPFILES handler (XFTWnd.f90
and XWizard.f90). |
|
09.07.2005. |
JD |
Added code comments and return values
for XWizard-generated code (XWizard.f90). |
|
09.07.2005. |
JD |
Implemented WM_QUERYENDSESSION
(XFTWnd.f90). |
|
09.07.2005. |
JD |
Implemented bClip argument to
XSetViewport and added XSetClipping routine
(XFTGDI.f90). |
|
07.07.2005. |
JD |
Added XWrite routine
(XFTGDI.f90). |
|
04.07.2005. |
MG JD |
Fixed wrong WM_KEYUP prototype in
XWizard and documentation. |
|
04.07.2005. |
MG JD |
Fixed various documentation errors.
(XFTGDI) |
|
19.06.2005. |
JD |
Added XSetScaling routine.
(XFTGDI) |
1.1.12 (June 2005.)
|
03.06.2005. |
JD |
XMenuGetLog retrieved inverse result for
checked/unchecked state (XMENU_STATE). Fixed. (XFTMenu) |
|
01.06.2005. |
JD |
Added XFTToolbar.f90. Documentation
appended. |
|
31.05.2005. |
JD |
PXCreateBitmap_Rsrc now properly returns
.FALSE. when it fails (XFTGDI.f90). |
|
12.02.2004. |
JD |
Removed CS_HREDRAW and CS_VREDRAW styles
from XFT Window class (XFTWnd.f90) |
|
10.01.2004. |
MG |
Added XCtlGetPos routine. Documentation
appended. (XFTCtrl.f90) |
|
20.12.2004. |
MG |
Added calls to FXLV_BackMap, FXLV_FwdMap
(XFTCtrl). |
|
20.12.2004. |
MG |
Added extra argument to XCtlGetInt for
ListView control selections. (XFTCtrl). |
|
20.12.2004. |
MG |
Added CTL_COLUMNORDER processing.
(XFTCtrl). |
|
20.12.2004. |
MG |
Added LVS_EX_HEADERDRAGDROP style to
ListView control. (XFTListView::FXLV_Init) |
|
20.12.2004. |
MG |
Added to XLV_OnColumnClick to maintain
selections across sort (XFTListView). |
|
20.12.2004. |
MG |
Additions to PXLV_ParseItem,
PXLV_SortCallback, and PXLV_VirtualSortCallback to accommodate
T_SYSTEMTIME variables (XFTListView). |
|
20.12.2004. |
MG |
Added subroutine PXDateTime; also
FXLV_BackMap and FXLV_FwdMap to insure row communication w/ pgmr is
in terms of the original usertype array
(XFTListView). |
1.1.11 (November 30. 2004.)
|
30.11.2004. |
JD |
Added ListView support both in XFTCtrl
and XFLOGM2.0. Documentation appended. |
|
15.11.2004. |
JD |
XCtlGetArray now accepts only a POINTER
array. This fixes potential sizing problems, but the user
application must be careful to DEALLOCATE it. |
|
15.11.2004. |
JD |
XSetCursor fixed (missing LOWORD test
for lparam in XFTWnd::FXWindowProc/WM_SETCURSOR). |
|
12.11.2004. |
JD |
Fixed reallocation of xWnd%xCtl array
(UBOUND was required instead of SIZE; XCTL property had to be
reassigned) in XFTCtrl::XCtlCreate.> |
|
12.11.2004. |
JD |
XCtlCreate did not work within dialogs,
because return value from FXWndProc should have been returned via
DWL_MSGRESULT, not directly. |
1.0.10 (October 5. 2004.)
|
05.10.2004. |
JD |
WORKING IVF8.1 VERSION
RELEASED |
|
05.10.2004. |
JD |
Static owner-drawn controls fixed
(forgot to apply copying of DRAWITEMSTRUCT%hDC into X_DC%hDC in
XFTWND::FXCtlCallback). |
|
05.10.2004. |
JD |
All internal uses of XGetWindow() fixed
to use a temporary pointer variable, in order to workaround 245385
IVF8.1 bug (which is partially fixed as of IVF
8.1.021). |
|
04.10.2004. |
JD |
Fixed MDI Wizard skeleton code which
produced a memory leak on child window destruction, because UD%xWnd%
members were not deallocated properly. XFreeWindow made public (to
be documented one day). |
|
04.10.2004. |
JD |
Fixed AppWizard bug where premature
"Finish" button has caused an exception. AppWizard now retrieves
custom settings in the registry, sharing entries with XFT
Wizard. |
|
04.10.2004. |
JD |
Fixed WM_NCDESTROY handler, which has
never been called because window binding was released prematurely
(on WM_DESTROY) (XFTWnd::FXWindowProc) |
|
04.10.2004. |
JD |
Fixed XMDIDestroy, which has never
worked due to wrong intent(OUT) & interchanged WM_MDIDESTROY
params (XFTMDI::XMDIDestroy) |
|
04.10.2004. |
JD |
Fixed MDI applications, which were
screwed since 1.0.6 due to changed window-binding behaviour
(XFTWnd::FXWindowProc) |
1.0.9 (August 17. 2004.)