Listing 2: Function RenderReset


/* RenderReset creates a master bitmap
   to match the size of hwnd. */
void RenderReset(HWND hwnd)
{
    HDC hdc = GetDC(hwnd);
    if(dibSect != NULL)
        DeleteObject(dibSect);
       info->bmiHeader.biWidth =
           (clientSize.right/4L)*4L;
       info->bmiHeader.biHeight =
           -clientSize.bottom;

    if(hp!=NULL) {
/* Create a BITMAP optimized for palettes */
        SelectPalette(hdc,hp,FALSE);
        RealizePalette(hdc);
        dibSect = CreateDIBSection(
            hdc,
            info,
            DIB_PAL_COLORS,
            &bitmap,
            NULL,0);
    } else
/* Since there are no palettes do not use
    DIB_PAL_COLORS */
        dibSect = CreateDIBSection( hdc, info,
            DIB_RGB_COLORS, &bitmap, NULL, 0);
    ReleaseDC(hwnd,hdc);    
}
/* End of File */