View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0021964LazarusIDEpublic2012-05-06 18:492012-06-19 01:06
ReporterWYC 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusfeedbackResolutionopen 
PlatformOSOS Version
Product Version0.9.30Product Build 
Target VersionFixed in Version 
Summary0021964: Hint will lose word
DescriptionPlease see the upload file picture.
OS: win7/64, linux
language: Traditional Chinese
lazarus version: all
The IDE hint will lose word. and the build program will happen too.

It happen in Chinese language( double character Environment)
TagsNo tags attached.
Fixed in Revision
LazTarget-
WidgetsetWin32/Win64
Attached Fileszip file icon hintBug.zip [^] (150,855 bytes) 2012-05-06 18:49

- Relationships
has duplicate 0022851new Hint for component on component palette is not completely visible 

-  Notes
(0059319)
Ihor Lavrynyuk (reporter)
2012-05-06 20:35
edited on: 2012-05-06 20:36

yes, I have same problem
http://www.youtube.com/watch?v=yWcg94lPxTA [^]

(0060542)
Juha Manninen (developer)
2012-06-14 22:01

Do you guys have a "Large Font" setting turned on? Do you have a Windows theme with a font bigger than normal?
The problem does not happen on every Windows machine, does it?
(0060620)
Martin Friebe (manager)
2012-06-19 01:06

I did find the following. Not sure if it is related.

THintWindow.CalcHintRect always uses "DrawText(Canvas.GetUpdatedHandle..."

But THintWindow.Paint may either use
   "DrawText(Canvas.GetUpdatedHandle..."
or
   ThemeServices.DrawText(Canvas

only ThemeServices.DrawText might use another font (not sure)

It calls
  Canvas.TextRect(R, R.Left, R.Top, S, TXTStyle);
with
  TXTStyle.SystemFont := Canvas.Font.IsDefault;//Match System Default Style

and Canvas.TextRect, if TXTStyle.SystemFont=true does (lcl\include\canvas.inc:1264):
  if Style.SystemFont then
    SelectObject(DC, OnGetSystemFont());

lcl\graphics.pp:2762
  OnGetSystemFont := @LocalGetSystemFont;

function LocalGetSystemFont: HFont;
begin
  Result := GetStockObject(DEFAULT_GUI_FONT);
end;


http://msdn.microsoft.com/en-us/library/windows/desktop/dd144925%28v=vs.85%29.aspx [^]

DEFAULT_GUI_FONT is only one of many fonts, there is also SYSTEM_FONT

If on the target system DEFAULT_GUI_FONT differs from the default font (as by TFont), then the measurement would be wrong.

- Issue History
Date Modified Username Field Change
2012-05-06 18:49 WYC New Issue
2012-05-06 18:49 WYC File Added: hintBug.zip
2012-05-06 18:49 WYC Widgetset => Win32/Win64
2012-05-06 20:35 Ihor Lavrynyuk Note Added: 0059319
2012-05-06 20:36 Ihor Lavrynyuk Note Edited: 0059319
2012-06-14 22:01 Juha Manninen Note Added: 0060542
2012-06-18 23:37 Juha Manninen LazTarget => -
2012-06-18 23:37 Juha Manninen Status new => feedback
2012-06-19 01:06 Martin Friebe Note Added: 0060620
2012-09-10 20:59 Juha Manninen Relationship added has duplicate 0022851



MantisBT 1.2.12[^]
Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker