Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
26f5e2c6
Commit
26f5e2c6
authored
Nov 07, 2011
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
gdi32: Implement the CopyBitmap entry point in the null driver.
parent
9391c6a7
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
31 additions
and
6 deletions
+31
-6
bitmap.c
dlls/gdi32/bitmap.c
+21
-0
dc.c
dlls/gdi32/dibdrv/dc.c
+9
-1
driver.c
dlls/gdi32/driver.c
+0
-5
gdi_private.h
dlls/gdi32/gdi_private.h
+1
-0
No files found.
dlls/gdi32/bitmap.c
View file @
26f5e2c6
...
...
@@ -65,6 +65,27 @@ DWORD nulldrv_PutImage( PHYSDEV dev, HBITMAP hbitmap, HRGN clip, BITMAPINFO *inf
return
dib_driver
.
pPutImage
(
NULL
,
hbitmap
,
clip
,
info
,
bits
,
src
,
dst
,
rop
);
}
BOOL
nulldrv_CopyBitmap
(
HBITMAP
src
,
HBITMAP
dst
)
{
BOOL
ret
=
TRUE
;
BITMAPOBJ
*
src_bmp
=
GDI_GetObjPtr
(
src
,
OBJ_BITMAP
);
if
(
!
src_bmp
)
return
FALSE
;
if
(
src_bmp
->
bitmap
.
bmBits
)
{
BITMAPOBJ
*
dst_bmp
=
GDI_GetObjPtr
(
dst
,
OBJ_BITMAP
);
int
stride
=
get_dib_stride
(
dst_bmp
->
bitmap
.
bmWidth
,
dst_bmp
->
bitmap
.
bmBitsPixel
);
dst_bmp
->
bitmap
.
bmBits
=
HeapAlloc
(
GetProcessHeap
(),
0
,
dst_bmp
->
bitmap
.
bmHeight
*
stride
);
if
(
dst_bmp
->
bitmap
.
bmBits
)
memcpy
(
dst_bmp
->
bitmap
.
bmBits
,
src_bmp
->
bitmap
.
bmBits
,
dst_bmp
->
bitmap
.
bmHeight
*
stride
);
else
ret
=
FALSE
;
GDI_ReleaseObj
(
dst
);
}
GDI_ReleaseObj
(
src
);
return
ret
;
}
/******************************************************************************
* CreateBitmap [GDI32.@]
...
...
dlls/gdi32/dibdrv/dc.c
View file @
26f5e2c6
...
...
@@ -391,6 +391,14 @@ static BOOL dibdrv_DeleteDC( PHYSDEV dev )
}
/***********************************************************************
* dibdrv_CopyBitmap
*/
static
BOOL
dibdrv_CopyBitmap
(
HBITMAP
src
,
HBITMAP
dst
)
{
return
nulldrv_CopyBitmap
(
src
,
dst
);
}
/***********************************************************************
* dibdrv_DeleteBitmap
*/
static
BOOL
dibdrv_DeleteBitmap
(
HBITMAP
bitmap
)
...
...
@@ -523,7 +531,7 @@ const struct gdi_dc_funcs dib_driver =
NULL
,
/* pChoosePixelFormat */
NULL
,
/* pChord */
NULL
,
/* pCloseFigure */
NULL
,
/* pCopyBitmap */
dibdrv_CopyBitmap
,
/* pCopyBitmap */
NULL
,
/* pCreateBitmap */
NULL
,
/* pCreateCompatibleDC */
dibdrv_CreateDC
,
/* pCreateDC */
...
...
dlls/gdi32/driver.c
View file @
26f5e2c6
...
...
@@ -209,11 +209,6 @@ static BOOL nulldrv_Chord( PHYSDEV dev, INT left, INT top, INT right, INT bottom
return
TRUE
;
}
static
BOOL
nulldrv_CopyBitmap
(
HBITMAP
src
,
HBITMAP
dst
)
{
return
TRUE
;
}
static
BOOL
nulldrv_CreateBitmap
(
PHYSDEV
dev
,
HBITMAP
bitmap
)
{
return
TRUE
;
...
...
dlls/gdi32/gdi_private.h
View file @
26f5e2c6
...
...
@@ -357,6 +357,7 @@ extern BOOL nulldrv_BeginPath( PHYSDEV dev ) DECLSPEC_HIDDEN;
extern
DWORD
nulldrv_BlendImage
(
PHYSDEV
dev
,
BITMAPINFO
*
info
,
const
struct
gdi_image_bits
*
bits
,
struct
bitblt_coords
*
src
,
struct
bitblt_coords
*
dst
,
BLENDFUNCTION
func
)
DECLSPEC_HIDDEN
;
extern
BOOL
nulldrv_CloseFigure
(
PHYSDEV
dev
)
DECLSPEC_HIDDEN
;
extern
BOOL
nulldrv_CopyBitmap
(
HBITMAP
src
,
HBITMAP
dst
)
DECLSPEC_HIDDEN
;
extern
BOOL
nulldrv_EndPath
(
PHYSDEV
dev
)
DECLSPEC_HIDDEN
;
extern
INT
nulldrv_ExcludeClipRect
(
PHYSDEV
dev
,
INT
left
,
INT
top
,
INT
right
,
INT
bottom
)
DECLSPEC_HIDDEN
;
extern
INT
nulldrv_ExtSelectClipRgn
(
PHYSDEV
dev
,
HRGN
rgn
,
INT
mode
)
DECLSPEC_HIDDEN
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment