MKI_MULTI_BASE (Multi-Entity Editing Classes) New in Version 2023.1

www.CAD6.com

C++ Syntax

class MKI_MULTI_BASE

{

  public:

 

 

  bool m_fValid;

 

  __int32 m_nUse,

          m_nInit,

          m_nMulti;

 

  void

  SetNone( void );

 

  void

  SetAll( void );

 

  bool

  IsIndeterminate(

 __int32 f_nFlag ) const;

 

  void

  Handle(

 bool& f_rCurrent,

 const bool f_fNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 __int32& f_rCurrent,

 const __int32 f_nNew,

 const __int32 f_nBit,

 const __int32 f_nFlag );

 

  void

  Handle(

 __int32& f_rCurrent,

 const __int32 f_nNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 __int32& f_rCurrent1,

 __int32& f_rCurrent2,

 const __int32 f_nNew1,

 const __int32 f_nNew2,

 const __int32 f_nFlag );

 

  void

  Handle(

 MKI_COLORVALUE_REF f_rCurrent,

 const MKI_COLORVALUE f_cNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 MKI_COLORVALUE_REF f_rCurrent1,

 MKI_COLORMODEL_REF f_rCurrent2,

 const MKI_COLORVALUE f_cNew1,

 const MKI_COLORMODEL f_cNew2,

 const __int32 f_nFlag );

 

  void

  Handle(

 BYTE& f_rCurrent,

 const BYTE f_cNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 double& f_rCurrent,

 const double f_dNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 double& f_rCurrent1,

 double& f_rCurrent2,

 const double f_dNew1,

 const double f_dNew2,

 const __int32 f_nFlag );

 

  void

  Handle(

 MKI_POINT_REF f_rCurrent,

 MKI_CONST_POINT_REF f_rNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 MKI_VECTOR_REF f_rCurrent,

 MKI_CONST_VECTOR_REF f_rNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 LPWSTR f_pszCurrent,

 const size_t f_unMaxSize,

 LPCWSTR f_pszNew,

 const __int32 f_nFlag );

 

 template <size_t f_unSize> __forceinline void

 Handle(

         wchar_t (&f_rDestin)[f_unSize],

         LPCWSTR f_pszNew,

         const __int32 f_nFlag )

 {

         Handle( (LPWSTR) &f_rDestin, f_unSize, f_pszNew, f_nFlag );

 }

 

  void

  Handle(

 MKI_FONTDEF_REF f_rCurrent,

 MKI_CONST_FONTDEF_REF f_rNew,

 const __int32 f_nFlag );

 

  void

  Handle(

 MKI_BITFIELD<MKI_LAYER_MAX>& f_rCurrent,

 const MKI_BITFIELD<MKI_LAYER_MAX>& f_rNew,

 const __int32 f_nFlag );

};

 

This structure contains generic use / valid / indeterminate information. It is used as a base class from which other multi-entity editing classes are derived.

 

Element Description

m_fValid

[bool] If true, this class' content is valid, i.e. shall be used when applied. Will only be used if the derived class is part of MKI_MULTI_INFO.

m_nUse

[__int32] Each bit of this value corresponds to one element in the derived class. If set, the respective element in the derived class shall be used / copied / applied during the multi-entity editing operation.

m_nInit

[__int32] Each bit of this value corresponds to one element in the derived class. If set, the respective element in the derived class has been initialized, i.e. has been set to a defined value.

m_nMulti

[__int32] Each bit of this value corresponds to one element in the derived class. If set, the respective element in the derived class has different values over the underlying entities (multiple entities and/or entities that have multiple sets of properties). If display in a dialog window, that value shall be displayed as "Indeterminate".

 

If a bit in m_nMulti is set, the corresponding element in the derived class has the value that was first encountered while running though all of the entities. It's not the same in all entities and is not necessarily the most often used value!

 

CAD6interface 2024.2 - Copyright 2024 Malz++Kassner® GmbH