BSOne.SFC/EM.Lib/ImageEn_SRC/Source/ie.inc

1300 lines
40 KiB
PHP

// ie.inc
(*
File version 1027
*)
{.$define IEDEBUG}
{$A+} // like A8, aligned on quad word boundaries
{$T-} // result of the @ operator is always an untyped pointer
{$B-} // short-circuit Boolean expression evaluation
{$R-} // range check OFF
{$Q-} // overflow check OFF
//////////////////////////////////////////////////////////////
// Specify the modules to include
//////////////////////////////////////////////////////////////
// Support for multi-colum/thumbnail view components (TImageEnMIO, TImageEnMView and TImageEnFolderMView)
{$define IEINCLUDEMULTIVIEW}
// Support acquisition via WIA, Twain and portable devices (see also IEINCLUDEWPD)
{$define IEINCLUDEIEXACQUIRE}
// Support acquisition via Windows Portable Device API (This requires IEINCLUDEIEXACQUIRE)
{$define IEINCLUDEWPD}
// Support for database components (TImageEnDBVect and TImageEnDBView)
{$define IEINCLUDEDB}
// Support for the image processing dialog (Image effects and color adjustment)
{$define IEINCLUDEDIALOGIP}
// Support for the input/output dialog (shown when clicking the "Advanced" button in the save dialog)
{$define IEINCLUDEDIALOGIO}
// Support for open/save dialogs
{$define IEINCLUDEOPENSAVEDIALOGS}
// Support for print dialogs
{$define IEINCLUDEPRINTDIALOGS}
// WIC - Windows Imaging Component support. Requires IEINCLUDEIEXACQUIRE and IEINCLUDEDIRECTSHOW
{$define IEINCLUDEWIC}
// DirectShow support (requires IEINCLUDEIEXACQUIRE)
{$define IEINCLUDEDIRECTSHOW}
// Media Foundation support (requires IEINCLUDEIEXACQUIRE)
{$define IEINCLUDEMEDIAFOUNDATION}
// Includes Color Management System (LCMS) - Default: disabled
{.$define IEINCLUDECMS}
// Includes over 150 extra transition effects
{$define IEINCLUDEEXTRATRANSITIONS}
// Include preset images (used to add special border effects in TImageEnMView
{$define IEINCLUDEPRESETIMAGES}
// register QuickReport ImageEn components - Default: disabled
{.$define IEREGISTERQR}
// Use TIEBufferedReadStream instead of TStream to read files
{$define IEUSEBUFFEREDSTREAM}
// Include TIENeurNet class - Default: disabled
{.$define IEINCLUDENEURALNET}
// Support for TIEResourceExtractor class
{$define IEINCLUDERESOURCEEXTRACTOR}
// Support for TIEImagingAnnot (and related services)
{$define IEINCLUDEIMAGINGANNOT}
// Support for TIETIFFHandler (and related services)
{$define IEINCLUDETIFFHANDLER}
// Support for FFT processing
{$define IEINCLUDEFFT}
// Support for RFB (VNC client) protocol
{$define IERFBPROTOCOL}
// Use GDI+
{$define IEUSEGDIPLUS}
// Support for TIESlippyMap
{$define IEINCLUDESLIPPYMAP}
// Retrieve thumnails for video files from Windows Explorer in TImageEnMView
// Also adds support for large Icons
{$DEFINE VIDEO_THUMBNAILS}
// Include a set of ImageEn TAction descendents for rapid UI development
{$DEFINE IEINCLUDEACTIONS}
// Include TIEEquirectangularRenderer
{$define IEINCLUDEEQUIRECTANGULARRENDERER}
// Include descriptions of all DICOM tags (If you do not display dicom tags then disabling this will reduce the exe size by about 400KBytes)
{$define IEDICOMDESC}
//////////////////////////////////////////////////////////////
// Format support
//////////////////////////////////////////////////////////////
// Include support for Camera Raw formats
{$define IEINCLUDERAWFORMATS}
// Support for DICOM file format
{$define IEINCLUDEDICOM}
// Support for PDF writing
{$define IEINCLUDEPDFWRITING}
// Support for PSD file format
{$define IEINCLUDEPSD}
// Include support for Jpeg2000
{$define IEINCLUDEJPEG2000}
// Include support for PNG (requires IEINCLUDEZLIB under Delphi)
{$define IEINCLUDEPNG}
// ZLib support (required by some formats, such as PNG)
{$define IEINCLUDEZLIB}
// Misc plugins support (iemiscplugins unit, TIEMiscPluginsImageMagick class, etc..)
{$DEFINE IEINCLUDEMISCPLUGINS}
//////////////////////////////////////////////////////////////
// Deprecated modules
//////////////////////////////////////////////////////////////
// Define to display warning for ImageEn methods and components that have been deprecated
{.$DEFINE IEWarningForDeprecated}
// Include support for legacy methods and components which are outdated or superceded
// For example, if you started using ImageEn with v6.0.0 you should undefine IEIncludeDeprecatedInV4 and IEIncludeDeprecatedInV5
{$DEFINE IEIncludeDeprecatedInV4} // Undefine to remove items deprecated in versions between v0.0.1 and v5.0.0
{$DEFINE IEIncludeDeprecatedInV5} // Undefine to remove items deprecated in versions between v5.0.1 than v6.0.0
{$DEFINE IEIncludeDeprecatedInV6} // Undefine to remove items deprecated in versions between v6.0.1 than v7.0.0
// Support "Video for Windows" video capture (TImageEnVideoCap and TImageEnVideoView) - DEPRECATED
// Note: VFW is deprecated and not supported by newer versions of Windows
// See also: "IEIncludeDeprecatedInV4" define
{$define IEINCLUDEVIDEOCAPTURE}
// Support for the TImageEn component - DEPRECATED
// Note: The TImageEn component is only included for legacy applications. TImageEnView is now used instead of TImageEn
// See also: "IEIncludeDeprecatedInV4" define
{$define IEINCLUDETIMAGEEN}
// In v6.2.3, ImageEn changed undo captions to friendly names (defined in iewords.pas). Enable this define to use the older hard-coded resource strings
{.$define IEUseLegacyUndoCaptions}
// Behaviour of Undo/UndoAt/Redo/RedoAt changed in v6.2.3 (see compatibility notes). To return to v6.2.1 functionality, enable this define
{.$define IEUseLegacyUndoFunctionality}
//////////////////////////////////////////////////////////////
// Conditional modules
//////////////////////////////////////////////////////////////
{$ifndef IEIncludeDeprecatedInV4}
{$undef IEINCLUDEVIDEOCAPTURE}
{$undef IEINCLUDETIMAGEEN}
{$endif}
{$ifndef IEINCLUDEPNG}
{$undef IEINCLUDEPRESETIMAGES}
{$undef IEINCLUDEZLIB}
{$endif}
{$ifndef IEINCLUDEZLIB}
{$undef IEINCLUDEPNG}
{$undef IEINCLUDEPRESETIMAGES}
{$endif}
{$ifndef IEINCLUDEIEXACQUIRE}
{$undef IEINCLUDEWPD}
{$endif}
//////////////////////////////////////////////////////////////
// Supported languages
//////////////////////////////////////////////////////////////
{.$define IEUSESTRINGRESOURCEONLY} // leave only English
{$ifndef IEUSESTRINGRESOURCEONLY}
{$define IESUPPORTENGLISH} // English
{$define IESUPPORTITALIAN} // Italian
{$define IESUPPORTGERMAN} // German
{$define IESUPPORTSPANISH} // Spanish
{$define IESUPPORTFRENCH} // French
{$define IESUPPORTPORTUGUESE} // Portuguese
{$define IESUPPORTGREEK} // Greek
{$define IESUPPORTRUSSIAN} // Russian
{$define IESUPPORTDUTCH} // Dutch
{$define IESUPPORTSWEDISH} // Swedish
{$define IESUPPORTPOLISH} // Polish
{$define IESUPPORTJAPANESE} // Japanese
{$define IESUPPORTCZECH} // Czech
{$define IESUPPORTFINNISH} // Finnish
{$define IESUPPORTFARSI} // Farsi
{$define IESUPPORTCHINESE} // Chinese and Chinese Traditional
{$define IESUPPORTDANISH} // Danish
{$define IESUPPORTTURKISH} // Turkish
{$define IESUPPORTKOREAN} // Korean
{$define IESUPPORTHUNGARIAN} // Hungarian
{$define IESUPPORTARABIC} // Arabic
{$define IESUPPORTSERBIAN} // Serbian
{$define IESUPPORTNORWEGIAN} // Norwegian
{$define IESUPPORTUSER} // User--
{$else}
{$define IESUPPORTENGLISH}
{$endif}
//////////////////////////////////////////////////////////////
// Component Behavior
//////////////////////////////////////////////////////////////
{$define IETWAINTASKWINDOWS} // Enhance Twain compatibility
{.$define IEREGISTERTPICTUREFORMATS} // Register ImageEn file formats in the VCL (e.g. so they can be accessed using a TImage)
{.$define DISABLE_AUTO_SCROLL_WHEN_DRAG} // In TImageEnMView when dragging it will automatically scroll when near the edge of the control. Define to disable this behavior
//////////////////////////////////////////////////////////////
// detect Borland compiler version
//////////////////////////////////////////////////////////////
// C++Builder 5 or Delphi 5
{$ifdef VER130}
{$define Delphi5orNewer}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IEOLDSEEKDEF}
{$ifndef BCB}
{$define IEUSEFILTEDIT}
{$define IEUSEDSGNINTF}
{$define IEREGISTERPROPERTYEDITOR}
{$else}
{$define IEHASNOTWINDOWSALPHABLEND}
{$endif}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
// Unsupported...
{$undef IEINCLUDEMISCPLUGINS}
{$undef IEINCLUDEMEDIAFOUNDATION}
{$undef IEINCLUDEWPD}
{$undef IEINCLUDERAWFORMATS}
{$undef IEWarningForDeprecated}
{$endif}
// C++Builder 6 or Delphi 6
{$ifdef VER140}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define IEHASANSISTRINGBUG}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$ifndef BCB}
{$define IEVISION}
{$define IEUSEFILTEDIT}
//{$define IEUSEDSGNINTF}
//{$define IEREGISTERPROPERTYEDITOR}
{$else}
{$define IEHASNOTWINDOWSALPHABLEND}
{$endif}
{$undef IEINCLUDEMISCPLUGINS}
{$undef IEINCLUDEMEDIAFOUNDATION}
{$undef IEINCLUDERAWFORMATS}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi 7
{$ifdef VER150}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEVISION}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi 2005
{$ifdef VER170}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// C++Builder 2006 or Delphi 2006
{$ifdef VER180}
{$ifndef VER185}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEHASUTF8ENCODEDECODE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
{$endif}
// Delphi 2007 or C++Builder 2007
{$ifdef VER185}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEHASUTF8ENCODEDECODE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi 2009 or C++Builder 2009
{$ifdef VER200}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi 2010 or C++Builder 2010
{$ifdef VER210}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE or C++Builder XE
{$ifdef VER220}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE2 or C++Builder XE2
{$ifdef VER230}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE3 or C++Builder XE3
{$ifdef VER240}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE4 or C++ Builder XE4
{$ifdef VER250}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE5 or C++ Builder XE5
{$ifdef VER260}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define DelphiXE5orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE6 or C++ Builder XE6
{$ifdef VER270}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define DelphiXE5orNewer}
{$define DelphiXE6orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE7 or C++ Builder XE7
{$ifdef VER280}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define DelphiXE5orNewer}
{$define DelphiXE6orNewer}
{$define DelphiXE7orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi XE8 or C++ Builder XE8
{$ifdef VER290}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define DelphiXE5orNewer}
{$define DelphiXE6orNewer}
{$define DelphiXE7orNewer}
{$define DelphiXE8orNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi 10 Seattle or C++ Builder 10 Seattle
{$ifdef VER300}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define DelphiXE5orNewer}
{$define DelphiXE6orNewer}
{$define DelphiXE7orNewer}
{$define DelphiXE8orNewer}
{$define Delphi10SeattleOrNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
// Delphi 10.1 Berlin or C++ Builder 10.1 Berlin
//{$ifdef VER310}
{$IF CompilerVersion >= 24}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define DelphiXE5orNewer}
{$define DelphiXE6orNewer}
{$define DelphiXE7orNewer}
{$define DelphiXE8orNewer}
{$define Delphi10SeattleOrNewer}
{$define Delphi10BerlinOrNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEForceVarInitialization} // Delphi incorrectly requires initialization of variables, even when handled by finally block
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$ifend}
// Delphi 10.2 Tokyo or C++ Builder 10.2 Tokyo
{$ifdef VER320}
{$define Delphi5orNewer}
{$define Delphi6orNewer}
{$define Delphi7orNewer}
{$define Delphi2005orNewer}
{$define Delphi2006orNewer}
{$define Delphi2007orNewer}
{$define Delphi2009orNewer}
{$define Delphi2010orNewer}
{$define DelphiXEorNewer}
{$define DelphiXE2orNewer}
{$define DelphiXE3orNewer}
{$define DelphiXE4orNewer}
{$define DelphiXE5orNewer}
{$define DelphiXE6orNewer}
{$define DelphiXE7orNewer}
{$define DelphiXE8orNewer}
{$define Delphi10SeattleOrNewer}
{$define Delphi10BerlinOrNewer}
{$define Delphi10TokyoOrNewer}
{$define IEHASUINT64}
{$define IEHASNATIVEINT}
{$define IEINCLUDEFLATSB} // Use FlatSB unit
{$define IESUPPORTINLINE}
{$define IENEWVARIANTS}
{$define IEMMXSUPPORTED}
{$define IEHASTTHREADSTATICSYNCHRONIZE}
{$define IEHASTTHREADSTART}
{$define IEHASCONSTENUM}
{$define IEHASAFTERCONSTRUCTION}
{$define IEHASACTIVEFORMHANDLE}
{$define IEHASTYPES}
{$define IEHASUITYPES}
{$define IESUPPORTINTERFACESUPPORT}
{$define IEHASFORMATSETTINGS}
{$define IEHASFOCUSSTATE}
{$define IEHASOPENOPTIONSEX}
{$define IEHASNEEDSBORDERPAINT}
{$define IEHASPARENTBACKGROUND}
{$define IEUSENEWSENDMESSAGETIMEOUT}
{$define IEUSEDESIGNINTF}
{$define IEUSEFILTEDIT}
{$define IEREGISTERPROPERTYEDITOR}
{$define IEUSEASM}
{$define IEVISION}
{$define IEHASPOSEX}
{$define IEHASSTRUTILS}
{$define IEHASRECORDASCLASSES}
{$define IEUSEVCLZLIB}
{$define IEHASTOUCH}
{$define IEHASPLATFORMATTRIBUTE}
{$define IEHASONGESTURE}
{$define IEHASUTF8ENCODEDECODE}
{$define IESUPPORTPROPERTYOFARRAYTYPE}
{$define IEHASTHEMING} // Supports either TStyleServices or TThemeServices (D7 or newer)
{$define IEHASSTYLESERVICES} // Advanced theming in XE2 and newer
{$define IESupportDeprecatedDescription} // Deprecated directive supports a description string
{$ifdef WIN64}
{$define IENOIDEREGS}
{$endif}
{$WARN SYMBOL_PLATFORM OFF}
{$WARN UNIT_PLATFORM OFF}
{$endif}
//////////////////////////////////////////////////////////////
// Target selection
//////////////////////////////////////////////////////////////
{$ifdef IEDOTNETVERSION}
{$define OCXVERSION}
{$define IEUSEDLLJPEGLIB}
{$define IEUSEDLLPNGLIB}
{$define IEUSEDLLJPEG2000LIB}
{$endif}
{$ifdef OCXVERSION}
{$undef IEINCLUDEDB}
{$endif}
//////////////////////////////////////////////////////////////
// 64 bit related
//////////////////////////////////////////////////////////////
{.$undef IEUSEASM}
// See documentation regarding use of IELIB DLL in 32bit applications
{.$define IEUSEDLLJPEGLIB}
{.$define IEUSEDLLPNGLIB}
{.$define IEUSEDLLJPEG2000LIB}
{$ifdef WIN64}
{$undef IEUSEASM}
{$define IEUSEDLLJPEGLIB} // Use DLL Jpeg library (otherwise use linked jpeg library)
{$define IEUSEDLLPNGLIB} // Use DLL PNG library (otherwise use linked png library)
{$define IEUSEDLLJPEG2000LIB} // Use DLL Jpeg2000 (Jasper) library (otherwise use linked jasper library)
{$undef IEUSEDESIGNINTF}
{$undef IEUSEFILTEDIT}
{$undef IEREGISTERPROPERTYEDITOR}
{$endif}
//////////////////////////////////////////////////////////////
// C++ Builder related
//////////////////////////////////////////////////////////////
{$ifdef BCB}
{$ObjExportAll On}
{$endif}