private void highlightPath(Zone finalZone) { finalZone.setPathState(); path.Add(finalZone); Zone nextParent = finalZone.parentZone; bool done = false; while(!done) { path.Add(nextParent); nextParent.setPathState(); if (nextParent.parentZone != null) { nextParent = nextParent.parentZone; } else done = true; } _source = null; _dest = null; }