Ribbon (Summer of Code)

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:

Comments

Win32 API port?

Any chance of porting this to the Windows API? This would allow for smaller file sizes without using wxWidgets.

programming

what version of wxwidgets is it

what version is it

what version is it

I like it :)

Great lib! Thanks!

GOOD project with FEW resources.

developers must not leave their project incomplete. At least a video tutorial would have been great...

Accessibility

I'm testing the ribbon with wx 2.9 and it seems to be really good and usefull. Congratulations for it...

But, I have a question. How about the accessibility? As I've tested the buttons can't have focus and there is no tooltip. Are you guys thinking about it?

Thank you very much,
Matheus de Oliveira

Fancy but useless. Classic

Fancy but useless. Classic toolbars are waaaaaaay faster to use.

I use Office 2003 every day, and there is no doubt, compared to toolbar buttons, Ribbon controls are more than twice slower to access.

Ribbon availability

Hello Corsix,
I have never worked with wxWidgets and can't find any mention about Ribbon control on main wxWidgets page. Until today we have used an MFC for our applications development. We are currently considering a way how to create our app multi-platform and searching for some multi-os framework. Our app uses Ribbon control, so our requirement is that the new FW has to have Ribbon too. So I want to ask you if the ribbon widget you mentioned in this article is already available for developers?

Regards
Ludek

Ribbon availability

The ribbon stuff is available in wxWidgets SVN trunk, and in wxWidgets 2.9.1 (and presumably also in subsequently releases after 2.9.1).

Support adding wxComboBox

My application allows user select font size from combo box, does wxRibbon support adding wxComboBox?

wxRibbon in Visual Studio 2005

How can i implement this, working in Visual C++ 2005. I actually have build wxWidget in VS2005, but i can't build wxRibbon. I am a newbie...

wxRibbon

Dear sir, Is this wxRibbon control the "summer of code" project. Where can i find the example code for implementing this ribbon control.

Release date? - never soon

Release date? - never soon enough. You could make a independent package, and also minimize wxWidgets dependency. wx is really bloated, thats why WTL/ATL still rules.

Looks great

Congratulations looks very fine, sorry for the missing OSX screenshots. Waiting for the next release (2.9.1) to test drive

Roadmap ?

Hi !

Thanks for the very nice job, it's really great !

Do you have any plans to implement the "missing" functions of the standard toolbar :
- AddCheckTool
- AddRadioTool
- AddControl

That would make wxRibbonBar a complete replacement solution for wxToolBar.

Thanks again for the very good work

Now in trunk

You can now find the wxRibbon code in the wxWidgets trunk, and read the documentation online too. This should mean that you'll see it in the next wxWidgets release (2.9.1).

Great new control!

Where to find the library source and samples?

2.9.x

I would guess that it'll be merged into the wxWidgets trunk after the release of 2.9.0 or 2.9.1, and hence it should appear in the release after that (2.9.1 or 2.9.2), though I cannot guarantee anything.

Thanks for your contribution!

In what version of wxWidgets will it be included?

Does it support Mac?

Beautiful but not useful.

Beautiful but not useful.

Care to explain?

Care to explain?

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <span>
  • Lines and paragraphs break automatically.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <brainfuck>, <c>, <cpp>, <haskell>, <lua>, <php>.

More information about formatting options