add getChecked/setChecked, fix callbacks