Hide

SftTabs/DLL 6.5 - Tab Control

Display
Print

Upgrading to Version 6.5

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

SftTabs/DLL 6.5 and an older version of SftTabs/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.

Upgrading to Version 6.5

Even though SftTabs/DLL 6.5 is not completely upward compatible, the conversion effort is very minimal. Some structures used in earlier releases of SftTabs have been increased in size, resulting in the requirement to recompile your source code. To allow for SftTabs/DLL 6.0 and this new version to coexist when used by multiple applications, the DLLs have been renamed and a new window class is used.

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

Converting an Existing Application

The conversion effort to implement SftTabs/DLL 6.5 in an application that currently uses version 6.0 is minimal. Most applications will only have to change the window class name used in DIALOG resources (see below).

1. Window Class Change

In SftTabs/DLL 6.0 (the release prior to SftTabs/DLL 6.5), the window class used for SftTabs was SftTabsControl60. This window class has been dropped and has been renamed to SftTabsControl65.

Any DIALOG resources that use the old window classes must be changed to use SftTabsControl65. 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 SFTTABS_CLASS.

2. 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".

3. SFTTABS_CONTROL, New Members, Initialization

In order to use new features, SetVersion must be called with the new version indicator SFTTABS_6_5. Once the new version is activated in your source code, the new members found in the SFTTABS_CONTROL structure must be initialized. If SetVersion is called with an earlier version indicator, these fields need not be initialized. New tab control features will however not be available.

MemberSuggested Initialization Value
new in 6.5
tabsAlignmentSFTTABS_TABS_LEFT (0)
layoutModeSFTTABS_LAYOUT_DISTRIBUTE (0)
autoFlowMinRows0
autoFlowMaxRows0
fReorderFALSE
fDragDropFALSE
new in 6.0
forcedSize0
fSwitchOnReleaseFALSE
fCompatibleRenderingFALSE
fNoBorderFALSE
new in 5.0
fClosableFALSE
fCloseDisabledFALSE
fSendWMCLOSEFALSE
fCloseFullSizeFALSE
buttonAlignment0
closeButtonAlignment0
fMinimizeButtonFALSE
fMinimizeDisabledFALSE
fRestoreButtonFALSE
fRestoreDisabledFALSE
hButtonBitmap2NULL
hButtonBitmap2DisabledNULL
szLeftToolTip_T("")
szRightToolTip_T("")
szCloseToolTip_T("")
szMinimizeToolTip_T("")
szRestoreToolTip_T("")
nCustomCode0

By using the suggested initialization values, the tab control will continue to operate as in earlier versions.

4. SFTTABS_TAB, New Members, Initialization

In order to use new features, SetVersion must be called with the new version indicator SFTTABS_6_5. Once the new version is activated in your source code, the new members found in all SFTTABS_TAB structures for the tab control must be initialized. If SetVersion is called with an earlier version indicator, these fields need not be initialized. New tab control features will however not be available.

MemberSuggested Initialization Value
new in 6.5
fHasCloseButtonFALSE
gap20
TabPicture2Sft_ClearPicture
TabPicture2ActiveSft_ClearPicture
TabPicture2DisabledSft_ClearPicture
TabPicture2HotSft_ClearPicture
new in 6.0
TabPictureSft_ClearPicture
TabPictureHotSft_ClearPicture
TabPictureDisabledSft_ClearPicture
new in 5.0
colorBgStartSFTTABS_NOCOLOR
colorBgEndSFTTABS_NOCOLOR
colorBgSelStartSFTTABS_NOCOLOR
colorBgSelEndSFTTABS_NOCOLOR
colorClientAreaStartSFTTABS_NOCOLOR
colorClientAreaEndSFTTABS_NOCOLOR

By using the suggested initialization values, the tab control will continue to operate as in earlier versions.

5. 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 library Gdiplus.lib must be added to the linker project settings (see the section "Building Applications").


Last Updated 08/13/2020 - (email)
© 2024 Softel vdm, Inc.