diff vim61/src\eval.c vim61old/src\eval.c 4240,4242d4239 < #ifdef FEAT_BMBG < "bmbg", < #endif diff vim61/src\feature.h vim61old/src\feature.h 665,673d664 < /* < * +bmbg bitmap backgrounds in win32 < */ < #ifdef FEAT_NORMAL < # ifdef FEAT_GUI_W32 < # define FEAT_BMBG < # endif < #endif < diff vim61/src\gui_w32.c vim61old/src\gui_w32.c 252,260d251 < < #ifdef FEAT_BMBG < /* Stuff for bitmap background */ < BOOL gui_draw_bkbitmap(RECT*); < BOOL gui_load_bkbitmap(char *); < static HBITMAP s_bkBmp; < static SIZE s_bkSize; < static HDC s_bkDC; < #endif 944,946d934 < #ifdef FEAT_BMBG < char_u fname[MAXPATHL]; < #endif 1112,1118c1100 < #ifdef FEAT_BMBG < /* Load the background tile */ < if (gui_find_bitmap("background", fname, "bmp") == OK) < { < gui_load_bkbitmap(fname); < } < #endif --- > 1767,1783c1749 < < #ifdef FEAT_BMBG < /* If the background of this rect would not be the default background, then color the area in and do not consider using the bitmap */ < if (gui.back_pixel != gui.currBgColor) < { < FillRect(s_hdc, &rc, hbr); < } < else < { < if(!gui_draw_bkbitmap(&rc)) < { < FillRect(s_hdc, &rc, hbr); < } < } < #else < FillRect(s_hdc, &rc, hbr); < #endif --- > FillRect(s_hdc, &rc, hbr); 1939,2001d1904 < #ifdef FEAT_BMBG < /* Load a background bitmap and tile it into a dc */ < BOOL < gui_load_bkbitmap(char *name) < { < HDC tmpDC; < HBITMAP oldBmp; < HBITMAP tileBmp; < int x,y; < BITMAP bm; < < if (s_bkBmp == NULL) < { < s_bkBmp = LoadImage(NULL, name, IMAGE_BITMAP, 0,0, LR_LOADFROMFILE|LR_CREATEDIBSECTION); < if (s_bkBmp == NULL) < return FALSE; < < GetObject(s_bkBmp, sizeof(BITMAP), &bm); < s_bkSize.cx=bm.bmWidth; < s_bkSize.cy=bm.bmHeight; < < s_bkDC = CreateCompatibleDC(s_hdc); < < tmpDC = CreateCompatibleDC(s_hdc); < oldBmp = SelectObject(tmpDC, s_bkBmp); < < tileBmp = CreateCompatibleBitmap(s_hdc, 1600, 1200); < SelectObject(s_bkDC, tileBmp); < < for(x=0;x<1600;x+=s_bkSize.cx) < { < for(y=0;y<1200;y+=s_bkSize.cy) < { < BitBlt(s_bkDC, x, y, s_bkSize.cx, s_bkSize.cy, tmpDC, 0, 0, SRCCOPY); < } < } < < SelectObject(tmpDC, oldBmp); < DeleteDC(tmpDC); < } < < return TRUE; < < } < < < /* Draw a bitmap background */ < BOOL < gui_draw_bkbitmap(RECT *rcp) < { < < if (s_bkBmp == FALSE) < { < return FALSE; < } < < BitBlt(s_hdc, rcp->left, rcp->top, rcp->right-rcp->left, rcp->bottom-rcp->top, s_bkDC, rcp->left, rcp->top, SRCCOPY); < < return TRUE; < } < < #endif < 2013,2020d1915 < #ifdef FEAT_BMBG < if (!gui_draw_bkbitmap(rcp)) < #endif < { < hbr = CreateSolidBrush(gui.back_pixel); < FillRect(s_hdc, rcp, hbr); < DeleteBrush(hbr); < } 2021a1917,1919 > hbr = CreateSolidBrush(gui.back_pixel); > FillRect(s_hdc, rcp, hbr); > DeleteBrush(hbr); 2022a1921 > diff vim61/src\screen.c vim61old/src\screen.c 6979d6978 < * - there is a bitmap background 6981,6984d6979 < #ifdef FEAT_BMBG < return FAIL; < #endif < 7203d7197 < * - there is a bitmap background 7205,7207d7198 < #ifdef FEAT_BMBG < if (!force) return FAIL; < #endif diff vim61/src\version.c vim61old/src\version.c 287,291d286 < #ifdef FEAT_BMBG < "+bmbg", < #else < "-bmbg", < #endif