Fix toolbar repainting after deleting a tool in wxMSW.

The toolbar was in an inconsistent state when recalculating the sizes of the
separators used as placeholders for the controls and stretch spacers as the
tool was already deleted from the native toolbar but still present in wx
internal toolbar data and this resulted in discrepancies between the indices
in the native and wx toolbars.

Fix this by specially marking the already deleted but not yet removed tool and
ignoring it during the recalculations.

This makes the old, and only partially successful, attempt to work around this
bug in DoDeleteTool() unnecessary and so the code is actually simplified by
this change.

Closes #16095.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@76183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2014-03-23 00:51:27 +00:00
parent 37024c991c
commit 78c7a11877
2 changed files with 41 additions and 46 deletions

View File

@@ -645,6 +645,7 @@ wxMSW:
- Fix handling of controls in the vertical toolbars (Artur Wieczorek).
- Fix loading of top to bottom BMP files in wxBitmap (Artur Wieczorek).
- Fix resource leak in wxStaticBitmap with RGBA icons (Artur Wieczorek).
- Fix toolbar repainting after deleting a tool from it (Artur Wieczorek).
- Fix handling of deleting directories in wxFileSystemWatcher (Eric Raijmakers).
- Disable the use of new style wxDirDialog under Vista to work around a bug in
its implementation under this system (jtrauntvein).