In spite of the MSDN documentation, EC_USEFONTINFO can't be used in lParam
with rich edit controls, so pass it in wParam for them.
Closes #14598.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73391
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
// classic mode, i.e. without themes. Also, the margin can be reset to
// 0 easily by calling SetMargins() explicitly but setting it to the
// default value is not currently supported.
// classic mode, i.e. without themes. Also, the margin can be reset to
// 0 easily by calling SetMargins() explicitly but setting it to the
// default value is not currently supported.
- ::SendMessage(GetHwnd(), EM_SETMARGINS,
- EC_LEFTMARGIN | EC_RIGHTMARGIN,
- MAKELPARAM(EC_USEFONTINFO, EC_USEFONTINFO));
+ //
+ // Finally, notice that EC_USEFONTINFO is used differently for plain
+ // and rich text controls.
+ WPARAM wParam;
+ LPARAM lParam;
+ if ( IsRich() )
+ {
+ wParam = EC_USEFONTINFO;
+ lParam = 0;
+ }
+ else // plain EDIT, EC_USEFONTINFO is used in lParam with them.
+ {
+ wParam = EC_LEFTMARGIN | EC_RIGHTMARGIN;
+ lParam = MAKELPARAM(EC_USEFONTINFO, EC_USEFONTINFO);
+ }
+
+ ::SendMessage(GetHwnd(), EM_SETMARGINS, wParam, lParam);