protected void applyFunction(SynthetizationType synthesizationType) {
		List<Mask> masks = new ArrayList<Mask>();
		if (horizontal) {
			masks.add(getMask(HORIZONTAL));
		}
		if (vertical) {
			masks.add(getMask(VERTICAL));
		}
		if (diagonal) {
			masks.add(getMask(DIAGONAL));
		}
		if (inverseDiagonal) {
			masks.add(getMask(INVERSE_DIAGONAL));
		}
		panel.setImage(MaskUtils.applyMasks(panel.getImage(), masks,
				synthesizationType));
		panel.repaint();
		dispose();
	}