HeaderPane
Main
Hide

SftTree/DLL 8.0 - Tree Control

Share Link
Print

Upgrading to Version 8.0

Only a minimal conversion is required when upgrading from an earlier version of SftTree/DLL to SftTree/DLL 8.0. SftTree/DLL 8.0 is virtually 100% source compatible with SftTree/DLL 7.5. Your application(s) must be recompiled to use SftTree/DLL 8.0. Additional upgrade requirements exist when upgrading from SftTree/DLL 4.0 and older versions. Please see "Upgrading from SftTree/DLL 4.0" for more information.

SftTree/DLL 8.0 and older versions 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.

Windows versions prior to Windows 10 are no longer supported. For support of older platforms, an earlier version of SftTree/DLL must be used instead.

Upgrading to Version 8.0

To allow for SftTree/DLL 8.0 to coexist with older versions on the same system, the Dlls have been renamed and a new window class is used.

SftTree/DLL 8.0 is source code compatible with older releases of SftTree/DLL, provided the following changes are made in existing applications:

Converting an Existing Application

The conversion effort to upgrade an application using SftTree/DLL 7.5 is very minimal. Most applications will only have to change the window class name used in DIALOG resources (see below).

Window Class Change

In SftTree/DLL 7.5 (the release prior to SftTree/DLL 8.0), the window class used for SftTree was SftTreeControl75 (SftTreeSplit75). These window classes have been dropped and have been renamed to SftTreeControl80 (SftTreeSplit80).

Any DIALOG resources that use the old window classes must be changed to use SftTreeControl80 and SftTreeSplit80. Without this change, the dialogs will not be displayed.

If the window class name was "hard-coded" in calls to CreateWindow(Ex), the class name must also be changed. The preferred method is to use the preprocessor symbol SFTTREE_CLASS (SFTTREESPLIT_CLASS).

Dll And Lib Files Name Change

The Dlls and Lib files have been renamed for this new release. For the new file names, please see the section "Building Applications".

When linking statically, the libraries Gdiplus.lib and Msimg32.lib must be added to the linker project settings (see the section "Building Applications").

What's New in 8.0

SftTree/DLL 8.0 adds four major accessibility and rendering features that are enabled automatically on existing controls with no API changes required. Each has a dedicated guide:

Existing applications inherit dark mode, high contrast, screen-reader support and automatic control-owned metric scaling by simply recompiling against the 8.0 headers and libraries. To also scale caller-supplied images and pixel dimensions automatically, one-line opt-in calls are available - see SetImageScaling and SetPixelScaling.