+ (MUIBitmap *) bitmap

Default constructor

- (struct BitMap *) bitmap

This attribute specifies a pointer to a struct BitMap. Note that specifying only a BitMap isn't enough, you have to tell MUI about the pixel width and height with MUIA_Bitmap_Width and MUIA_Bitmap_Height too.

- (ULONG) bitmapAlpha

If specified, MUI will consider the BitMap to contain alpha informations. The only supported BitMap format is 32-bit ARGB. The value of MUIA_Bitmap_Alpha is an ULONG specifying the intensity of the alpha blitting. You usually want to specify 0xffffffff. Alpha blitting won't work on CLUT screens.

- (LONG) bitmapHeight

Define the pixel height of the BitMap.

Note: By default, the bitmap object has a minimum size of 1 pixel and an unlimited maxium size. If the space is too small to hold your BitMap, it will be clipped. Usually, you will use MUIA_FixWidth and MUIA_FixHeight with BitMap objects to make them always exactly as big as the bitmap.

- (LONG) bitmapWidth

Define the pixel width of the BitMap.

Note: By default, the bitmap object has a minimum size of 1 pixel and an unlimited maxium size. If the space is too small to hold your BitMap, it will be clipped. Usually, you will use MUIA_FixWidth and MUIA_FixHeight with BitMap objects to make them always exactly as big as the bitmap.

- (UBYTE *) mappingTable

Address of an array of UBYTEs, one for each color of the source BitMap. MUI will remap the BitMap according to the contents of the array.

Since MUI applications usually don't know about their display environment, this tag is rarely used. Instead, MUIA_Bitmap_SourceColors can be used to allow context sensitive color remapping.

- (void) noNotifySetBitmap:(struct BitMap *)bitmap
- (void) noNotifySetBitmapAlpha:(ULONG)bitmapalpha
- (void) noNotifySetBitmapHeight:(LONG)bitmapheight
- (void) noNotifySetBitmapWidth:(LONG)bitmapwidth
- (void) noNotifySetMappingTable:(UBYTE *)mappingtable
- (void) noNotifySetPrecision:(LONG)precision
- (void) noNotifySetSourceColors:(ULONG *)sourcecolors
- (void) noNotifySetTransparent:(LONG)transparent
- (LONG) precision

Specify the precision value for remapping images. Use the same predefined values as for ObtainBestPen() here, e.g.

PRECISION_EXACT PRECISION_IMAGE PRECISION_ICON PRECISION_GUI

- (struct BitMap *) remappedBitmap

Between MUIM_Setup and MUIM_Cleanup, this attribute will hold a pointer to the remapped bitmap.

- (void) setBitmap:(struct BitMap *)bitmap
- (void) setBitmapAlpha:(ULONG)bitmapalpha
- (void) setBitmapHeight:(LONG)bitmapheight
- (void) setBitmapWidth:(LONG)bitmapwidth
- (void) setMappingTable:(UBYTE *)mappingtable
- (void) setPrecision:(LONG)precision
- (void) setSourceColors:(ULONG *)sourcecolors
- (void) setTransparent:(LONG)transparent
- (void) setUseFriend:(BOOL)usefriend

CAUTION: this is an initializer attribute, meaning it cannot be changed after the underlying MUI object is instantiated

- (ULONG *) sourceColors

This attribute defines the color palette of the source BitMap. If specified, MUI will try to locate these colors on the current screen and remap the BitMap accordingly.

You can e.g. specify some great looking 8-color images for several buttons of your application and MUI will ensure they look fine even on 4-color screens or on screens with completely different colors.

When running Kickstart V39 or higher, MUI will use ObtainBestPen() to find or create your colors. Below V39, a simple color-map search is performed to find the best matching entry, but no colors will be changed.

The source palette is specified with an array of ULONGs, three entries per color, 32 bits per gun.

- (LONG) transparent

If specified, MUI will consider this color of the BitMap to be transparent. A mask plane will be generated and used for blitting, the background will shine through.

Currently, only 0 is supported, i.e. only color 0 can be made the "shine through" color.