
* Browser viewer:
  - controls: keys
  - code for redrawing up to 4 rectangles in viewer_common.ml
  - round bounding boxes to integers
  - how costly is it to compute bounding boxes on the client?

* GTK viewer
  - closing the window should quit the program

* Dot parser on the client?

* Viewers
  - tooltips
  - search for a package

  - share more code
    make it more modular: separate the viewport from the drawing code
  - should rescale the bounding box to a reasonable size
  - Use the following command for improved rendering:
      neato -n -T xdot /tmp/foo2.dot

* Js_of_ocaml:
  - version number should be put in a single place
    (lib/META  lib/syntax/pa_js.ml  compiler/generate.ml)
  - unimplemented functions should raise an exception

====

===> metadata ===> tooltips
===> if we do not have a bb, run the file through dot

Try to make this generic (!)

Functionalities
===============
- search for a package
  ===> use metadata in the dot file
- remove a package and recompute
- follow an edge backwards and forwards
- information on a node/edges


Try WebGL?
  http://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo
www.mdk.org.pl/2007/10/27/curvy-blues
http://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation
http://www.mdk.org.pl/articles/2007/08/06/vector-drawing-opengl-shaders-and-cairo
