SftTree/DLL 7.5 - Tree Control
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 3.0 - Button Control
SftMask/OCX 7.0 - Masked Edit Control
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 7.5 - Tree Control
SftPrintPreview/DLL 2.0 - Print Preview Control (discontinued)
SftTree/DLL 7.5 - Tree Control
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 3.0 - Button Control
SftDirectory 3.5 - File/Folder Control (discontinued)
SftMask/OCX 7.0 - Masked Edit Control
SftOptions 1.0 - Registry/INI Control (discontinued)
SftPrintPreview/OCX 1.0 - Print Preview Control (discontinued)
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 7.5 - Tree Control
SftTabs/NET 6.0 - Tab Control (discontinued)
SftTree/NET 2.0 - Tree Control
This topic only applies if you are upgrading from 4.0 or an older version. If you are upgrading from 4.5 or a newer version, please see "Upgrading to Version 7.5"
Only a minimal conversion is required when upgrading from SftTree/DLL 4.0 (or an earlier version) to SftTree/DLL 7.5. SftTree/DLL 7.5 is virtually source compatible with older releases of SftTree/DLL. Your application(s) must be recompiled to use SftTree/DLL 7.5.
SftTree/DLL 7.5 and an older version of SftTree/DLL can coexist in the same application to make the conversion as easy as possible, however, they cannot be used in the same source code file.
Even though SftTree/DLL 7.5 is not completely upward compatible, the conversion effort is very minimal. Some structures used in earlier releases of SftTree have been increased in size, resulting in the requirement to recompile your source code. To allow for SftTree/DLL 4.0 and this new version to coexist when used by multiple applications, the DLLs have been renamed and a new window class is used.
SftTree/DLL 7.5 is source code compatible with older releases of SftTree/DLL, provided the following changes are made in existing applications:
The conversion effort to implement SftTree/DLL 7.5 in an application that currently uses version 4.0 (or older) is minimal. Most applications will only have to change the window class name used in DIALOG resources (see below).
In releases prior to SftTree/DLL 7.5, the window class used for SftTree was SftTreeControl (SftTreeSplit) or SftTreeControl32 (SftTreeSplit32). These window classes have been dropped and have been renamed to SftTreeControl75 (SftTreeSplit75).
Any DIALOG resources that use the old classes must be changed to use SftTreeControl75 and SftTreeSplit75. Without this change, the dialogs will not be displayed.
If the window class name was "hard-coded" in calls to Create or CreateWindow(Ex), the class name must also be changed. The preferred method is to use the preprocessor symbol SFTTREE_CLASS (SFTTREESPLIT_CLASS).
The DLLs and LIB files have been renamed for this new release. For the new file names, please see the section "Building Applications".
A number of structure members and API functions which only accepted bitmap handles have been replaced with the new SFT_PICTURE type which supports bitmaps, icons and ImageLists.
If these are used, compile errors will result, alerting you to the fact that an obsolete feature is used.
SFTTREE_CELL structure - cell bitmap - the hBmp member is now called CellPicture1
SFTTREE_ROW structure - row header bitmap - the hBmp member is now called RowPicture1
SFTTREE_COLUMN_EX structure - column header bitmap - the hBmp member is now called Picture1
SFTTREE_ITEM - virtual mode - the hLabel and hItem members are now called ItemPicture and LabelPicture
The preprocessor symbol SFTTREE_OBSOLETE_4 can be used to make these old structure members accessible to applications, so no conversion is required. By defining this symbol (using #define SFTTREE_OBSOLETE_4) these structure members can be used as in earlier releases. At the same time you can also use the new SFT_PICTURE type. Once you are ready to use the new SFT_PICTURE type throughout, simply remove SFTTREE_OBSOLETE_4.
At the same time, without defining SFTTREE_OBSOLETE_4, any use of the bitmap members will cause a compile error. While you are encouraged to convert to the new SFT_PICTURE structure, this is not required as long as you define SFTTREE_OBSOLETE_4.
The type DWORD which was used in various structures and API calls in earlier releases has been replaced with the new type SFTTREE_DWORD_PTR in order to support 64-bit applications. This does not affect existing 32-bit applications as this type is identical to a DWORD.
The structure members hLabelBitmap and hItemBitmap of the SFTTREE_DRAWINGINFO structure are no longer supported. SetItemLabelPicture and SetItemPicture should now be used instead.