Difference between revisions of "LMD VCL 2021 - News"

From LMD
Jump to: navigation, search
(General)
(Package Changes)
Line 69: Line 69:
  
 
== Package Changes ==
 
== Package Changes ==
 +
=== General ===
  
=== General ===
+
* Compiler version switches related to old IDEs were removed. Related source code is simplified.
 +
* Support of old non-Unicode IDE versions was removed.
 +
** TLMDString is replaced with string.
 +
** TLMDChar is replaced with Char.
 +
** ect.
 +
* LMD TextPack - moved to legacy.
 +
* LMD Xml implementation - moved to legacy. Delphi's Xml is used instead.
 +
* LMD PNG implementation is removed. Delphi's PNG support is used instead.
 +
 
 +
==== All deprecated symbols ====
 +
 
 +
* TLMDPtrUInt
 +
* TLMDPtrInt
 +
* TLMDSize_t
 +
* PLMDChar
 +
* TLMDChar
 +
* TLMDBaseString
 +
* TLMDStrings
 +
* TLMDMemoryStrings
 +
* TLMDString
 +
* TElFString
 +
* TLMDWideCharArray
 +
* TLMDWideStrings
 +
* TLMDWideStringList
 +
* LMDAnsiXXX string function overloads with "string" parameter types. For example, LMDAnsiTrimL, LMDAnsiTrimR, ect.
 +
 
 +
* LMDIsUnicodePlatform
 +
* LMDWidePathDelimiters
 +
* LMDConvertVCLHintShow
 +
* LMDAnsiSpace
 +
* LMDWideSpace
 +
* LMDAnsiTab
 +
* LMDWideTab
 +
* LMDAnsiCR
 +
* LMDWideCR
 +
* LMDAnsiLF
 +
* LMDWideLF
 +
* LMDAnsiFF
 +
* LMDWideFF
 +
* LMDAnsiBEL
 +
* LMDWideBEL
 +
* LMDAnsiBS
 +
* LMDWideBS
 +
* LMDAnsiESCAPE
 +
* LMDWideESCAPE
 +
* LMDAnsiCRLF
 +
* LMDWideCRLF
 +
* TLMDApplication.UnicodeTitle
 +
* TLMDBalloonFlags
 +
* TLMDNotifyIconData
 +
* LMDSIWindows95
 +
* LMDSIWindows98
 +
* LMDSIWindows2000
 +
* LMDSIWindows2000AdvancedServer
 +
* LMDSIWindowsME
 +
* LMDSIWindowsXP
 +
* LMDSIWindowsXPSP2
 +
* LMDSIWindowsXPSP3
 +
* LMDSIWindowsXPHome
 +
* LMDSIWindowsXPProf
 +
* LMDSINETServer
 +
* LMDSIWindowsXPServer
 +
* LMDSIWindowsXPTabletEdition
 +
* LMDSIWindowXPMediaCenterEdition
 +
* LMDSIWindowsVista
 +
* LMDSIWindowsNT
 +
* LMDSIWindowsNTUp
 +
* LMDSIWindows2000Up
 +
* LMDSIWindowsXPUp
 +
* LMDSIWindowsXPSP2Up
 +
* LMDSIWindows2003Up
 +
* LMDSIWindowsVistaUp
 +
* LMDSIWindowsExtension
 +
* LMDSIUnicodeDelphi 
 +
* TLMDTextMetric
 +
* TLMDAction
 +
* TLMDHintAction
 +
* TLMDUEditAction
 +
* TLMDUEditCut
 +
* TLMDUEditCopy
 +
* TLMDUEditPaste
 +
* TLMDUEditSelectAll
 +
* TLMDUEditUndo
 +
* TLMDUEditDelete
 +
* TLMDUWindowAction
 +
* TLMDUWindowClose
 +
* TLMDUWindowCascade
 +
* TLMDUWindowTileHorizontal
 +
* TLMDUWindowTileVertical
 +
* TLMDUWindowMinimizeAll
 +
* TLMDUWindowArrange
 +
* TLMDUHelpAction
 +
* TLMDUHelpContents
 +
* TLMDUHelpTopicSearch
 +
* TLMDUHelpOnHelp
 +
* TLMDUHelpContextAction
 +
* TLMDUCommonDialogAction
 +
* TLMDUFileAction
 +
* TLMDUFileOpen
 +
* TLMDUFileOpenWith
 +
* TLMDUFileSaveAs
 +
* TLMDUFilePrintSetup
 +
* TLMDUFilePageSetup
 +
* TLMDUFileExit
 +
* TLMDUSearchAction
 +
* TLMDUSearchFind
 +
* TLMDUSearchReplace
 +
* TLMDUSearchFindFirst
 +
* TLMDUSearchFindNext
 +
* TLMDUFontEdit
 +
* TLMDUColorSelect
 +
* TLMDUPrintDlg
 +
* TLMDUBrowseForFolder
 +
* TLMDWideForm
 +
* ELMDPNGOutMemory
 +
* ELMDPNGError
 +
* ELMDPNGUnexpectedEnd
 +
* ELMDPNGInvalidCRC
 +
* ELMDPNGInvalidIHDR
 +
* ELMDPNGMissingMultipleIDAT
 +
* ELMDPNGZLIBError
 +
* ELMDPNGInvalidPalette
 +
* ELMDPNGInvalidFileHeader
 +
* ELMDPNGIHDRNotFirst
 +
* ELMDPNGNotExists
 +
* ELMDPNGSizeExceeds
 +
* ELMDPNGMissingPalette
 +
* ELMDPNGUnknownCriticalChunk
 +
* ELMDPNGUnknownCompression
 +
* ELMDPNGUnknownInterlace
 +
* ELMDPNGNoImageData
 +
* ELMDPNGCouldNotLoadResource
 +
* ELMDPNGCannotChangeTransparent
 +
* ELMDPNGHeaderNotPresent
 +
* ELMDPNGInvalidNewSize
 +
* ELMDPNGInvalidSpec
 +
* ELMDPNGInvalidSourceSize
 +
* ELMDPNGDifferentBitDepth
 +
* TLMDPNGObject
 +
* TLMDWideString
 +
* TLMDWideButton   
 +
* TLMDWideCheckBox
 +
* TLMDWideRadioButton
 +
* TLMDStringArray
 +
* TElXTreeItems.LoadFromWideStringList
 +
* TElXTreeItems.SaveToWideStringList
 +
* TElTreeItems.LoadFromWideStringList
 +
* TElTreeItems.SaveToWideStringList
 +
* TElDBTreeItems.LoadFromWideStringList
 +
* TElDBXTreeItems.LoadFromWideStringList
 +
* TElDBXTreeWideStringEdit
 +
* TJSWideStringList
 +
* TJSString
 +
* TJSStrings
  
 
{{Top}}
 
{{Top}}

Revision as of 12:49, 15 October 2020

<< Back to Getting started page

[edit]

LMD 2021 Minor releases: LMD 2021 History

General

Support for IDEs and operating systems

Major change:

  • Supports any Delphi/C++Builder VCL release version XE2 or better (including new Delphi/C++Builder 10.4 Sydney).
  • 64bit support for all releases!
  • Supported IDEs
    • Delphi XE2 and better
    • C++ Builder XE2 and better
    • All corresponding RAD Studio Products (XE2, XE3, XE4 etc.)
  • Supported operating systems
    • Windows 7 and better

For recent Delphi/C++Builder releases LMD VCL package support same platforms as the VCL which is included in the IDE. [Top]

Component Installers (code signing)

All component installers are now dual signed with SHA1/SHA2 certificate.
[Top]

64bit support

All packages were ported to 64bit. Exception: Compatibility controls (dcllmdlegacy) can not be used in 64bit applications.
[Top]

Package naming conventions

Sinde LMD VCL 2012 package names have been changed to be more consistent with VCL naming convention. LMD version number and IDE version number were removed from package names. Runtime package names are prefixed now with "lmdrt", design-time package names with "dcllmd". Some examples of generated package file names are: lmdrtdocking.dcp, lmdrtdocking.bpi, lmdrtdocking.lib, dcllmddocking.dcp, dcllmddocking.bpi, dcllmddocking.lib. IDE version suffix is still included in generated "bpl", e.g. lmdrtdocking_260.bpl for Delphi 10.3 Rio.

This change simplifies porting projects (supposed they are compiled with run-time packages) to another IDE version. Since package references contain neither IDE version nor LMD platform version, migrating to a future IDE version requires almost no changes.
[Top]

LMD 2021 DevUtil

The DevUtil tool was updated (e.g. with Delphi/C++Builder 10.4 Sydney support) and improved. It is now easier than ever to switch between different workspaces (sets of component packages), even leaving the current IDE is no longer required!
[Top]

NG packages now integrated into LMD VCL line

NG packages are now integrated into the LMD VCL line, e.g. the new NG Drag&DropPack is included in LMD-Tools/ElPack/IDE-Tools, which simplifies Drag&Drop operations within but also outside your projects enormously. [Top]

LMD 2021 Reg Utility

Since 2016 release NG Controls uses same license scheme like LMD VCL product line. Thus you can review on your machine available licenses for both LMD VCL and NG products via the RegUtility. Since version 2013 RegUtility installer copies all files to the %APPDATA%\LMD Innovative folder (instead of system folder in previous releases). As known from previous releases the new reg utilities recognize earlier license files (regardless whether they are stored in system or appdata folder), so that only one reg utility is required for current and previous licenses. [Top]

Free access to Git repositories for LMD VCL Complete

We moved our sources to new git-based project structure. All VCL Complete 2021 customers receive free access to the Git repositories (based on GitLab). Visit your customer area and use the displayed link in your 2020 license to connect to GitLab. SSO with credentials for customer area is supported). This new feature replaces the old SVN access option, which was a paid add-on. Please note that this is an optional additional way to access sources - like before you can retrieve sources for allof our products via separate source installer. Check also Quick overview for more info. [Top]

New subscription model and new customer area

We received some criticism for our old update policy (especially observing the very fast Embarcadero release cycle and our yearly updates).
Old update policy included free minor updates with same major version number - until next major release was available. We offered only for VCL Complete packages subscription models.
Following changes were introduced with 2016 licenses:

  • Each full- or update purchase includes now a one year subscription (free-of-charge)

This one-year subscription refers to major version updates. If a new major version is released within subscription period, you'll receive automatically new version free of charge. VCL Complete customers will receive even fully new LMD VCL products released in subscription period.

  • Minor updates with same major version number are handled like before:

These updates are always free of charge for all major (products LMD-Tools, ElPack, IDE-Tools, etc.) and standalone packs. These updates are placed in our protected download areas and can be downloaded free of charge - anytime (using your registration utility).

  • What happens when subscription expires?

Subscription period refers only to the right receiving free major version updates.
If your subscription expires, your licenses behaves like before (free minor updates until next major release, perpetual use of the current license).

  • How to renew

Renewals for existing licenses will be applied as extension period to the end of your previous subscription (for example, if your subscription expires 11-Dec-2016, renewing will give you updates until 11-Dec-2017). If your existing subscription has been expired for over three months, you will receive major updates for at least 9 months from the date of renewal. Please note that the term “subscription period” refers to major updates only. As usual product licenses never expire, minor updates with same major version number are always included free of charge and so on.

  • Will I receive notification mails to renew?

We send you notification emails before subscription expires. If you don’t want to receive them, check your profile page and uncheck option “I want to receive mails about my licenses expiration”.

  • Early renewal discounts and update pricing

We honour early renewals. Check your profile page to receive personal offers. Within one year (after subscription period expired) you can renew your subscription for a special renewal rate. After that standard price applies. Upgrade orders (from pre-2016 releases) as known before (to start initial subscription period) will be possible until end of 2016.
To reflect new changes we introduced a new customer area, where customers can review and check license status at one single place.
[Top]


Package Changes

General

  • Compiler version switches related to old IDEs were removed. Related source code is simplified.
  • Support of old non-Unicode IDE versions was removed.
    • TLMDString is replaced with string.
    • TLMDChar is replaced with Char.
    • ect.
  • LMD TextPack - moved to legacy.
  • LMD Xml implementation - moved to legacy. Delphi's Xml is used instead.
  • LMD PNG implementation is removed. Delphi's PNG support is used instead.

All deprecated symbols

  • TLMDPtrUInt
  • TLMDPtrInt
  • TLMDSize_t
  • PLMDChar
  • TLMDChar
  • TLMDBaseString
  • TLMDStrings
  • TLMDMemoryStrings
  • TLMDString
  • TElFString
  • TLMDWideCharArray
  • TLMDWideStrings
  • TLMDWideStringList
  • LMDAnsiXXX string function overloads with "string" parameter types. For example, LMDAnsiTrimL, LMDAnsiTrimR, ect.
  • LMDIsUnicodePlatform
  • LMDWidePathDelimiters
  • LMDConvertVCLHintShow
  • LMDAnsiSpace
  • LMDWideSpace
  • LMDAnsiTab
  • LMDWideTab
  • LMDAnsiCR
  • LMDWideCR
  • LMDAnsiLF
  • LMDWideLF
  • LMDAnsiFF
  • LMDWideFF
  • LMDAnsiBEL
  • LMDWideBEL
  • LMDAnsiBS
  • LMDWideBS
  • LMDAnsiESCAPE
  • LMDWideESCAPE
  • LMDAnsiCRLF
  • LMDWideCRLF
  • TLMDApplication.UnicodeTitle
  • TLMDBalloonFlags
  • TLMDNotifyIconData
  • LMDSIWindows95
  • LMDSIWindows98
  • LMDSIWindows2000
  • LMDSIWindows2000AdvancedServer
  • LMDSIWindowsME
  • LMDSIWindowsXP
  • LMDSIWindowsXPSP2
  • LMDSIWindowsXPSP3
  • LMDSIWindowsXPHome
  • LMDSIWindowsXPProf
  • LMDSINETServer
  • LMDSIWindowsXPServer
  • LMDSIWindowsXPTabletEdition
  • LMDSIWindowXPMediaCenterEdition
  • LMDSIWindowsVista
  • LMDSIWindowsNT
  • LMDSIWindowsNTUp
  • LMDSIWindows2000Up
  • LMDSIWindowsXPUp
  • LMDSIWindowsXPSP2Up
  • LMDSIWindows2003Up
  • LMDSIWindowsVistaUp
  • LMDSIWindowsExtension
  • LMDSIUnicodeDelphi
  • TLMDTextMetric
  • TLMDAction
  • TLMDHintAction
  • TLMDUEditAction
  • TLMDUEditCut
  • TLMDUEditCopy
  • TLMDUEditPaste
  • TLMDUEditSelectAll
  • TLMDUEditUndo
  • TLMDUEditDelete
  • TLMDUWindowAction
  • TLMDUWindowClose
  • TLMDUWindowCascade
  • TLMDUWindowTileHorizontal
  • TLMDUWindowTileVertical
  • TLMDUWindowMinimizeAll
  • TLMDUWindowArrange
  • TLMDUHelpAction
  • TLMDUHelpContents
  • TLMDUHelpTopicSearch
  • TLMDUHelpOnHelp
  • TLMDUHelpContextAction
  • TLMDUCommonDialogAction
  • TLMDUFileAction
  • TLMDUFileOpen
  • TLMDUFileOpenWith
  • TLMDUFileSaveAs
  • TLMDUFilePrintSetup
  • TLMDUFilePageSetup
  • TLMDUFileExit
  • TLMDUSearchAction
  • TLMDUSearchFind
  • TLMDUSearchReplace
  • TLMDUSearchFindFirst
  • TLMDUSearchFindNext
  • TLMDUFontEdit
  • TLMDUColorSelect
  • TLMDUPrintDlg
  • TLMDUBrowseForFolder
  • TLMDWideForm
  • ELMDPNGOutMemory
  • ELMDPNGError
  • ELMDPNGUnexpectedEnd
  • ELMDPNGInvalidCRC
  • ELMDPNGInvalidIHDR
  • ELMDPNGMissingMultipleIDAT
  • ELMDPNGZLIBError
  • ELMDPNGInvalidPalette
  • ELMDPNGInvalidFileHeader
  • ELMDPNGIHDRNotFirst
  • ELMDPNGNotExists
  • ELMDPNGSizeExceeds
  • ELMDPNGMissingPalette
  • ELMDPNGUnknownCriticalChunk
  • ELMDPNGUnknownCompression
  • ELMDPNGUnknownInterlace
  • ELMDPNGNoImageData
  • ELMDPNGCouldNotLoadResource
  • ELMDPNGCannotChangeTransparent
  • ELMDPNGHeaderNotPresent
  • ELMDPNGInvalidNewSize
  • ELMDPNGInvalidSpec
  • ELMDPNGInvalidSourceSize
  • ELMDPNGDifferentBitDepth
  • TLMDPNGObject
  • TLMDWideString
  • TLMDWideButton
  • TLMDWideCheckBox
  • TLMDWideRadioButton
  • TLMDStringArray
  • TElXTreeItems.LoadFromWideStringList
  • TElXTreeItems.SaveToWideStringList
  • TElTreeItems.LoadFromWideStringList
  • TElTreeItems.SaveToWideStringList
  • TElDBTreeItems.LoadFromWideStringList
  • TElDBXTreeItems.LoadFromWideStringList
  • TElDBXTreeWideStringEdit
  • TJSWideStringList
  • TJSString
  • TJSStrings

[Top]

Changes/Enhancements since initial LMD VCL 2020 release

General

  • Compiler version switches related to old IDEs were removed. Related source code is simplified.
  • Support of old non-Unicode IDE versions was removed.
    • TLMDString is replaced with string.
    • TLMDChar is replaced with Char.
    • ect.
  • LMD TextPack - moved to legacy.
  • LMD Xml implementation - moved to legacy. Delphi's Xml is used instead.
  • LMD PNG implementation is removed. Delphi's PNG support is used instead.

All deprecated symbols

  • TLMDPtrUInt
  • TLMDPtrInt
  • TLMDSize_t
  • PLMDChar
  • TLMDChar
  • TLMDBaseString
  • TLMDStrings
  • TLMDMemoryStrings
  • TLMDString
  • TElFString
  • TLMDWideCharArray
  • TLMDWideStrings
  • TLMDWideStringList
  • LMDAnsiXXX string function overloads with "string" parameter types. For example, LMDAnsiTrimL, LMDAnsiTrimR, ect.
  • LMDIsUnicodePlatform
  • LMDWidePathDelimiters
  • LMDConvertVCLHintShow
  • LMDAnsiSpace
  • LMDWideSpace
  • LMDAnsiTab
  • LMDWideTab
  • LMDAnsiCR
  • LMDWideCR
  • LMDAnsiLF
  • LMDWideLF
  • LMDAnsiFF
  • LMDWideFF
  • LMDAnsiBEL
  • LMDWideBEL
  • LMDAnsiBS
  • LMDWideBS
  • LMDAnsiESCAPE
  • LMDWideESCAPE
  • LMDAnsiCRLF
  • LMDWideCRLF
  • TLMDApplication.UnicodeTitle
  • TLMDBalloonFlags
  • TLMDNotifyIconData
  • LMDSIWindows95
  • LMDSIWindows98
  • LMDSIWindows2000
  • LMDSIWindows2000AdvancedServer
  • LMDSIWindowsME
  • LMDSIWindowsXP
  • LMDSIWindowsXPSP2
  • LMDSIWindowsXPSP3
  • LMDSIWindowsXPHome
  • LMDSIWindowsXPProf
  • LMDSINETServer
  • LMDSIWindowsXPServer
  • LMDSIWindowsXPTabletEdition
  • LMDSIWindowXPMediaCenterEdition
  • LMDSIWindowsVista
  • LMDSIWindowsNT
  • LMDSIWindowsNTUp
  • LMDSIWindows2000Up
  • LMDSIWindowsXPUp
  • LMDSIWindowsXPSP2Up
  • LMDSIWindows2003Up
  • LMDSIWindowsVistaUp
  • LMDSIWindowsExtension
  • LMDSIUnicodeDelphi
  • TLMDTextMetric
  • TLMDAction
  • TLMDHintAction
  • TLMDUEditAction
  • TLMDUEditCut
  • TLMDUEditCopy
  • TLMDUEditPaste
  • TLMDUEditSelectAll
  • TLMDUEditUndo
  • TLMDUEditDelete
  • TLMDUWindowAction
  • TLMDUWindowClose
  • TLMDUWindowCascade
  • TLMDUWindowTileHorizontal
  • TLMDUWindowTileVertical
  • TLMDUWindowMinimizeAll
  • TLMDUWindowArrange
  • TLMDUHelpAction
  • TLMDUHelpContents
  • TLMDUHelpTopicSearch
  • TLMDUHelpOnHelp
  • TLMDUHelpContextAction
  • TLMDUCommonDialogAction
  • TLMDUFileAction
  • TLMDUFileOpen
  • TLMDUFileOpenWith
  • TLMDUFileSaveAs
  • TLMDUFilePrintSetup
  • TLMDUFilePageSetup
  • TLMDUFileExit
  • TLMDUSearchAction
  • TLMDUSearchFind
  • TLMDUSearchReplace
  • TLMDUSearchFindFirst
  • TLMDUSearchFindNext
  • TLMDUFontEdit
  • TLMDUColorSelect
  • TLMDUPrintDlg
  • TLMDUBrowseForFolder
  • TLMDWideForm
  • ELMDPNGOutMemory
  • ELMDPNGError
  • ELMDPNGUnexpectedEnd
  • ELMDPNGInvalidCRC
  • ELMDPNGInvalidIHDR
  • ELMDPNGMissingMultipleIDAT
  • ELMDPNGZLIBError
  • ELMDPNGInvalidPalette
  • ELMDPNGInvalidFileHeader
  • ELMDPNGIHDRNotFirst
  • ELMDPNGNotExists
  • ELMDPNGSizeExceeds
  • ELMDPNGMissingPalette
  • ELMDPNGUnknownCriticalChunk
  • ELMDPNGUnknownCompression
  • ELMDPNGUnknownInterlace
  • ELMDPNGNoImageData
  • ELMDPNGCouldNotLoadResource
  • ELMDPNGCannotChangeTransparent
  • ELMDPNGHeaderNotPresent
  • ELMDPNGInvalidNewSize
  • ELMDPNGInvalidSpec
  • ELMDPNGInvalidSourceSize
  • ELMDPNGDifferentBitDepth
  • TLMDPNGObject
  • TLMDWideString
  • TLMDWideButton
  • TLMDWideCheckBox
  • TLMDWideRadioButton
  • TLMDStringArray
  • TElXTreeItems.LoadFromWideStringList
  • TElXTreeItems.SaveToWideStringList
  • TElTreeItems.LoadFromWideStringList
  • TElTreeItems.SaveToWideStringList
  • TElDBTreeItems.LoadFromWideStringList
  • TElDBXTreeItems.LoadFromWideStringList
  • TElDBXTreeWideStringEdit
  • TJSWideStringList
  • TJSString
  • TJSStrings

[Top]

Archive

[Top]