1

What are some of the best known Dockable GUI developments, with a C API?

I know about wxWidgets (wxAUI), but there doesn't seem to be a C API for that, and I also know about GTK+, which I've heard is a bit of a pain when talking about cross-platform and it doesn't seem to come with docking features.

Do such libraries even exist, and what are their pros and cons?

Jeroen
  • 15,257
  • 12
  • 59
  • 102

1 Answers1

3

The docking library for GTK is GDL.

It's not so surprising that most GUI libraries wouldn't come with docking features. Docking is a feature with quite limited usefulness - you'd want to use it for IDEs, and programs with lots of tools like Photoshop, but for simpler programs it's best avoided. Well-meaning developers love docking as a way to make their applications as customizable as possible, but a good toolkit will remove that temptation and encourage developers to just make the interface simple rather than customizable.

One thing that is available in GTK without any extra dependencies in GTK is GtkToolPalette, with subgroups that you can open and close.

ptomato
  • 56,175
  • 13
  • 112
  • 165
  • Is GDL a standard component of GTK+ 2? – Jeroen Mar 09 '14 at 20:18
  • 1
    It's part of the Gnome platform, albeit a less-used part. – ptomato Mar 09 '14 at 20:59
  • I'm confused now - will this component not be cross platform then? – Jeroen Mar 09 '14 at 21:10
  • 1
    Well, it's not a standard component of GTK 2, for the reasons mentioned above. It's a docking library for GTK, and so since GTK is cross-platform then something built on top of it will be as well, unless it uses any platform-specific functionality. I would be very surprised if it did. However, since GDL is not used very much, installing it on various platforms might be difficult due to lack of people who actually want to install it on various platforms. You could always compile it directly into your program. – ptomato Mar 10 '14 at 04:05
  • Oh sorry I totally read the last sentence in your answer wrong, it's clear now. Thanks! – Jeroen Mar 10 '14 at 06:26