Skip to content

Overview (VCL)

Carlo Barazzetta edited this page Dec 8, 2020 · 11 revisions

Overview of the VCL component

Those Components are available at "Ethea" page, after installing the design-time Package located in \Packages\DXXX\dclIconFontsImageList.dpk

TIconFontsImageCollection component

TIconFontsImageCollection is a VCL component for Delphi derived from TComponent (or TCustomImageCollection from Delphi 10.3), that auto-build icons using a collection of TIconFontsImageListItems. It can be used as a centralized point of Icons collection and linked to a TIconFontsVirtualImageList (or best choise to TVirtualImageList from Delphi 10.3).

https://github.com/EtheaDev/IconFontsImageList/blob/master/Packages/IconFontsImageCollectionComponentIcon.png

Properties

At component level you can define some "default" properties that can be undefined at Item level:

  • FontName
  • FontColor
  • Zoom
  • MaskColor*

At item level of IconFontItems you can define:

  • Character: WideString (with support of surrogate pair) (not stored)
  • FontIconDec: Icon value in decimal (stored in dfm)
  • FontIconHex: Icon value in hexadecimal (not stored)
  • IconName (optional)
  • FontName (if different from default)
  • FontColor (if different from default)
  • MaskColor* (if different from default)

Methods

Method available for single Icon:

  • AddIcon
  • Delete(Index)
  • Replace(Index)

Multiple Icons methods:

  • AddIcons
  • UpdateIconsAttributes
  • ClearIcons
  • RedrawImages

Implicit Methods:

Setting "FontName", "FontColor" (or "MaskColor" for non GDI+) updates all attributes of any item with no specific value assigned.

Advanced Component Editor

At design time is very easy to build the Icons using the The Advanced Component Editor supplied with the component.

TIconFontsVirtualImageList component

TIconFontsVirtualImageList is a VCL component for Delphi derived from TIconFontsImageListBase component, that must be linked to a TIconFontsImageCollection to provide an ImageList for the components of the Form.

https://github.com/EtheaDev/IconFontsImageList/blob/master/Packages/IconFontsVirtualImageListComponentIcon.png

Properties

At component level you can define:

  • ImageCollection
  • Size (in pixel) of the icons
  • Width and Height (in pixel) if different
  • StoreBitmap (default false) to save Bitmap into dfm (available only from Delphi 10.3): with other Delphi version the bitmap is always stored into dfm such any other ImageList.

and some default values if not defined at Item level:

  • FontName
  • FontColor
  • MaskColor*
  • Opacity* (default 255) available only for GDI+ (from XE4)
  • DisabledFactor (default 100)

Notice that if those default are not assigned, the defaults defined at collection level are used.

Methods

Method available for single Icon:

  • AddIcon
  • Delete
  • Replace

Multiple Icons methods:

  • AddIcons
  • UpdateIconsAttributes
  • ClearIcons
  • RedrawImages

Notice that those methods (excluding RedrawImages) are propagated to the linked collection.

Implicit Methods:

Setting "FontName", "FontColor" (or "MaskColor" for non GDI+), "Zoom" updates all attributes of any item of the linked collection with no specific value assigned. Setting "Size" resize all Icons at new size: you cannot have icons in different size in the same IconFontImageList.

Use "Width" and "Height" if you want a different proportion for Icons.

Advanced Component Editor

At design time is very easy to build the Icons using the * The Advanced Component Editor supplied with the component.

TIconFontImage component

TIconFontImage is a VCL component for Delphi derived from TImage component, to easily show a single Icon at any resolution.

https://github.com/EtheaDev/IconFontsImageList/blob/master/Packages/IconFontImageComponentIcon.png

You can use the component linked to an IconFontsImageList, using "ImageIndex" property, or you can specify all the Icon properties.

Properties

With an ImageList:

  • ImageList (TIconFontsImageList)
  • ImageIndex

Without an ImageList:

  • FontName
  • FontColor
  • Opacity (from 255 to 0: default 255)
  • DisabledFactor (255 to 0: default 100)
  • FontIconDec: Character value in decimal (stored into dfm)
  • Character: Character value (not stored)
  • FontIconHex: Character value in hexadecimal (not stored)
  • Width
  • Height
  • IconName (optional)
  • Stretch
  • Center
  • Zoom

TIconFontsImageList component

TIconFontsImageList is a VCL component for Delphi derived from TDragImageList component, that auto-build icons using a collection of TIconFontsImageListItems embedded. Must be used only with a single-form application. To avoid High-DPI on multi-form application we recommend to use always TIconFontsImageCollection + TIconFontsVirtualImageList (before D10.3) or TIconFontsImageCollection + TVirtualImageList (from D10.3).

https://github.com/EtheaDev/IconFontsImageList/blob/master/Packages/IconFontsImageListComponentIcon.png

The Components are available at "Ethea" page, after installing the design-time Package located in \Packages\DXXX\dclIconFontsImageList.dpk

Properties

At component level you can define:

  • Size (in pixel) of the icons
  • Width and Height (in pixel) if different
  • StoreBitmap (default false) to save Bitmap into dfm (available only from Delphi 10.3): with other Delphi version the bitmap is always stored into dfm such any other ImageList.

and some default values if not defined at Item level:

  • FontName
  • FontColor
  • MaskColor*
  • Opacity* (default 255) available only for GDI+ (from XE4)
  • DisabledFactor (default 100)

At item level you can define:

  • Character: WideString (with support of surrogate pair) (not stored)
  • FontIconDec: Icon value in decimal (stored in dfm)
  • FontIconHex: Icon value in hexadecimal (not stored)
  • IconName (optional)
  • FontName (if different from default)
  • FontColor (if different from default)
  • MaskColor* (if different from default)

Methods

Method available for single Icon:

  • AddIcon
  • Delete
  • Replace

Multiple Icons methods:

  • AddIcons
  • UpdateIconsAttributes
  • ClearIcons
  • RedrawImages

Implicit Methods:

Setting "FontName", "FontColor" (or "MaskColor" for non GDI+) updates all attributes of any item with no specific value assigned. Setting "Size" resize all Icons at new size: you cannot have icons in different size in the same IconFontImageList.

Advanced Component Editor

At design time is very easy to build the Icons using the The Advanced Component Editor supplied with the component.

Look how to use the component with the Demo Project (VCL)

*Notice: MaskColor is used only with non GDI+ Delphi versions (before XE4). Opacity is used with GDI+ Delphi versions.