void (JCheckBox checkbox, int index, boolean value) { checkbox.setSelected(value); repaint(); // fire change notification in case if we've already initialized model final ListModel model = getModel(); if (model instanceof DefaultListModel) { //noinspection unchecked ((DefaultListModel)model).setElementAt(getModel().getElementAt(index), index); } if (checkBoxListListener != null) { checkBoxListListener.checkBoxSelectionChanged(index, value); } }