Change Log (API)

www.CAD6.com

This log lists all major changes in the Malz++Kassner CAD6interface and its documentation.

 

Release 2025.0.4.15 (April 15, 2025)

New enumeration modes MKI_ENUM_ALLLAYERS and MKI_ENUM_BROKEN_LINKS (see MKI_ENUM_*).
New member function Init() in MKI_PLUGIN_DATA.
Enumeration data types MKI_ENUMDATA_ENDLESS and MKI_ENUMDATA_BEAM (see MKI_ENUMDATA_*) have been limited to one element.
New member function DrawPixelBeam() in MKI_DISPLAYDATA.
New member functions ClipLine(), ClipBeam() and ClipEndless() in MKI_LINE.
Removed Step parameter from MKI_DialogInitSlider().

 

Release 2025.0.4.2 (April 2, 2025)

Result values MKI_RESULT_UNDERLINE and MKI_RESULT_STRIKEOUT are no longer available since underlining and strikeout are now fully supported during streaming (see MKI_RESULT_*).

 

Release 2025.0.3.18 (March 18, 2025)

New output mode MKI_PRINTPDF_FLAG_HIGHRES (see MKI_PRINTPDF_FLAG_*).
New function CalcRectangle() in MKI_ENUMDEF_DATA.

 

Release 2025.0.3.4 (March 4, 2025)

MKI_INTERFACE_VERSION changed to 6250.
MKI_MKD_VERSION changed to 6250.
Starting with this release, only 64-bit versions of CAD6 and of the CAD6interface are available. All outdated 32-bit parts have been removed.
Starting with file version 6250, compressed drawing files will be saved in 7-Zip format instead of ZIP format. This makes them about 25% smaller and significantly reduces computing time.
CAD6industrie and CAD6studio now include DirectPDF to create high-resolution PDF files with Unicode texts, all colors models (RGB/HSB, CMYK, gray, CIELab), transparencies, hyperlinks, layers and embedded color space profiles. PDF/A-1b and PDF/A-2b files can be created.
New member PrintDirectPDF in MKI_PRINT_DEVICE; PrintPDF was renamed PrintCAD6PDF.
New members ExportDirectPDF and ExportType in MKI_TASKDEF; ExportPDF was renamed ExportCAD6PDF.
New printing mode MKI_PRINTERTYPE_DIRECTPDF (see MKI_PRINTERTYPE_*).
New output modes MKI_PRINTPDF_FLAG_NO_COMPRESS and MKI_PRINTPDF_FLAG_COLORSPACE (see MKI_PRINTPDF_FLAG_*).
New functions operator == and operator != in MKI_PRINT_ENTRY.
Parameter SerialNumber removed from MKI_PlugInInit().
New functions MKI_GetApplicationState() and MKI_ApplicationIsDisabled().
New function MKI_EnumerateAllRect().
New functions MKI_KeyIsCtrl*().
New constants MKI_APPTYPE_* replace the former MKI_PLUGINCTRL_* for MKI_GetApplicationType() and MKI_PLUGIN_ID.
New members FitMode, FitAlign and FitSize in MKI_BITMAPREF.
New member function UsesFitting() in MKI_BITMAPREF.
New members FitMode and FitAlign in MKI_MULTI_BITMAPREF.
New enumeration data types MKI_ENUMDATA_CHAR_START and MKI_ENUMDATA_CHAR_END (see MKI_ENUMDATA_*).
New member function HasLinkedID() in MKI_ENTITY_BASE.
New bitmap export mode MKI_BITMAPOPTION_PROFILE (see MKI_BITMAPOPTION_*).
New PDF file type option MKI_PRINTPDF_TYPE_PDFA2 (see MKI_PRINTPDF_TYPE_*).
New macro mki_swap using memory copy to exchange two class instances in memory without calling contructors or destructors (see API Macros).
MKI_BLOCKLIST_ROWS increased to 50, resulting in MKI_BLOCKLIST_MAX to be 500 now.
Pen and layer "*Standard" no longer exist in this form; they have been replaced by "- Not assigned to any Layer -" and "- Not assigned to any Pen -" respectively. Functionally, this makes no difference. The former line pattern "*Standard" has been renamed "- Solid Line -". All other "*Standard" have been renamed to "- Standard -" to be more recognizable.
The former "Dynamic Snapping Guide" has been renamed "Temporary Objects". All corresponding constants were changed from _SNAPGUIDE to _TEMP. Other sets of elements that were previously all named "temporary" have been renamed either "provisional", "preliminary", or "precalculated" to avoid confusion among them.
The names of many command ID constants (MKI_MENU_*) have been changed to match their current menu placement. Some have been changed for name consistency. All constants' values remained unchanged!

 

Release 2024.2.12.10 (December 10, 2024)

MKI_NOTIFY_MODIFY_INIT now uses the Data parameter to indicate whether the operation will create a duplicate (possibly requiring new IDs to be assigned) or not.

 

Release 2024.2.10.8 (October 8, 2024)

MKI_INTERFACE_VERSION changed to 6242.
MKI_MKD_VERSION changed to 6242.
New function MKI_WindowGetIdent().
Additional parameters Command and Info for MKI_UndoFinishProcess().
New point input types MKI_POINT_ID_HYPERLINK, MKI_POINT_ID_POSNO, and MKI_POINT_PCEB (see MKI_POINT_*).
Additional dimension number rotation mode MKI_NUMROTATE_180 (see MKI_NUMROTATE_*).
The former class MKI_BEZIER has been renamed MKI_CUBIC_BEZIER.
New member functions GetDerivative(), GetExtremities(), Multiply(), and SetMultiply() in MKI_CUBIC_BEZIER.
New class MKI_QUADRATIC_BEZIER.
New functions MKI_ModelGet() and MKI_ModelSet().
New class MKI_WINDOWSYSTEM, used for new member LastSystem in MKI_MODELDEF and MKI_PAGEDEF.
New class MKI_WINDOWZOOM, used for new member LastZoom in MKI_MODELDEF and MKI_PAGEDEF.
New member WindowActive in =WINDOW= section.
New constant MKI_STARTER_WINDOW_CLASS.

 

Release 2024.1.6.5 (June 5, 2024)

MKI_INTERFACE_VERSION changed to 6241.
New function MKI_DialogControlSetText().
New path ID MKI_STANDARDPATH_SVG for MKI_FileGetStandardPath().
New member function Distort() in MKI_MATRIX.
Several collection item types were renamed (see MKI_COLLECTION_TYPE_*).
New member ExportCapabilities in MKI_PLUGIN_ID.
New conversion macros mki_opacity_to_alpha() and mki_alpha_to_opacity().
MKI_ConvertTextToUTF16() now converts HTML-style Unicode character definitions both in hexadecimal &#C4; and decimal &196; form.
MKI_ClipOpen() and MKI_ClipClose() now implement a stack to allow multiple nested clippings to be created.
New function MKI_ClipGetListCount().
New functions MKI_ClipAddPreliminaryEnd(), MKI_HatchAddPreliminaryEnd(), MKI_MappingAddPreliminaryEnd(), and MKI_ObjectAddPreliminaryEnd().
New member function PreliminaryTerminate() in MKI_BLOCK_ENUM.
New member TextPos in MKI_ENUMDEF_DATA.
New enumeration data type MKI_ENUMDATA_POSITION (see MKI_ENUMDATA_*).
When receiving MKI_ENUMDATA_USED_BITMAP, the bitmap options in MKI_ENUMDEF_DATA (such as gamma and brightness) are initialized.
New class MKI_BITMAP_EFFECT (used in MKI_ENUMDEF_DATA, MKI_BITMAPREF, and MKI_MULTI_BITMAPREF).
New standard icons MKI_ICON_ID_MODE2_* (see MKI_ICON_ID_*).
New pen and layer modes MKI_PENLAYERMODE2_* (see MKI_PENLAYERMODE_*).
New function MKI_ConvertTaggedUTF16ToUTF16(). The former functions MKI_ConvertTextToUTF16() and MKI_ConvertUTF16ToText() have been renamed to MKI_ConvertTaggedAnsiToUTF16() and MKI_ConvertUTF16ToTaggedAnsi().
New function MKI_TransformSurface().

 

Release 2024.0.3.26 (March 26, 2024)

New individual options MKI_SETTING_SMALLDLG_XPROP_A and MKI_SETTING_SMALLDLG_XPROP_B for MKI_SettingGet() and MKI_SettingSet(), replacing the previous option MKI_SETTING_SMALLDLG_XPROP.
New member function IsPosNo() in MKI_ENTITY_GROUP.

 

Release 2024.0.3.12 (March 12, 2024)

MKI_INTERFACE_VERSION changed to 6240.
MKI_MKD_VERSION changed to 6240.
New class MKI_ZOOMDEF containing view display data ("zoom settings").
New constants MKI_PAGE_MODEL for Model Space and MKI_PAGE_NOVAL for undefined page number.
New functions MKI_WindowGetViewZoom() and MKI_WindowSetViewZoom(), replacing the older MKI_WindowGetViewScale() and MKI_WindowSetViewScale().
Additional parameter ResetZoom for MKI_PageSetActive().
New type MKI_HIDELAYERS containing layer visibility information.
New collection type MKI_COLLECTION_TYPE_HIDELAYERS (see MKI_COLLECTION_TYPE_*).
New member LastView in MKI_PAGEDEF and MKI_MODELDEF, replacing several individual members.
New member TabColor in MKI_PAGEDEF.
New page modes MKI_PAGEMODE_DISABLED and MKI_PAGEMODE_TAB_COLOR (see MKI_PAGEMODE_*).
New flags USE_SHOWTABCOLOR, USE_TABCOLOR, and USE_DISABLED in MKI_MULTI_PAGEDEF.
New members HideLayers, MapEditMode and MapEditColor in MKI_MODELDEF.
New mapping editing modes (see MKI_MAPEDITMODE_*).
New Model Space modes MKI_MODELMODE_APPLY_PAGELAYER and MKI_MODELMODE_APPLY_MAPLAYER (see MKI_MODELMODE_*).
New bit-coded member Options in MKI_PRINT_ENTRY replaces several older boolean members and adds MKI_PRINTOPTION_DISABLED (see new constants MKI_PRINTOPTION_*).
New functions MKI_DialogInitMultiCheck() and MKI_DialogHandleMultiCheckInvert() to handle a sequence of check boxes attached to bits in a value.
New member functions GetLengthUnit(), IsArchitect() and IsImperial() in MKI_SYSTEMDEF.
New member function HasSize() in MKI_TASKDEF.
MKI_DrawLineDef() has been removed.
New member Mode in MKI_CREATEBLOCK_DATA and MKI_INSERTBLOCK_DATA, replacing all boolean values there.
Various new point types in MKI_POINT_*.
Various new icons in MKI_ICON_ID_*.
Type of member Comment in MKI_VARIABLEDEF changed from MKI_COMMENTSHORT to MKI_COMMENTLONG.
Variable references can end with a colon to access the variable's comment: ~Name:~.
New member functions GetDistortion(), GetMoveX(), GetMoveY() and GetScaling() in MKI_MATRIX.
MKI_IsTextUTF8() has been renamed to MKI_TextIsUTF8().
New function MKI_ConvertAutoToUTF16().
New database option MKI_DATABASEOPTION_FORCE_DECIMAL_POINT (see MKI_DATABASEOPTION_*).
Additional parameter Apply in MKI_LayerSetActive() and MKI_PenSetActive().
New constants MKI_CUSTOMMENU_MAX and MKI_CUSTOMMENU_SIZE for custom menus in toolbox and panel.
New member Redraw in MKI_UPDATE_DATABASE.
Functions MKI_WindowGetMode() and MKI_WindowSetMode() have been removed.
New option MKI_SETTING_DISPLAY_WINDOWMODE for MKI_SettingGet() and MKI_SettingSet().
Several dialog and control color constants for MKI_SettingGet() have been renamed or removed.
New value WindowMode in drawing file section =WINDOW=.
New layer defaults MKI_DEFLAYER_CENTERCROSS and MKI_DEFLAYER_MIDPERPENDICULAR (see MKI_DEFLAYER_*).
The former functions MKI_DialogEnterIdle() and MKI_DialogHandleCtlColor() have been replaced by MKI_DialogHandleDefaultMessages().
New type MKI_SUBCLASS_LIST containing a list of control sub-classing information.
The former functions MKI_DialogSubclassControl() and MKI_DialogSubclassPinButton() have been removed, use MKI_SUBCLASS_LIST instead.
New functions MKI_DialogInitPropertySheet() and MKI_DialogPropertySheetNoCancel() to handle property sheet dialog windows.
New functions MKI_DialogControlShow(), MKI_DialogControlHide(), MKI_DialogControlEnable(), and MKI_DialogControlDisable().
The former function MKI_DialogCustomButtonText() has been renamed MKI_DialogCustomButtonMenu().

 

Release 2023.2.12.19 (December 19, 2023)

New member Interruptible in MKI_BUFFER.

 

Release 2023.2.10.10 (October 10, 2023)

MKI_INTERFACE_VERSION changed to 6232.
New members ManualRotate, Grouped, and Convert, as well as new modes MODE_EMBED and MODE_CONVERT in MKI_INSERTBLOCK_DATA.
New member function GetOutlineCount() in MKI_ENTITY_OBJECT.
New member function IsFillable() in MKI_FONTDEF.
New extended object flag MKI_EXTFLAG_PARAM, plus corresponding MKI_NOTIFY_EDIT_PARAMETER and MKI_NOTIFY_VIEW_PARAMETER modes for MKI_PlugInNotify.
New function MKI_DialogTrimGenerate().
Additional parameter Secondary for MKI_InputDrawTempEntity(), MKI_InputGetGeneratedSurface(), and MKI_InputGetTempEntity().
New parameters Mode, Tolerance, and Simplify for MKI_InputGetGeneratedSurface() replacing UseSnapGuide.
New class MKI_TIMER implementing a passive high-accuracy timer.
Additional parameter Timer for MKI_BUFFER::AddEnumerate(), MKI_BUFFER::AddTempory() and MKI_BUFFER::Prepare().
New snap result point type definition MKI_SNAPTYPE_* used in MKI_SNAP_POINT.
Snap mode MKI_SNAPMODE_OTHERS renamed to MKI_SNAPMODE_SPECIAL, modes MKI_SNAPMODE_GEO and MKI_SNAPMODE_MARK removed.
Icon numbers MKI_ICON_ID_SNAPMODE_GEO and MKI_ICON_ID_SNAPMODE_MARK are no longer available.
The new MKI_InputGenerateSurfaceStep1() and MKI_InputGenerateSurfaceStep2() functions replace the former MKI_InputGetGeneratedSurface() to allow faster processing of complex scenes and live preview.
New members LineMax and CircleMax in MKI_SIMPLIFY_DATA.
MKI_GeoReverse() has been renamed MKI_TransformReverseAllOutlines() and moved to section "Entity Editing", MKI_TransformReversed() has been renamed MKI_TransformReverseOneOutline(). MKI_TransformSimplified() has been renamed MKI_TransformSimplify(). MKI_TransformInverted() has been renamed MKI_TransformInvert().
All remaining MKI_Geo*() functions have been renamed MKI_Calc*() and moved to section "Calculation".
Changed parameter Simplify for MKI_CalcEquidistant() and MKI_CalcEquidistantEx().
New member functions IsFlagSet() and IsFlagClear() in MKI_BLOCK_BASE, MKI_BLOCK_ENUM and MKI_ENTITY_BASE.
New members LineComment in MKI_LINEDEF, SystemComment in MKI_SYSTEMDEF, HatchComment in MKI_HATCHDEF, and Comment in MKI_VARIABLEDEF.
New function MKI_VariableGetComment().
New member function IsIdentical() in MKI_LINEBLOCKDEF. Members BlockName and LibraryName may be empty to be used as a gap.
The MKI_BASEMODE_SHOW_COMMENTS flag in PenBaseMode of MKI_PENDEF and LayerBaseMode of MKI_LAYERDEF will now be ignored because that setting has become user-controlled. This also affects MKI_PenSetBaseMode() and MKI_LayerSetBaseMode(). When requesting the mode using MKI_PenGetBaseMode() and MKI_LayerGetBaseMode(), the current user setting will be reported (although it cannot be changed).
Additional parameters Background and Text for MKI_DrawEntity(). It no longer allows nullptr as entity pointer.
New function MKI_DrawClear().
New member Size and new member function HasFrame() in MKI_TASKDEF.
New point input types MKI_POINT_SELECTAREA1 and MKI_POINT_SELECTAREA2 (see MKI_POINT_*).
Additional parameters Min and Max in MKI_DialogInt32() and MKI_DialogInt64().
MKI_HATCH_MAX increased to 1,000.
New functions MKI_ProfileReadVariable() and MKI_ProfileWriteVariable().
New pinboard and collection item type MKI_COLLECTION_TYPE_VARIABLE (see MKI_COLLECTION_TYPE_*).
New member Current and new member function AddSorted() in MKI_IDENTDATA.
New commands MKI_NOTIFY_EXT_CONTEXT_FILL, MKI_NOTIFY_CONTEXT_APPLY and MKI_NOTIFY_CONTEXT_HELP for MKI_PlugInNotify() have been added (see MKI_NOTIFY_*) to support the new context menu.
New classes MKI_CONTEXT_COMMAND and MKI_CONTEXT_MENU, as well as constant MKI_PLUGIN_CONTEXT_MAX.

 

Release 2023.1.6.6 (June 6, 2023)

MKI_INTERFACE_VERSION changed to 6231.
MKI_MKD_VERSION changed to 6231.
New function MKI_DialogControlSetCoordinate().
The former class MKI_MULTIENTITY_INFO has been renamed to MKI_MULTI_INFO. All contained classes have been renamed accordingly. All flags corresponding with their elements are now defined locally instead of globally.
New class MKI_MULTI_BASE as a generic base for all multi-entity editing classes such as MKI_MULTI_XPROPERTY.
New member functions Init(), Fill(), Apply() in all multi-entity editing classes such as MKI_MULTI_XPROPERTY.
New member FlagBase in MKI_MULTI_XPROPERTY.
The former member Position (in internal millimeters) has been changed to PointUnits (in length units) in MKI_MULTI_INSTANCE and others to allow correct changing of only one coordinate over multiple entities with a rotated coordinate system.
New multi-page editing classes MKI_MULTI_PAGEDEF and MKI_MULTI_SYSTEMDEF.
New commands MKI_NOTIFY_EXT_GET_INFORMATION and MKI_NOTIFY_EXT_GET_PROPERTY for MKI_PlugInNotify() have been added (see MKI_NOTIFY_*).
The possible return values for all MKI_PlugInNotify() commands are now entirely documented (see MKI_NOTIFY_*).
New mode MKI_EXECMODE_BUTTON_HELP for MKI_PlugInCommand() to display help of plug-in window buttons.
New member function GetMultiXProperty() in MKI_ENTITY_BASE, former member function GetXProperty() has been removed.
New member function IsTextOnlyObject() in MKI_ENTITY_OBJECT.
New functions MKI_DialogHandleRadio() and MKI_DialogInitRadio() for radio button dialog control handling.
New functions MKI_DialogHandleCheckClear(), MKI_DialogHandleCheckInvert(), MKI_DialogHandleCheckSet(), and MKI_DialogInitCheck() for check box dialog control handling.
New classes MKI_TOOLTIP_ENTRY and MKI_TOOLTIP_LIST to easily associate tooltip texts with controls in dialog windows.
Additional parameter NoPrompt for MKI_EditScanForEscape().
New mark symbol form constants (see MKI_MARKFORM_*).
New options MKI_SETTING_MARKFORM, MKI_SETTING_MARKSIZE, MKI_SETTING_MARKZOOMABLE and MKI_SETTING_MARKCOLORED for MKI_SettingGet() and MKI_SettingSet() to influence the display of markings.
New options MKI_SETTING_GRIDFORM and MKI_SETTING_GRIDSIZE for MKI_SettingGet() and MKI_SettingSet() to influence the output of grids.
The Section =PROFILE= entries MKI_MKD_ENTRY_DISPLAY_MARKS, MKI_MKD_ENTRY_OUTPUT_MARK and MKI_MKD_ENTRY_OUTPUT_GRID have been changed.
New icon IDs MKI_ICON_ID_MARK_0 through MKI_ICON_ID_MARK_7 for marking symbol forms.
The term "Scenario" has been replaced with the term "Task" in all aspects of the interface, including type and constant names. The file section keyword =SCENARIO= remains unchanged. In the application, those elements are named "Procedures".
The former "View" menu has been renamed to "Manage", the former "Shape" menu has been renamed to "Modify". As a result, all MKI_MENU_VIEW_ and all MKI_MENU_SHAPE_ constants have been renamed to MKI_MENU_MANAGE_ and MKI_MENU_MODIFY_. In addition, all MKI_MENU_DIM_ constants have been renamed to MKI_MENU_TEXT_ and partly restructured in accordance to the actual menu structure.
New option MKI_GUIDE_RBUTTON_OPTION as well as renamed options MKI_GUIDE_RBUTTON_CANCEL and MKI_GUIDE_RBUTTON_FINISH for MKI_DialogUpdateGuide().
MKI_LIBRARY_MAX increased to 200.

 

Release 2023.0.2.14 (February 14, 2023)

MKI_INTERFACE_VERSION changed to 6230.
MKI_MKD_VERSION changed to 6230.
New inline entity enumeration class MKI_ENTITY_ENUM with list indexes MKI_ENTITYLIST_* and enumeration modes MKI_ENTITYENUM_*.
Added support for 3D mappings (extended object of type MKI_OBJ_MOD2_MAPPING).
New member functions IsExt3D(), IsExt3DAssembly(), IsExt3DMapping(), IsExtGradient(), and IsExtParametric() in MKI_ENTITY_BASE.
New member function IsSpecialObject() in MKI_ENTITY_OBJECT.
New functions MKI_InputDrawFadedRect() and MKI_InputDrawPatch().
Additional parameter Color for MKI_InputDrawReference().
New function MKI_EditRefreshAll().
New function MKI_DrawEntity() to draw an entity preview in a dialog window control.
New member functions ControlDrawInit(), ControlDrawExit(), DrawPixelPatch(), DrawPixelEllipse(), DrawPixelEndless(), IsVisible(), IsPrinted(), IsLocked(), IsSnapped(), and IsGrayed() in MKI_DISPLAYDATA.
New member XProperty in MKI_DISPLAYDATA.
Changed color parameters for many members functions of MKI_DISPLAYDATA.
New functions MKI_ColorConvertD2D() to convert a MKI_COLORVALUE to D2D color format fast.
Additional parameter Text for MKI_DISPLAYDATA::DrawPixelOrigin().
New member functions ApplyDefault(), IsStandard(), IsVisible(), IsPrinted(), IsLocked(), IsSnapped(), and IsGrayed() in MKI_XPROPERTY.
New class MKI_PATCH for simple display elements.
The former command MKI_NOTIFY_GET_TITLE for MKI_PlugInNotify() has been renamed to MKI_NOTIFY_GET_TITLEPTR (see MKI_NOTIFY_*), it now returns the address of a static title text instead of copying the text to a buffer.
The former commands MKI_NOTIFY_EXT_DELETE, MKI_NOTIFY_EXT_MOVE, and MKI_NOTIFY_EXT_COPY for MKI_PlugInNotify() have been replaced with MKI_NOTIFY_EXT_CREATE, MKI_NOTIFY_EXT_MODIFY, MKI_NOTIFY_EXT_HIDE, MKI_NOTIFY_EXT_SHOW, and MKI_NOTIFY_EXT_DESTROY (see MKI_NOTIFY_* and example in Editing Extended Objects).
New commands MKI_NOTIFY_PROPERTY_BASEAPPLY, MKI_NOTIFY_MODIFY_INIT, MKI_NOTIFY_MODIFY_FINISH and MKI_NOTIFY_MODIFY_CANCEL for MKI_PlugInNotify() have been added (see MKI_NOTIFY_*).
New member Description in MKI_GEO_OBJECT.
Renamed members BestPoint and BestType as well as new members Description1 and Description2 in MKI_SNAP_POINT.
New point input mode MKI_POINTMODE_NO_HIGHLIGHT (see MKI_POINTMODE_*).
New member function SetDefault() in MKI_SIMPLIFY_DATA.
New class MKI_DIMPARAM with partially separate dimension parameters for "length" and "angle" dimensions.
Additional parameter IsAngle for MKI_ObjectAddDimLarge() and MKI_ObjectAddDimSmall().
Additional parameter IsAngle for the member functions CopyParam(), InitParam(), and InitSmall() of MKI_DIMSMALL and InitLarge() of MKI_DIMLARGE.
Changed Data member in MKI_MULTIENTITY_DIMPARAM, new flags MKI_DIMPARAM_USE_LENGTHMODE and MKI_DIMPARAM_USE_ANGLEMODE.
New member OptionText in MKI_BUTTON_DATA.
Additional parameter Step for MKI_DialogSliderSet() and MKI_DialogHandleSlider().
MKI_POLYPOLY_MAX increased to 30,000.
MKI_SYSTEM_MAX increased to 100.

 

Release 2022.2.11.8 (November 8, 2022)

MKI_INTERFACE_VERSION changed to 6222.
MKI_MKD_VERSION changed to 6222.
New option MKI_BASEMODE_PASSIVE for pens to make them passive without transmission and options (see MKI_BASEMODE_*).
New functions MKI_LayerGetBaseMode(), MKI_LayerSetBaseMode(), MKI_PenGetBaseMode(), and MKI_PenSetBaseMode().
New command MKI_NOTIFY_UPDATE_ELEMENTS for MKI_PlugInNotify(), informing plug-ins of changes in drawing elements (see MKI_NOTIFY_*).
Additional parameter Embedded for MKI_InstanceFastInsert().
Additional parameter RefEntity for MKI_ObjectFastInsert(), MKI_ExtFastInsert(), and such.
Changed parameters and behavior for MKI_BlockFastInsert().
Additional member Gamma and new Copy() member function in MKI_BITMAP_EXPORT.
Additional members ExportPlugIn and Filter in MKI_TASKDEF (also see MKI_COLLECTION_DATA) and new mode MKI_TASKMODE_APPLY_FILTER.
New functions MKI_DialogSliderSet() and MKI_DialogHandleSlider() for slider controls.
New functions MKI_DialogHandleSpinDouble() and MKI_DialogHandleSpinInt64() for custom spin controls.
All previously existing MKI_DialogGetControl* and MKI_DialogSetControl* functions have been renamed to MKI_DialogControlGet* and MKI_DialogControlSet*.
New functions MKI_DialogControlGetInt32() and MKI_DialogControlGetInt64().
Additional parameter Precision for MKI_DialogControlSetDoubleEx().
New options MKI_PROPMODE_CURRENT_LAYER and MKI_PROPMODE_CURRENT_PEN for MKI_DialogXProperty() and MKI_DialogXPropertyMulti().
Additional parameter AddToList for MKI_CommandExternal() and MKI_CommandInternal().
MKI_EnumerateExt(), MKI_PlugInCallInterface(), and MKI_PlugInGetState() now use OwnerID and PlugInID to identify a plug-in (see also MKI_PLUGINID_*).
MKI_ENTITY_PATCH has been changed, it now uses MKI_PATCHPROPERTY to reduce memory requirements.
New parameter Property for MKI_PatchInsert() replaces XProperty.
New function MKI_EditXPropertyResolve().
New function MKI_ColorBrightness().
Additional option MKI_PARTSLIST_ARRANGE_ALL_SINGLE for MKI_PARTSLIST_DATA which changed its array size as a result. Member GroupMode renamed to ArrangeMode. Options MKI_PARTSLIST_GROUP_* renamed to MKI_PARTSLIST_ARRANGE_*.
New command MKI_NOTIFY_ITEM_EDIT_CONTENT for MKI_PlugInNotify(), allowing the user to edit collection items that a plug-in defined (see MKI_NOTIFY_*).
Additional members OptionsOwnerID and OptionsItemType for MKI_PLUGIN_ID to identify collection items containing options.
Several additional predefined collection types (see MKI_COLLECTION_TYPE_*).
Additional parameters CollectionName and ItemName for MKI_PlugInExport(), allowing access to user-saved options.
Alternative versions of MKI_CollectionReadItemOpen() and MKI_CollectionReadPinboardOpen() for direct named item access without user interaction have been added.
Unused parameter Window removed from MKI_CollectionWritePinboardOpen().
MKI_ProfileWriteClear() now also works for collection items opened for writing.
New modes MKI_SETTING_SMALLDLG_* for MKI_SettingGet() and MKI_SettingSet().
Values in MKI_PAGEDISPLAY_* renamed.

 

Release 2022.1.7.5 (July 5, 2022)

Starting with this release, only 64-bit versions of CAD6 and its CAD6interface are available. For a short period, 32-bit versions of CAD6industrie, CAD6studio and their CAD6interface are available upon request if using a 64-bit version is impossible in your environment.
MKI_INTERFACE_VERSION changed to 6221.
The term "unit" as used to describe a drawing part has been replaced with "entity" in all aspects to avoid any naming ambiguity with regard to length and angle units such as millimeters and inches. This affects many function names, class names, member names, and constant names.
The header file MKI_LIB6.H now also includes all legacy declarations for older interface versions that were previously located in the discontinued file MKI_LIB6_OLD.H.
Additional parameter Icon for MKI_DialogCenter(), MKI_DialogPlugInNoTest(), and MKI_DialogPlugInTest().
Additional parameter Code for MKI_DrawingSetChanged() and MKI_UndoFinishProcess() indicating the type of change using MKI_CHANGECODE_*.
New return value MKI_RESULTVALUE for functions such as MKI_DrawingPrint(), MKI_EditIdentEnumModify(), MKI_EnumerateAll(), and MKI_TransformObjectType().
Additional EnumResult member in MKI_ENUMATTRIB_DATA, MKI_ENUMDEF_DATA, and MKI_ENUMEXT_DATA allows the exchange of non-interrupting feedback using MKI_RESULT_*.
Additional Contains member in MKI_DISPLAYDATA allows optimized display operations during a call to the MKI_PlugInNotify procedure.
New MKI_TransformSimplified() function with MKI_SIMPLIFY_DATA as options.
New MKI_ProfileReadSimplifyData() and MKI_ProfileWriteSimplifyData() function.
Additional parameter Options for MKI_DialogTrimSimplify().
MKI_COLLECTION_TYPE_* has been expanded by MKI_COLLECTION_TYPE_COLORSET and MKI_COLLECTION_TYPE_BITMAPEXPORT.
MKI_PRINTPDF_FLAG_* and MKI_PRINTPDF_TYPE_* have been adapted to the new library version 10.0 used by CAD6PDF.
MKI_PRINT_PDF has an additional Gamma member to influence the overall gamma value during output via CAD6PDF.
MKI_DISPLAYDATA has been changed to use a Direct2D device context instead of a Direct2D render target.
New functions MKI_FeedbackHiddenGeo() and MKI_FeedbackHiddenMark().
MKI_FeedbackError() has been renamed to MKI_FeedbackTooltip(), now using MKI_FEEDBACK_*.
New function MKI_PhysicalDeleteEntity().
MKI_EditBlockDelete() has been renamed to MKI_PhysicalDeleteBlock().
MKI_EditDelete() has been renamed to MKI_EditMarkDeleted().
New AngleTo() member function in MKI_VECTOR.
New IsIdentical() member function in many classes to compare two classes' contents.

 

Release 2022.0.4.26 (April 26, 2022)

This last release without a change log is the baseline for all changes listed above.

 

The first version of the CAD6interface for CAD6 was released in April 2003, following the interfaces for Malz++Kassner CAD 5 and Malz++Kassner CAD 4 which were developed since 1991. A 64-bit edition is available since 2016, full Unicode support was introduced in 2019.

 

CAD6interface 2025.0 - Copyright 2025 Malz++Kassner® GmbH