
/*  $Header: /cvs/gnome/gperfmeter/TODO,v 1.9 2005/01/25 22:44:21 richb Exp $
 *
 *  Copyright (c) 1990-2004 Sun Microsystems, Inc.
 *  All Rights Reserved.
 */

Things still todo to gperfmeter to bring it up to the level of sdtperfmeter.
----------------------------------------------------------------------------

* Questions arising from doing the GtkItemFactoryEntry to GtkActionEntry
  conversion:
  - Why are some of the keyboard accelerators inconsistent between items 
    in the View->Metrics menu and the graph popup menu?

* Need a update the gperfmeter.1 to be applicable for gperfmeter, not
  sdtperfmeter.

* Fix color settings for meters.

* Need to work out how to get the Usage() message printed out when the user
  gives '?' or "--help" on the command line.

* Need to hookup the "On Item" Help menu item.

* Fixup tooltips.

* Need to resolve all the XXX comments in the code.

* Make sure that all text is properly localised.

* Have removed everything from the PmShutdown() routine except the exit(1)
  call. Need to determine if all of the code that was there is really needed.

* perfmeter.c: MainWinKeyHandler(): not handling the "only" case in the 
  old ActionShow() routine.

* The following routines need to be totally converted:

  perfmeter.c:  PmResetDecor
  perfmeter.c:  WindowMessageCB

* A lot of the sdtperfmeter widgets have something like:

  XtAddCallback(UIP->Top, XmNhelpCallback, PmHelpCB, (XtPointer) "SetupDB");

  Will need to see if we can add the equivalent to the Gtk+ widgets.

* The design of the Glade UI for gperfmeter has hard-coded the width/height
  of a lot of the widgets in order to get the layout to look correct. This
  is just going to be plain broken if the font size is changed, and for other
  locales. The UI should be redesigned to take this into effect.

* There are probably lots of places where I should be doing the Gtk equivalent
  of freeing widgets, strings etc. Look for occurances of XtFree() in the
  original code.

* Calls to XmToggleButtonSetState() have a third parameter (a boolean value
  that indicates whether XmNvalueChangedCallback should be called). Need to
  determine if we need to do something else in the Gtk code if that value was
  true.

----

Future.
-------

* Work out what else can be removed/simplified now.

* Need to get working as an applet in the panel. See applet tutorial at:
  http://developer.gnome.org/doc/tutorials/applet/index.html

  Need to fixup the following four routines which are applet specific:

  DisplayTooltip() 
  UpdateTooltipLabel()
  TooltipPopNotifyCallback()
  TooltipHandler()

* The checkbox menu items should probably use the PM->... values as toggles
  for setting things instead of GTK_WIDGET_VISIBLE().

* There are a lot of places where the same piece of code (almost) is repeated
  several times. Look at ways to simplify this (eg. using a function to loop
  over values in a data structure).

* Create a GtkWidget to do the actual strip charts (given an array
  of values, above/below colors etc...). This might then be useful
  to other applications.

* Adjust to use libglade rather than Glade to build this.

* Abstract out all the Gtk/Gdk/Xlib specific calls into a set of routines
  in a gtk.c file, so that it will make it easier to port to other graphics
  libraries (if needed).

* Put back the code that lets the user specify their own versions of the
  dead, sick and icon bitmaps.

* Incorporate suggested changes from the HCI engineer(s) assigned to this
  project.

* Reimplement the sdtperfmeter graph separator (ie. a shadowed line)
  rather than the OpenWindows style separator that gperfmeter currently uses.

* Possibly adjust the PmAddHostToList() routine to not add a new host name
  to the remote host menu if italready exists in that menu.

* Adjust all perfmeter routine names to start with Pm.

* Consider adjusting the command line argument parsing to use popt.

====
