Several updates:

- use channels directly in annotations instead of their index;
- refactored the handling of repaint events in the view instead
  of the client.