What does Bakery give me that GNOME or gnomemm doesn ?
GTK+ and GNOME provide some widgets and some desktop and application services. gtkmm and gnomemm wraps these for use in C++. But GNOME doesn’t help the developer to put them all together to make an application. For instance, the developer still has to write code to warn the user when they have unsaved data, and to ask the user where to save that data. This gives the developer a lot of flexibility but for 90% of applications this will lead to a great deal of tedious reinventing-the-wheel and will lead to applications with subtle inconsistencies in their basic functionality. It would be difficult to provide something like Bakery in GNOME because it needs C++ concepts like Inheritance and Polymorphism. These can be done in the GtkObject system but it’s still too difficult to demand it of beginner users. But in C++ this stuff is easy – just inherit from Bakery::App_WithDoc_Gtk (or Bakery::App_WithDoc_GnomeUI), Bakery::Document, and Bakery::View, and override a few methods according to your