1 #ifndef __W32G_DIB_H__ 2 #define __W32G_DIB_H__ 3 4 #define W32G_DIB_PALS_MAX 16 5 #define W32G_DIB_MODIFIED_RECT_MAX 16 6 7 typedef struct w32g_dib_t_ { 8 HBITMAP hbmp; 9 int width; 10 int height; 11 char *bits; 12 RGBQUAD pals[W32G_DIB_PALS_MAX]; 13 int pals_max; 14 RECT modified_rect[W32G_DIB_MODIFIED_RECT_MAX]; 15 int modified_rect_max; 16 } w32g_dib_t; 17 18 w32g_dib_t *dib_create (int width, int height ); 19 void dib_free ( w32g_dib_t *dib ); 20 void dib_add_modified_rect ( w32g_dib_t *dib, RECT *lprc ); 21 void dib_modified_rect_whole ( w32g_dib_t *dib ); test(S s,S str,S expected)22void dib_set_pal1 ( w32g_dib_t *dib, int pal_index, RGBQUAD rq ); 23 void dib_set_pals ( w32g_dib_t *dib, RGBQUAD *pals, int pals_max ); 24 void dib_apply ( w32g_dib_t *dib, HDC hdc ); 25 26 #endif // __W32G_DIB_H__ 27