HeaderPane
Main

SftPicture2 Documentation

Share Link
Print

SFT_PICTURE Type Constants

Type discriminator values for the type field on SFT_PICTURE. The value selects which member of the Picture union is meaningful and is normally set automatically by one of the Sft_SetPicture* setter functions.

#define SFT_PICTURE_ICON            1       // Icon (any size)
#define SFT_PICTURE_IMAGELIST       2       // ImageList
#define SFT_PICTURE_IDISPATCH       3       // IDispatch - IPictureDisp
#define SFT_PICTURE_IPICTURE        4       // IPicture
#define SFT_PICTURE_IMAGELISTOVL    5       // ImageList with overlay index
#define SFT_PICTURE_BITMAP          10      // Bitmap with bg-color replacement (top-left corner)
#define SFT_PICTURE_BITMAP_BL       11      // Reserved (not yet supported)
#define SFT_PICTURE_BITMAP_NONE     12      // Reserved (not yet supported)
#define SFT_PICTURE_COLOR_SAMPLE    20      // Color sample (filled rectangle, optional border)
#define SFT_PICTURE_AVI             25      // Animation control (AVI clip)
#define SFT_PICTURE_SIZEONLY        26      // Layout placeholder (no rendering)
#define SFT_PICTURE_CB              27      // Two-state check box glyph
#define SFT_PICTURE_CB3             28      // Three-state check box glyph
#define SFT_PICTURE_RB              29      // Radio button glyph
#define SFT_PICTURE_UPDOWN          30      // Up / down arrow glyph
#define SFT_PICTURE_UPDOWNSORT      31      // Sort-direction indicator
#define SFT_PICTURE_ICON_32x32      SFT_PICTURE_ICON  // Discontinued alias
#define SFT_PICTURE_ICON_16x16      33      // Discontinued (16x16 icon)
#define SFT_PICTURE_GDIPLUS         50      // GDI+ image (PNG, TIFF, JPEG, GIF, EMF+)
#define SFT_PICTURE_NET             51      // .NET System.Drawing.Image

Resource-bearing types

ConstantSlotDescription
SFT_PICTURE_BITMAPPicture.hBitmapA device-dependent bitmap. The top-left pixel is the transparent color.
SFT_PICTURE_ICONPicture.hIconAn icon of any size.
SFT_PICTURE_ICON_16x16Picture.hIconDiscontinued. 16x16 icon. New code should use SFT_PICTURE_ICON.
SFT_PICTURE_ICON_32x32Picture.hIconDiscontinued. 32x32 icon (alias for SFT_PICTURE_ICON, value 1). New code should use SFT_PICTURE_ICON.
SFT_PICTURE_IMAGELISTPicture.ImageAn entry in an image list. Holds the HIMAGELIST plus a normal and an optional disabled image index.
SFT_PICTURE_IMAGELISTOVLPicture.ImageOvlAn image list entry combined with an overlay image index. Style accepts SFT_IMAGEOVL_GHOSTED.
SFT_PICTURE_IDISPATCHPicture.IPicDispAn OLE picture object accessed through the IPictureDisp interface.
SFT_PICTURE_IPICTUREPicture.IPicAn OLE picture object accessed through the IPicture interface.
SFT_PICTURE_GDIPLUSPicture.GDIPlusImage.lpImageObjectA GDI+ image (PNG, TIFF, JPEG, GIF, EMF+) - the application supplies a Gdiplus::Image* pointer.
SFT_PICTURE_NETPicture.NETImage.pUnknownA .NET image - the application supplies an IUnknown* obtained from the .NET wrapper for System.Drawing.Image.
SFT_PICTURE_AVIPicture.hwndAnimAn AVI clip hosted in a Microsoft Animation control - the SFT_PICTURE stores the animation control's HWND.

Built-in glyphs and placeholders

ConstantSlotDescription
SFT_PICTURE_COLOR_SAMPLEPicture.ColorSampleA solid color swatch with optional border. Width / height / sample color / frame color.
SFT_PICTURE_SIZEONLYPicture.DimensionA layout placeholder that reserves space but draws nothing. Useful when an image will be supplied later or when the slot must match a sibling control's size.
SFT_PICTURE_CBPicture.CheckBoxA two-state check box glyph (state 0 / 1).
SFT_PICTURE_CB3Picture.CheckBoxA three-state check box glyph (state -1 = indeterminate, 0 = unchecked, 1 = checked).
SFT_PICTURE_RBPicture.CheckBoxA radio button glyph.
SFT_PICTURE_UPDOWNPicture.CheckBoxAn up / down arrow glyph (state 0 = down, 1 = up).
SFT_PICTURE_UPDOWNSORTPicture.CheckBoxA sort-direction indicator (state 0 = descending, 1 = ascending). The enabled field is ignored.

Reserved values

SFT_PICTURE_BITMAP_BL (11) and SFT_PICTURE_BITMAP_NONE (12) are declared but not yet supported by any product. Do not use them in new code; they are reserved for future bitmap-rendering modes.

Per-product support

Not every DLL product supports every type. Each product's documentation lists which types it accepts in its image / picture / glyph fields. Setting an unsupported type usually produces an empty visual but does not crash.

See Also SftPicture2 | SFT_PICTURE


Last Updated 05/09/2026 - (email)
© 2026 Softel vdm, Inc.