[Bug 2699] richedit behaves incorrectly with ES_DISABLENOSCROLL style, losing functionality

Wine Bugs wine-bugs at winehq.org
Wed Feb 9 10:30:31 CST 2005


http://bugs.winehq.org/show_bug.cgi?id=2699





------- Additional Comments From ikrakow_1999 at yahoo.com  2005-09-02 10:30 -------
Reproduced in Wine 20050111, from CVS, with download as of 2/8/2005.  Jem's
analysis is correct.  Some additional comments:

1) ES_NUMBER is defined in include/winuser.h, line 639, as an edit control style.

2) ES_DISABLENOSCROLL is defined ins include/richedit.h, line 172, as a _rich_
edit control style.

3) ES_NUMBER is processed in dlls/user/edit.c  (for the edit control).  Look at
lines 3700-3702.

4) ES_DISABLENOSCROLL is _never_ processed.

In Windows, the rich edit control is subclassed from the edit control.  The
designers of the rich edit control did not need to use the ES_NUMBER style bit
because the rich edit control never needed it.  So they used it as
ES_DISABLENOSCROLL, overriding the ES_NUMBER setting.

The patch is more complicated than simply determining whether the control is an
edit or a rich edit control.  Suppose a newly subclassed control (say,
RichEdit_Numeric) is derived from the edit control.  The ES_NUMBER bit might be
used in that case.  We need some general mechanism for handling subclassed
controls like this.
  

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the wine-bugs mailing list