public void setProfile( Profile p ) {

		boolean[] unlocks = p.getShipUnlocks();
		for (int i = 0; i < shipBoxes.size(); i++) {
			shipBoxes.get(i).setSelected( unlocks[i] );
		}

		for ( Map.Entry<Achievement, JCheckBox> entry : shipAchBoxes.entrySet() ) {
			String achId = entry.getKey().getId();
			JCheckBox box = entry.getValue();

			box.setSelected(false);

			for ( AchievementRecord rec : p.getAchievements() )
				if ( rec.getAchievementId().equals( achId ) )
					box.setSelected(true);
		}
		this.repaint();
	}