void addMultipleChoice(final String title, final String[] choices,
			final ChangeListener listener) {
		adjustColumnCount(choices.length + 1);
		MyLabel titleComp = new MyLabel(title);
		MyCheckBox[] cb = new MyCheckBox[choices.length];
		final int row = rows.size();
		final ChoiceRow choiceRow = new ChoiceRow(titleComp, cb);
		ItemListener itemListener = e -> {
			adjustUseForAllEnablement();
			if (listener != null) {
				ResolveConflictChangeEvent re =
					new ResolveConflictChangeEvent(e.getSource(), row, choiceRow.getChoice());
				listener.stateChanged(re);
			}
		};
		for (int i = 0; i < choices.length; i++) {
			cb[i] = new MyCheckBox(choices[i]);
			cb[i].setName(getComponentName(row, (i + 1)));
			cb[i].addItemListener(itemListener);
		}
		if (choices.length > 0) {
			titleComp.setBorder(checkBoxBorder);
		}
		addRow(choiceRow);
		rowPanel.validate();
		validate();
		invalidate();
		adjustUseForAllEnablement();
	}
Adds checkbox choices as a row of the table.
Check boxes allow you to select one or more choices in the row.

@param title title that is placed at the beginning of the row
@param choices the text for each choice in the row
@param listener listener that gets notified whenever the state of 
one of the checkboxes in this row changes.
Ghidra/Features/Base/src/main/java/ghidra/app/merge/listing/VariousChoicesPanel.java