mirror of
https://github.com/reactos/reactos.git
synced 2025-04-27 09:00:27 +00:00
[Win32SS] Fix Mask for Draw Frame States
Fixes drawing of caption bar buttons. See CORE-8808.
This commit is contained in:
parent
b857ae808e
commit
acf135d16d
2 changed files with 25 additions and 24 deletions
|
@ -12,6 +12,7 @@
|
|||
//
|
||||
|
||||
#include <win32k.h>
|
||||
DBG_DEFAULT_CHANNEL(UserDefwnd);
|
||||
|
||||
/* These tables are used in:
|
||||
* UITOOLS_DrawDiagEdge()
|
||||
|
@ -757,7 +758,7 @@ BOOL FASTCALL UITOOLS95_DFC_ButtonCheckRadio(HDC dc, LPRECT r, UINT uFlags, BOOL
|
|||
/* Ported from WINE20020904 */
|
||||
BOOL FASTCALL UITOOLS95_DrawFrameButton(HDC hdc, LPRECT rc, UINT uState)
|
||||
{
|
||||
switch(uState & 0xff)
|
||||
switch(uState & 0x1f)
|
||||
{
|
||||
case DFCS_BUTTONPUSH:
|
||||
return UITOOLS95_DFC_ButtonPush(hdc, rc, uState);
|
||||
|
@ -771,10 +772,10 @@ BOOL FASTCALL UITOOLS95_DrawFrameButton(HDC hdc, LPRECT rc, UINT uState)
|
|||
case DFCS_BUTTONRADIO:
|
||||
return UITOOLS95_DFC_ButtonCheckRadio(hdc, rc, uState, TRUE);
|
||||
|
||||
/*
|
||||
|
||||
default:
|
||||
DbgPrint("Invalid button state=0x%04x\n", uState);
|
||||
*/
|
||||
ERR("Invalid button state=0x%04x\n", uState);
|
||||
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -787,7 +788,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameCaption(HDC dc, LPRECT r, UINT uFlags)
|
|||
RECT myr;
|
||||
INT bkmode;
|
||||
WCHAR Symbol;
|
||||
switch(uFlags & 0xff)
|
||||
switch(uFlags & 0xf)
|
||||
{
|
||||
case DFCS_CAPTIONCLOSE:
|
||||
Symbol = 'r';
|
||||
|
@ -805,6 +806,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameCaption(HDC dc, LPRECT r, UINT uFlags)
|
|||
Symbol = '2';
|
||||
break;
|
||||
default:
|
||||
ERR("Invalid caption; flags=0x%04x\n", uFlags);
|
||||
return FALSE;
|
||||
}
|
||||
IntDrawRectEdge(dc,r,(uFlags&DFCS_PUSHED) ? EDGE_SUNKEN : EDGE_RAISED, BF_RECT | BF_MIDDLE | BF_SOFT);
|
||||
|
@ -854,7 +856,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameScroll(HDC dc, LPRECT r, UINT uFlags)
|
|||
RECT myr;
|
||||
INT bkmode;
|
||||
WCHAR Symbol;
|
||||
switch(uFlags & 0xff)
|
||||
switch(uFlags & 0x1f)
|
||||
{
|
||||
case DFCS_SCROLLCOMBOBOX:
|
||||
case DFCS_SCROLLDOWN:
|
||||
|
@ -908,6 +910,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameScroll(HDC dc, LPRECT r, UINT uFlags)
|
|||
GreDeleteObject(hFont);
|
||||
return TRUE;
|
||||
default:
|
||||
ERR("Invalid scroll; flags=0x%04x\n", uFlags);
|
||||
return FALSE;
|
||||
}
|
||||
IntDrawRectEdge(dc, r, (uFlags & DFCS_PUSHED) ? EDGE_SUNKEN : EDGE_RAISED, (uFlags&DFCS_FLAT) | BF_MIDDLE | BF_RECT);
|
||||
|
@ -957,7 +960,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
|
|||
RECT myr;
|
||||
INT cxy;
|
||||
cxy = UITOOLS_MakeSquareRect(r, &myr);
|
||||
switch(uFlags & 0xff)
|
||||
switch(uFlags & 0x1f)
|
||||
{
|
||||
case DFCS_MENUARROWUP:
|
||||
Symbol = '5';
|
||||
|
@ -984,9 +987,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
|
|||
break;
|
||||
|
||||
default:
|
||||
/*
|
||||
DbgPrint("Invalid menu; flags=0x%04x\n", uFlags);
|
||||
*/
|
||||
ERR("Invalid menu; flags=0x%04x\n", uFlags);
|
||||
return FALSE;
|
||||
}
|
||||
/* acquire ressources only if valid menu */
|
||||
|
@ -1000,8 +1001,8 @@ BOOL FASTCALL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
|
|||
/* save font */
|
||||
hOldFont = NtGdiSelectFont(dc, hFont);
|
||||
|
||||
if ((uFlags & 0xff) == DFCS_MENUARROWUP ||
|
||||
(uFlags & 0xff) == DFCS_MENUARROWDOWN )
|
||||
if ((uFlags & 0x1f) == DFCS_MENUARROWUP ||
|
||||
(uFlags & 0x1f) == DFCS_MENUARROWDOWN )
|
||||
{
|
||||
#if 0
|
||||
if (uFlags & DFCS_INACTIVE)
|
||||
|
|
|
@ -777,7 +777,7 @@ static BOOL UITOOLS95_DFC_ButtonCheckRadio(HDC dc, LPRECT r, UINT uFlags, BOOL R
|
|||
/* Ported from WINE20020904 */
|
||||
static BOOL UITOOLS95_DrawFrameButton(HDC hdc, LPRECT rc, UINT uState)
|
||||
{
|
||||
switch(uState & 0xff)
|
||||
switch(uState & 0x1f)
|
||||
{
|
||||
case DFCS_BUTTONPUSH:
|
||||
return UITOOLS95_DFC_ButtonPush(hdc, rc, uState);
|
||||
|
@ -791,10 +791,10 @@ static BOOL UITOOLS95_DrawFrameButton(HDC hdc, LPRECT rc, UINT uState)
|
|||
case DFCS_BUTTONRADIO:
|
||||
return UITOOLS95_DFC_ButtonCheckRadio(hdc, rc, uState, TRUE);
|
||||
|
||||
/*
|
||||
|
||||
default:
|
||||
DbgPrint("Invalid button state=0x%04x\n", uState);
|
||||
*/
|
||||
ERR("Invalid button state=0x%04x\n", uState);
|
||||
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
|
@ -808,7 +808,7 @@ static BOOL UITOOLS95_DrawFrameCaption(HDC dc, LPRECT r, UINT uFlags)
|
|||
RECT myr;
|
||||
INT bkmode;
|
||||
TCHAR Symbol;
|
||||
switch(uFlags & 0xff)
|
||||
switch(uFlags & 0xf)
|
||||
{
|
||||
case DFCS_CAPTIONCLOSE:
|
||||
Symbol = 'r';
|
||||
|
@ -826,7 +826,7 @@ static BOOL UITOOLS95_DrawFrameCaption(HDC dc, LPRECT r, UINT uFlags)
|
|||
Symbol = '2';
|
||||
break;
|
||||
default:
|
||||
WARN("Invalid caption; flags=0x%04x\n", uFlags);
|
||||
ERR("Invalid caption; flags=0x%04x\n", uFlags);
|
||||
return FALSE;
|
||||
}
|
||||
IntDrawRectEdge(dc,r,(uFlags&DFCS_PUSHED) ? EDGE_SUNKEN : EDGE_RAISED, BF_RECT | BF_MIDDLE | BF_SOFT, 1);
|
||||
|
@ -875,7 +875,7 @@ static BOOL UITOOLS95_DrawFrameScroll(HDC dc, LPRECT r, UINT uFlags)
|
|||
RECT myr;
|
||||
INT bkmode;
|
||||
TCHAR Symbol;
|
||||
switch(uFlags & 0xff)
|
||||
switch(uFlags & 0x1f)
|
||||
{
|
||||
case DFCS_SCROLLCOMBOBOX:
|
||||
case DFCS_SCROLLDOWN:
|
||||
|
@ -929,7 +929,7 @@ static BOOL UITOOLS95_DrawFrameScroll(HDC dc, LPRECT r, UINT uFlags)
|
|||
DeleteObject(hFont);
|
||||
return TRUE;
|
||||
default:
|
||||
WARN("Invalid scroll; flags=0x%04x\n", uFlags);
|
||||
ERR("Invalid scroll; flags=0x%04x\n", uFlags);
|
||||
return FALSE;
|
||||
}
|
||||
IntDrawRectEdge(dc, r, (uFlags & DFCS_PUSHED) ? EDGE_SUNKEN : EDGE_RAISED, (uFlags&DFCS_FLAT) | BF_MIDDLE | BF_RECT, 1);
|
||||
|
@ -979,7 +979,7 @@ static BOOL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
|
|||
RECT myr;
|
||||
INT cxy;
|
||||
cxy = UITOOLS_MakeSquareRect(r, &myr);
|
||||
switch(uFlags & 0xff)
|
||||
switch(uFlags & 0x1f)
|
||||
{
|
||||
case DFCS_MENUARROWUP:
|
||||
Symbol = '5';
|
||||
|
@ -1006,7 +1006,7 @@ static BOOL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
|
|||
break;
|
||||
|
||||
default:
|
||||
WARN("Invalid menu; flags=0x%04x\n", uFlags);
|
||||
ERR("Invalid menu; flags=0x%04x\n", uFlags);
|
||||
return FALSE;
|
||||
}
|
||||
/* acquire ressources only if valid menu */
|
||||
|
@ -1020,8 +1020,8 @@ static BOOL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
|
|||
/* save font */
|
||||
hOldFont = SelectObject(dc, hFont);
|
||||
|
||||
if ((uFlags & 0xff) == DFCS_MENUARROWUP ||
|
||||
(uFlags & 0xff) == DFCS_MENUARROWDOWN )
|
||||
if ((uFlags & 0x1f) == DFCS_MENUARROWUP ||
|
||||
(uFlags & 0x1f) == DFCS_MENUARROWDOWN )
|
||||
{
|
||||
#if 0
|
||||
if (uFlags & DFCS_INACTIVE)
|
||||
|
|
Loading…
Reference in a new issue