TDockHeaderImages type
Array type used to store bitmap images used in a dock header.
Declaration
TDockHeaderImages = Array[TDockHeaderImageKind] of TCustomBitmap = class(TRasterImage)
private
FPixelFormat: TPixelFormat;
FPixelFormatNeedsUpdate: Boolean;
FMaskHandle: HBITMAP;
function GetHandleType: TBitmapHandleType;
function GetMonochrome: Boolean;
procedure SetBitmapHandle(const AValue: HBITMAP);
procedure SetHandleType(AValue: TBitmapHandleType);
procedure SetMonochrome(AValue: Boolean);
procedure UpdatePixelFormat;
protected
procedure MaskHandleNeeded; override;
procedure PaletteNeeded; override;
function CanShareImage(AClass: TSharedRasterImageClass): Boolean
; override;
procedure Changed(Sender: TObject); override;
function CreateDefaultBitmapHandle(const ADesc: TRawImageDescription)
: HBITMAP; override;
procedure FreeMaskHandle;
function GetBitmapHandle: HBITMAP; override;
function GetMaskHandle: HBITMAP; override;
function GetPalette: HPALETTE; override;
function GetPixelFormat: TPixelFormat; override;
function GetRawImagePtr: PRawImage; override;
function GetRawImageDescriptionPtr: PRawImageDescription; override;
class function GetSharedImageClass: TSharedRasterImageClass; override;
procedure HandleNeeded; override;
function InternalReleaseBitmapHandle: HBITMAP; override;
function InternalReleaseMaskHandle: HBITMAP; override;
function InternalReleasePalette: HPALETTE; override;
procedure RawimageNeeded(ADescOnly: Boolean);
procedure SetHandle(AValue: TLCLHandle); override;
procedure SetPixelFormat(AValue: TPixelFormat); override;
procedure UnshareImage(CopyContent: Boolean); override;
function UpdateHandles(ABitmap: HBITMAP; AMask: HBITMAP): Boolean
; override;
public
constructor Create; override;
destructor Destroy; override;
procedure Assign(Source: TPersistent); override;
procedure Clear; override;
procedure FreeImage; override;
function LazarusResourceTypeValid(const ResourceType: string): Boolean
; override;
function BitmapHandleAllocated: Boolean; override;
function MaskHandleAllocated: Boolean; override;
function PaletteAllocated: Boolean; override;
function ReleaseHandle: HBITMAP;
procedure SetHandles(ABitmap: HBITMAP; AMask: HBITMAP); override;
procedure SetSize(AWidth: Integer; AHeight: Integer); override;
property Handle: HBITMAP;
property HandleType: TBitmapHandleType;
property Monochrome: Boolean;
endDescription
Elements in TDockHeaderImages can be accessed using the enumeration values in TDockHeaderImageKind. Used in the implementation of TLazDockTree and TLazDockForm.
See also
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
