Todo and wishlist for libgnomeui. Please feel free to add, remove, or comment.

Some of this may be libgnome rather than libgnomeui, but close enough.

* Going through Gnome CVS and updating apps to use new libgnomeui features
  is almost always needed.

* g_return_if_fail checks are missing in many functions.

* Consistently use gnome-uidefs.h instead of random constants. Better, 
  devise a general system for padding that works at runtime. Owen Taylor
  emailed some ideas on this to the list once.

* Documentation, documentation, documentation... both commenting header
  files and writing real docs would help.

* a GnomeFileSelection widget is needed; it will have to integrate well
  with gmc, so might want to talk to Miguel. Also, lots of the 
  GtkFileSelection functionality isn't in the public interface, but 
  could be useful; so changing GtkFileSelection to allow sharing its
  code might be necessary.

* check for (non)use of "const" throughout the library and fix it when needed.

* Silence everything from -Wall
  [ This is largely done for libgnome and libgnomeui
    The remaining warnings were left in to remind people to fix the
    actual underlying problem. ]

* Write a "minibuffer" widget which is a statusbar that can take input, a 
  la Emacs. Enable gnome-app-util.[hc] to use it. This is sort of 
  prototyped but it blows right now. Please fix it, please...

* Fix things that are a pain in the *** to wrap with other languages,
  like GnomeUIInfo. 

* Draw and include nice pixmaps for the different message box flavors -
  warning, info, error, etc.

* A GnomeGuru widget like Windows's Wizards. 

* A GnomeAnim or GtkAnim widget, using imlib and making it easy to 
  include little animations, like a modem dialing or folders opening
  or the Mozilla spinner. This would add a real professional touch
  to many apps.

* GnomeLess is a stupid hack on top of GtkText and should be made for real;
  one idea here from Michael Zucchi is a GnomePage widget, which variously
  wraps postscript, pdf, html, text widgets but has a unified interface
  for all of them.

* The -icon-sel and -dentry-edit aren't finished; they may not be needed,
  depending on how gmenu/gmc end up handling this issue.

* GnomeAbout could probably be more attractive - green doesn't seem to 
  match anything else.

* There is a lot of enhancement and making coherent that could go on.

* GnomeFontSelection and GnomePrintDialog

==================== Done or In Progress =========================

* GnomeApp should have an optional status bar. 

* A GnomeApp API which configurably uses either the status bar (if
  present) or dialogs for messages. e.g.

    gnome_app_warning (GnomeApp * app, const gchar * message);
    gnome_app_yes_no_question (GnomeApp * app, const gchar * question);
    gnome_app_status (GnomeApp * app, const gchar * status); 

  [gnome-app-util.h]

* A way to configure libgnomeui. Does this exist? It would allow setting
  global Gnome preferences. It should use gnome-config and not a gtkrc.
  Ideally, however, it would allow setting gtkrc-type things, so 
  editing gtkrc isn't necessary to get flashy color schemes on Gnome apps.

  [gnome-preferences.h, not really well-thought-out or finished.]

* gnome-propertybox could be expanded to allow user configuration.
  Some (popular -- see gnome list) ideas are to let the user get rid
  of the Apply button, or the let the user have a per-page Apply button
  (in this case it would appear inside the notebook page)
  In theory the API shouldn't change when this is done.

  [gnome-preferences.h]

* gnome-propertybox could also use a way to cause an OK to be aborted
  This would take the form of a flag that is cleared before a global
  apply, set via some new function, and checked before closing the
  window

  [the "close" signal of GnomeDialog can be blocked by returning
   false from a callback connected to it.]

* gnome-dialog should have a _set_hide method to hide on any click, 
  instead of destroying. This can be a way to speed up a program's UI,
  with a space tradeoff of course. gnome_dialog_close() should hide
  rather than destroy if this flag is set.

  [gnome_dialog_just_hides]

* gnome-less.[hc] isn't quite finished, and doesn't build by default
  due to the feature freeze. Fix this.
 
  [Now builds, works except for popup menu.]
