Generate bundle code for wxRibbon classes
Description:
wxWidgets 3.1.6 does still uses wxBitmap for all of the wxRibbon classes. If the user is only using a single bitmap file, this won't matter. However, if they want to switch to an SVG file, or a bundle of images, then our current code generation won't support it. This a blocking problem for wxUiEditor itself because we can't switch to SVG files for the navigation panel unless with either duplicate all the PNG files, or we handle converting the bundles to bitmaps for wxRibbon classes.
Generating usable code should be fairly straightforward -- we already do something similar for wxDialog where we convert a bundle into a bitmap, and use that to load it into an icon. In that case, we use the window of the dialog to determine which bitmap (or SVG size) to pull out of the bundle.
Note that this is a blocking issue for wxUiEditor -- we can't complete the switch from PNG files to SVG files until this issue is resolved.
No longer a blocking issue, and it looks like bundle support will be in 3.1.7, so we should hold off...
It didn't make it into either 3.1.7 or 3.20. Until I can get a scaled high DPI system up and running, I can't test any of the changes to ensure they actually work. I'm going to wait until after the release and add this in at a later time.
None of the maintainers for wxPython, wxLua and wxPHP have a lot of time, and as such there can be quite a delay between a wxWidgets release and the language adding support for it. It can be even longer for an updated binary to be created since none of them provide binaries as part of their release. What that means is that even if the work on ribbon bundle support were added today, it wouldn't make it into wxWidgets 3.2.2 for some time, and it would be an even longer period of time before it shows up in the languages. Unfortunately, I think the better solution is to go ahead and add bundle conversion code for all 4 languages.
Note that where this completely fails is XRC -- since I can't tell XRC which bitmap to choose based on the current DPI, my only option is to pass in a single bitmap. That's going to be a big issue for the wx??? languages since they will have the option to use XRC for the UI. Heavy sigh... 😿
This has become less of a problem now that plans for wxLua and wxPHP were dropped. Moving it to the 1.1x milestone for now.
Code is in place that mostly works for 1.2, so dropping the milestone.