Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
56a86447
Commit
56a86447
authored
Sep 19, 1999
by
Huw D M Davies
Committed by
Alexandre Julliard
Sep 19, 1999
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Extend DRAWMODE struct to win95 spec.
Add some more Escape -> Escape16 conversions.
parent
0098ab67
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
37 additions
and
4 deletions
+37
-4
escape.c
graphics/escape.c
+30
-3
init.c
graphics/win16drv/init.c
+3
-0
win16drv.h
include/win16drv.h
+4
-1
No files found.
graphics/escape.c
View file @
56a86447
...
...
@@ -41,10 +41,9 @@ INT WINAPI Escape( HDC hdc, INT nEscape, INT cbInput,
segout
=
(
SEGPTR
)
lpvOutData
;
switch
(
nEscape
)
{
/* Escape(hdc,QUERYESCSUPPORT,LPINT,NULL) */
/* Escape(hdc,
SETLINECAP
,LPINT,NULL) */
/* Escape(hdc,
CLIP_TO_PATH
,LPINT,NULL) */
case
QUERYESCSUPPORT
:
case
SETLINECAP
:
case
SETLINEJOIN
:
case
CLIP_TO_PATH
:
{
LPINT16
x
=
(
LPINT16
)
SEGPTR_NEW
(
INT16
);
*
x
=
*
(
INT
*
)
lpszInData
;
...
...
@@ -77,6 +76,19 @@ INT WINAPI Escape( HDC hdc, INT nEscape, INT cbInput,
break
;
}
/* Escape(hdc,SETLINECAP,LPINT,LPINT) */
case
SETLINECAP
:
case
SETLINEJOIN
:
case
SETMITERLIMIT
:
{
LPINT16
new
=
(
LPINT16
)
SEGPTR_NEW
(
INT16
);
LPINT16
old
=
(
LPINT16
)
SEGPTR_NEW
(
INT16
);
*
new
=
*
(
INT
*
)
lpszInData
;
segin
=
SEGPTR_GET
(
new
);
segout
=
SEGPTR_GET
(
old
);
cbInput
=
sizeof
(
INT16
);
break
;
}
/* Escape(hdc,GETTECHNOLOGY,NULL,LPSTR); */
case
GETTECHNOLOGY
:
{
segout
=
SEGPTR_GET
(
SEGPTR_ALLOC
(
200
));
/* enough I hope */
...
...
@@ -117,6 +129,15 @@ INT WINAPI Escape( HDC hdc, INT nEscape, INT cbInput,
SetAbortProc
(
hdc
,
(
ABORTPROC
)
lpszInData
);
break
;
/* Escape(hdc,END_PATH,PATHINFO,NULL); */
case
END_PATH
:
{
BYTE
*
p
=
SEGPTR_ALLOC
(
cbInput
);
memcpy
(
p
,
lpszInData
,
cbInput
);
segin
=
SEGPTR_GET
(
p
);
break
;
}
default
:
break
;
...
...
@@ -130,9 +151,13 @@ INT WINAPI Escape( HDC hdc, INT nEscape, INT cbInput,
TRACE
(
"target DC implements Escape %d
\n
"
,
nEscape
);
SEGPTR_FREE
(
PTR_SEG_TO_LIN
(
segin
));
break
;
case
SETLINECAP
:
case
SETLINEJOIN
:
case
SETMITERLIMIT
:
*
(
LPINT
)
lpvOutData
=
*
(
LPINT16
)
PTR_SEG_TO_LIN
(
segout
);
SEGPTR_FREE
(
PTR_SEG_TO_LIN
(
segin
));
SEGPTR_FREE
(
PTR_SEG_TO_LIN
(
segout
));
break
;
case
GETSCALINGFACTOR
:
case
GETPRINTINGOFFSET
:
...
...
@@ -169,6 +194,8 @@ INT WINAPI Escape( HDC hdc, INT nEscape, INT cbInput,
break
;
}
case
STARTDOC
:
case
CLIP_TO_PATH
:
case
END_PATH
:
SEGPTR_FREE
(
PTR_SEG_TO_LIN
(
segin
));
break
;
...
...
graphics/win16drv/init.c
View file @
56a86447
...
...
@@ -168,6 +168,9 @@ void InitDrawMode(LPDRAWMODE lpDrawMode)
lpDrawMode
->
CharExtra
=
0x0000
;
lpDrawMode
->
LbkColor
=
0x00ffffff
;
lpDrawMode
->
LTextColor
=
0x00000000
;
lpDrawMode
->
ICMCXform
=
0
;
/* ? */
lpDrawMode
->
StretchBltMode
=
STRETCH_ANDSCANS
;
lpDrawMode
->
eMiterLimit
=
1
;
}
BOOL
WIN16DRV_CreateDC
(
DC
*
dc
,
LPCSTR
driver
,
LPCSTR
device
,
LPCSTR
output
,
...
...
include/win16drv.h
View file @
56a86447
...
...
@@ -125,7 +125,10 @@ typedef struct DRAWMODE
SHORT
BreakCount
;
SHORT
CharExtra
;
COLORREF
LbkColor
;
COLORREF
LTextColor
;
COLORREF
LTextColor
;
DWORD
ICMCXform
;
SHORT
StretchBltMode
;
DWORD
eMiterLimit
;
}
DRAWMODE
,
*
LPDRAWMODE
;
...
...
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