Ways to use executable

Load an image.
Right mouse - for first seed and following seeds.
Enter - finish the current contour.
Ctrl+Enter - finish the current contour as closed.
Backspace - when scissoring, delete the last seed; otherwise, delete selected contour.
Select a contour by moving onto it. Selected contour is red, un-selected ones are green.

Structure of the code

The tools used: C++, FLTK, OpenGL.
The code is built on top of skeleton code given for comp4411
We have djkstra(.h, .cpp) helper functions for building path trees given seed and all other rutines related to dijkstra algorithm.
We have seed(.h, .cpp) class to maintain lines drawen to generate contour/mask for saving, during restoring image when backspace is pressed, and to restore images during zooming in/out.
PointBrush.cpp - handles drawing, backspaces, enter, enter+ctrl by maintaining data structures
PaintView.cpp - actually catches events and calls Pointbrush