As some of you may know, this summer I've been participating in the Google Summer of Code, creating ribbon controls for wxWidgets.

First of all, some Windows screenshots showing how things "collapse" as the ribbon width decreases:






In the above screenshot, the width is so small that some of the panels have "minimised", at which point the user can expand them when they want to use them:

At even smaller resolutions, scroll buttons are used:

The above screenshots contain the wxRibbonToolBar (on the left-most panel) and wxRibbonButtonBar (on the middle two panels). The other interesting widget is wxRibbonGallery (on the right two panels):

All of the ribbon controls are custom painted, allowing the colour scheme to be radically changed at runtime:



As well as mere colour changes, the entire art provider can be changed. All of the above screenshots are using the MSW art provider, which is based on the art style used in Microsoft Office. An alternative to that is the AUI art provider, which is based on the art style of wxAUI:

Like the MSW provider, the AUI provider can also adopt other colour schemes:

While the preferred state is to have the ribbon at the top of the window, it can also be positioned on the left:





One of wxWidget's strengths is in being cross platform. As such, a batch of screenshots wouldn't be complete without some Linux screenshots:





The MSW art style can still be used on Linux, as shown: