The idea of an ExtendedChoice implementation that is (hopefully) portable to all platforms supported by wxPython is interesting. Windows already have this kind of feature.
ExtendedChoice is built using 4 different controls:
A wx.StaticBitmap to handle the icons;
What It Can Do:
Behaves like wx.Choice or wx.ComboBox in handling Char/Key events;
- Set the whole control colour or change it in runtime;
- Set most Background/Foreground colour for choices, Background/Foreground
- Motifs/Styles, text colour and text selection colour;
- Set or change in runtime font associated to each or all the choices;
- Depending On The Class Construction (EC_RULES Style), You Can Have Borders And Customize Them;
- Sort ascending/descending the choices;
- Add or remove choices from the choice-list;
Add icons/images in runtime to the wx.ImageList associated to the control;
- Change the order in which icons and choices are associated (change icon for an already present choice);
- Replace choices with other user-defined strings/labels.
Downloads, screenshots, demo and more info can be found at: