In the CET 17.0 release in May 2026, Catalogue Component Tab and Component Tab Creator will reach their End-of-Life (EOL) and be retired completely.
As part of the EOL effort,
All developers are strongly encouraged to migrate to the new Table of Content (ToC) Toolbox introduced in 15.5 Major as the replacement for the Component Tab - [read more and learn how to migrate or build toolbox with ToC here] (https://dev-docs.configura.com/design-system/cet-developer-guides/catalogue-table-of-contents-with-the-new-ui)
The following interfaces will be removed as part of the Component Tab and Component Tab Creator EOL effort:
Functions: Removed: public bool dsCloneToolboxes(DataCatalog catalog, ProductCatalog productCatalog, DsToolboxCreatorToolboxCards toolboxCards) Removed: public str dsToolboxFileStr(DataCatalog catalog, DsToolboxCreatorToolboxCards cards, DsToolboxCreatorToolboxCard card)
Note: cm.abstract.dataSymbol.ui.toolboxCreator package is completely removed. If your extension has dependency to this package, please remove it.
// Constants Removed: public const str dsToolboxCreatorFileType = ".cmtbxc"; // Functions Removed: public Image DsToolboxCreatorLoadToolboxImage(Url file) Removed: public DsToolboxCreatorExtensionToolboxCard dsToolboxCreatorCreateExtensionToolboxCard(Window parent, symbol pkg, DsToolboxCreatorToolboxCard card, str sortKey, str groupId, str libraryFunctionName=null, Image image=null, str label=null) Removed: public str tbCatCardStatsEntityKey(DsCatalogToolboxData cData) Removed: public void dsToolboxCreatorToolboxCardSetSectionLabelAnimationEnv(Window window, DsDragAnimationEnv env) Removed: public void dsToolboxCreatorToolboxCardSetSectionAnimationEnv(Window window, DsDragAnimationEnv env) Removed: public void dsToolboxCreatorToolboxCardSetThumbnailViewAnimationEnv(Window window, DsDragAnimationEnv env) Removed: public void dsToolboxCreatorToolboxCardSetToolboxSectionWindowAnimationEnv(Window window, DsDragAnimationEnv env) Removed: public void dsToolboxCreatorToolboxCardSetHeaderAnimationEnv(Window window, DsDragAnimationEnv env) Removed: public void dsToolboxCreatorToolboxCardSetImageSectionAnimationEnv(Window window, DsDragAnimationEnv env) Removed: public void dsToolboxCreatorToolboxCardSetSchemeButtonAnimationEnv(Window window, DsDragAnimationEnv env) Removed: public Library dsToolboxCreatorLibraryFromCard(Card card, symbol pkg) Removed: public void faceliftPreprocess(Library library) Removed: public str->str dsDefaultSchemeDescriptionMap(str{} languages) // Classes Removed: public class DsToolboxCreatorCardPropertyWindow extends SubWindow Removed: public class DsToolboxCreatorCardWindow extends CardWindow Removed: public class DsToolboxCreatorControlWindow extends SubWindow Removed: public class DsToolboxCreatorDataCatalogHeader extends DsDataCatalogHeader Removed: public class DsToolboxCreatorDataCatalogSectionedLabel extends DsDataCatalogSectionedLabel Removed: public class DsToolboxCreatorDataCatalogSectionedScrollableSubWindow extends DsDataCatalogSectionedScrollableSubWindow Removed: public class DsToolboxCreatorDesignWindow extends SubWindow Removed: public class DsToolboxCreatorDialog extends DialogWindow Removed: public class DsToolboxCreatorDeletionSubWindow extends SubWindow Removed: public class DsToolboxCreatorDragAnimation extends DsDragAnimation Removed: public class DsToolboxCreatorDropDownTreeView extends DropDownTreeView Removed: public class DsToolboxCreatorDynamicCard extends DsDynamicCard Removed: public class DsToolboxCreatorExtensionToolboxCard extends ExtensionToolboxCard Removed: public class DsToolboxCreatorFillerInsertDragAnimation extends DsToolboxCreatorThumbnailViewMoveDragAnimation Removed: public class DsToolboxCreatorFillerMoveDragAnimation extends DsToolboxCreatorThumbnailViewMoveDragAnimation Removed: public class DsToolboxCreatorFillerThumbnail extends DsThumbnail Removed: public class DsToolboxCreatorFocusLines Removed: public class DsToolboxCreatorFocusRect Removed: public class DsToolboxCreatorGroupInsertDragAnimation extends DsToolboxCreatorDragAnimation Removed: public class DsToolboxCreatorGroupMoveDragAnimation extends DsToolboxCreatorGroupInsertDragAnimation Removed: public class DsToolboxCreatorHeaderInsertDragAnimation extends DsToolboxCreatorGroupInsertDragAnimation Removed: public class DsToolboxCreatorHeaderLimb extends DsDynamicHeaderLimb Removed: public class DsToolboxCreatorHeaderMoveDragAnimation extends DsToolboxCreatorGroupMoveDragAnimation Removed: public class DsToolboxCreatorHeaderPropertyWindow extends SubWindow Removed: public class DsToolboxCreatorImageSectionInsertDragAnimation extends DsToolboxCreatorDragAnimation Removed: public class DsToolboxCreatorImageSectionMoveDragAnimation extends DsToolboxCreatorImageSectionInsertDragAnimation Removed: public class DsToolboxCreatorImageSectionPropertyWindow extends ShrinkWindow Removed: public class DsToolboxCreatorLibraryLimb extends DsDynamicLibraryLimb Removed: public class DsToolboxCreatorProductCatalogLimbBuilder extends DsProductCatalogLimbBuilder Removed: public class DsToolboxCreatorProductLevelPropertySubWindow extends ShrinkWindow Removed: public class DsToolboxCreatorProductViewInsertDragAnimation extends DsDragAnimation Removed: public class DsToolboxCreatorPropertyWindow extends SubWindow Removed: public class DsToolboxCreatorSchemeButton extends DsDataCatalogSchemeButton Removed: public class DsToolboxCreatorSchemeButtonInsertDragAnimation extends DsToolboxCreatorDragAnimation Removed: public class DsToolboxCreatorSchemeButtonMoveDragAnimation extends DsToolboxCreatorSchemeButtonInsertDragAnimation Removed: public class DsToolboxCreatorSchemeButtonPropertyWindow extends ShrinkWindow Removed: public class DsToolboxCreatorSectionLabelPropertyWindow extends SubWindow Removed: public class DsToolboxCreatorSideBarPropertiesPropertyWindow extends DsInWindowSideBarProperties Removed: public class DsToolboxCreatorThumbnailsLimb extends DsThumbnailsLimb Removed: public class DsToolboxCreatorThumbnailPropertyWindow extends SubWindow Removed: public class DsToolboxCreatorThumbnailViewMoveDragAnimation extends DsThumbnailViewMoveDragAnimation Removed: public class DsToolboxCreatorToolboxCard Removed: public class DsToolboxCreatorToolboxCards Removed: public class DsToolboxCreatorToolboxSectionedScrollableSubWindow extends ToolboxSectionedScrollableSubWindow Removed: public class DsToolboxCreatorToolboxThumbnail extends DsToolboxThumbnail Removed: public class DsToolboxCreatorToolboxThumbnailView extends DsToolboxThumbnailView Removed: public class DsToolboxCreatorTooltip Removed: public class DsToolboxCreatorTreeViewItem extends TreeViewItem Removed: public class DsToolboxCreatorHeaderTreeViewItem extends DsToolboxCreatorTreeViewItem Removed: public class DsToolboxCreatorGroupTreeViewItem extends DsToolboxCreatorTreeViewItem Removed: public class DsToolboxCreatorProductViewTreeViewItem extends DsToolboxCreatorTreeViewItem Removed: public class DsToolboxCreatorFillerTreeViewItem extends DsToolboxCreatorTreeViewItem Removed: public class DsToolboxCreatorImageSectionTreeViewItem extends DsToolboxCreatorTreeViewItem Removed: public class DsToolboxCreatorSchemeButtonTreeViewItem extends DsToolboxCreatorTreeViewItem Removed: public class DsToolboxCreatorUIBuilder extends DsNewUIBuilder Removed: public class DsToolboxCreatorUIGroupBuilder extends DsUIGroupBuilder
DsAPIPData which is the data used for snappers imported from stage has been removed. Stage snappers will now use DsPData which is used by regular catalogue symbols to be more consistent with CET catalogue symbols.
As part of the EOL effort, the Component Tab file format (.cmtbxt) will also be retired and no longer be loadable as the streamed Component Tab class packages are removed. Ideally the Component Tab interfaces should only be streamed as part of the cmtbxt file format, and should not (and is not supposed to) be streamed with other cm file format (e.g., drawings, favorites). However, if the classes were somehow streamed as part of other file format, a new PackageStreamRenamer class is introduced to redirect these missing classes to a temporary placeholder class. Do note that this class serves no meaningful purpose, as it merely exists to suppress or bypass any load failure/errors caused by missing Component Tab related packages.
In developMode, the renamer will print extra info and a short stack dump so that it won't go fully unnoticed.
In cm.abstract.dataSymbol.renamer.cm:
/** * Stream renamer for removed toolbox creator package (cm.abstract.dataSymbol.ui.toolboxCreator). * which was permanently removed starting 17.0. * * Handles and redirect the streamed objs to a dummy class so it does not crash CET. */ private class DsToolboxCreatorRenamer extends PackageStreamRenamer { public void type(version v, Symbol pkg, Str name, Str fileName=null) { if (pkg.v == "cm.abstract.dataSymbol.ui.toolboxCreator") { if (developMode) { pln("Attempting to load Component Tab interfaces!".eAngry; #pkg; #name); stackDump(3); } pkg.v = "cm.abstract.dataSymbol"; name.v = "DsDummyTBCreatorStreamPlaceHolder"; } } /** * Deprecate old packages. */ final private void deprecateOldPackages() { // Used to deprecate packages info stored in drawings to avoid load warnings about missing packages if (StreamRenamer r = globalStreamRenamer) { r.deprecatePkg((#"cm.abstract.dataSymbol.ui.toolboxCreator")); } } } /** * Placeholder for streamed classes from 'cm.abstract.dataSymbol.ui.toolboxCreator'. */ public class DsDummyTBCreatorStreamPlaceHolder : unstreamable { /** * Load failure event. */ public loadFailedResult loadFailed(ObjectFormatter formatter, LoadFailure failure) { return loadFailedResult.ignore; } }
Previously DsPData used G2 properties by default for its base class. This has now been changed so that subclasses of DsPData will also use G2 properties by default as well.
Old: extend public bool usingG2() { if (blockDataProxy == 0 and proxy) return proxy.usingG2(DsPDataProxyEnv(this)); return (this.class.toS in {"DsPData", "DcPData", "DcPRenderData"} and (!proxy or proxy.class.toS == "DsPDataProxy")); }
New: extend public bool usingG2() { if (blockDataProxy == 0 and proxy) return proxy.usingG2(DsPDataProxyEnv(this)); return true; }
To override the default behavior, override the usingG2 method in your DsPData subclass, or register a DsPDataProxy and override the public bool usingG2(DsPDataProxyEnv env) method to return false.