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
a214a3c3
Commit
a214a3c3
authored
Oct 27, 2011
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
gdi32: Store a pointer to the path in the DC and make the path structure opaque.
parent
ddc9860a
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
4 additions
and
26 deletions
+4
-26
dc.c
dlls/gdi32/dc.c
+2
-2
gdi_private.h
dlls/gdi32/gdi_private.h
+2
-24
path.c
dlls/gdi32/path.c
+0
-0
No files found.
dlls/gdi32/dc.c
View file @
a214a3c3
...
...
@@ -110,6 +110,7 @@ DC *alloc_dc_ptr( WORD magic )
dc
->
hDevice
=
0
;
dc
->
hPalette
=
GetStockObject
(
DEFAULT_PALETTE
);
dc
->
gdiFont
=
0
;
dc
->
path
=
NULL
;
dc
->
font_code_page
=
CP_ACP
;
dc
->
ROPmode
=
R2_COPYPEN
;
dc
->
polyFillMode
=
ALTERNATE
;
...
...
@@ -146,7 +147,6 @@ DC *alloc_dc_ptr( WORD magic )
dc
->
BoundsRect
.
top
=
0
;
dc
->
BoundsRect
.
right
=
0
;
dc
->
BoundsRect
.
bottom
=
0
;
PATH_InitGdiPath
(
&
dc
->
path
);
if
(
!
(
dc
->
hSelf
=
alloc_gdi_handle
(
&
dc
->
header
,
magic
,
&
dc_funcs
)))
{
...
...
@@ -174,7 +174,7 @@ static void free_dc_state( DC *dc )
if
(
dc
->
hMetaRgn
)
DeleteObject
(
dc
->
hMetaRgn
);
if
(
dc
->
hMetaClipRgn
)
DeleteObject
(
dc
->
hMetaClipRgn
);
if
(
dc
->
hVisRgn
)
DeleteObject
(
dc
->
hVisRgn
);
PATH_DestroyGdiPath
(
&
dc
->
path
);
if
(
dc
->
path
)
free_gdi_path
(
dc
->
path
);
HeapFree
(
GetProcessHeap
(),
0
,
dc
);
}
...
...
dlls/gdi32/gdi_private.h
View file @
a214a3c3
...
...
@@ -72,27 +72,6 @@ typedef struct tagGDIOBJHDR
struct
hdc_list
*
hdcs
;
}
GDIOBJHDR
;
/* It should not be necessary to access the contents of the GdiPath
* structure directly; if you find that the exported functions don't
* allow you to do what you want, then please place a new exported
* function that does this job in path.c.
*/
typedef
enum
tagGdiPathState
{
PATH_Null
,
PATH_Open
,
PATH_Closed
}
GdiPathState
;
typedef
struct
gdi_path
{
GdiPathState
state
;
POINT
*
pPoints
;
BYTE
*
pFlags
;
int
numEntriesUsed
,
numEntriesAllocated
;
BOOL
newStroke
;
}
GdiPath
;
typedef
struct
tagGdiFont
GdiFont
;
typedef
struct
tagDC
...
...
@@ -137,7 +116,7 @@ typedef struct tagDC
HPALETTE
hPalette
;
GdiFont
*
gdiFont
;
GdiPath
path
;
struct
gdi_path
*
path
;
UINT
font_code_page
;
WORD
ROPmode
;
...
...
@@ -320,8 +299,7 @@ extern METAHEADER *MF_CreateMetaHeaderDisk(METAHEADER *mr, LPCVOID filename, BOO
/* path.c */
extern
void
PATH_InitGdiPath
(
GdiPath
*
pPath
)
DECLSPEC_HIDDEN
;
extern
void
PATH_DestroyGdiPath
(
GdiPath
*
pPath
)
DECLSPEC_HIDDEN
;
extern
void
free_gdi_path
(
struct
gdi_path
*
path
)
DECLSPEC_HIDDEN
;
extern
BOOL
PATH_SavePath
(
DC
*
dst
,
DC
*
src
)
DECLSPEC_HIDDEN
;
extern
BOOL
PATH_RestorePath
(
DC
*
dst
,
DC
*
src
)
DECLSPEC_HIDDEN
;
...
...
dlls/gdi32/path.c
View file @
a214a3c3
This diff is collapsed.
Click to expand it.
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