LCL-Win32: Draw arrows in menus accurately also in high DPI modes. Issue #30804, patch from AlexeyT.

git-svn-id: trunk@53238 -
This commit is contained in:
juha 2016-10-27 14:56:24 +00:00
parent aa647dd349
commit ed90b0ee2f

View File

@ -740,10 +740,10 @@ begin
if AMenuItem.Count > 0 then
begin
SubMenuRect := ARect;
SubMenuRect.Top := (SubMenuRect.Top + SubMenuRect.Bottom - Metrics.SubMenuSize.cy) div 2;
SubMenuRect.Bottom := SubMenuRect.Top + Metrics.SubMenuSize.cy;
SubMenuRect.Right := SubMenuRect.Right - Metrics.SubMenuMargins.cxRightWidth + Metrics.SubMenuMargins.cxLeftWidth;
SubMenuRect.Left := SubMenuRect.Right - Metrics.SubMenuSize.cx;
SubMenuRect.Top := SubMenuRect.Top + Metrics.ItemMargins.cyTopHeight;
SubMenuRect.Bottom := SubMenuRect.Bottom - Metrics.ItemMargins.cyBottomHeight;
Tmp := ThemeServices.GetElementDetails(PopupSubmenuStates[AMenuItem.Enabled]);
Tmp.State := Tmp.State + 2;
ThemeDrawElement(AHDC, Tmp, SubMenuRect, nil);