by using a table to map the screwy Windows DMPAPER_* stuff, which wxWidgets stupidly uses.
Eliminates many "Gtk-WARNING **: Unknown paper size", and the occasional
"GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed".
And fixes approximately one zillion memory leaks.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Apply the same workaround as was applied in r67771 to wxMessageDialog to
wxRichMessageDialog and map IDCANCEL returned from it to IDOK if "Cancel" is
the only button in the dialog -- as in this case it's really just a renamed
(for convenience of allowing the user to use "Esc" to close it) "OK".
Closes#16153.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Improve showing the button which closed the message box by doing it inside the
dialog used for testing it instead of popping up a separate message box just
for this.
And do the same thing for rich message boxes as for the normal ones.
See #16153.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This dialog was getting too tall, especially in the rich message boxes case,
so reduce its vertical size.
Also centre it on screen to prevent it from being displayed partially off it
because contents was added to the dialog after creating it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use MulDiv() instead of naive multiplication followed by division as this
could overflow, and did when large paper sizes were used in print preview.
Closes#16138.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This fix is similar to the previous commit but more speculative, as we
currently don't have a bug scenario for it. Still, it seems to be wrong to
call PrepareForItem() just before GetLineStart() which undoes its effect, so
exchange the order of the calls.
See #16132.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Call PrepareForItem() after calling GetLineStart() as the latter calls
PrepareForItem() for other items internally, undoing the effects of the first
call.
Closes#16132.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Correct the expander rectangle definition to work when the expander column
left boundary is not 0, i.e. if the expander column is not the left most one.
Closes#16131.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Rely on being able to set the separator size, which is supported since
comctl32.dll v4.71 (the version distributed with IE 4.0...).
This allows to remove big chunks of code dealing with multiple separators and
simplifies the rest.
Closes#16129.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Native text control sends EN_CHANGE when the font changes, producing a
wxEVT_TEXT event as if the user changed the value. This is not the case,
so supress the event.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775