@Override
	public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
		int size = enumEntryList.size();

		if (rowIndex < 0 || rowIndex >= size) {
			return;
		}

		boolean notifyListener = false;
		EnumEntry entry = enumEntryList.get(rowIndex);
		Long oldValue = entry.getValue();
		String oldName = entry.getName();
		String oldComment = entry.getComment();

		switch (columnIndex) {
			case NAME_COL:
				String newName = (String) aValue;
				if (!oldName.equals(newName) && isNameValid(newName)) {
					enuum.remove(oldName);
					enuum.add(newName, oldValue, oldComment);
					entry.setName(newName);
					notifyListener = true;
				}
				break;

			case VALUE_COL:
				try {
					if ("".equals(aValue)) {
						// Ignore attempts to erase the value
						// This is useful for an invalid paste, and also addresses failed
						// setText() calls in the unit tests
						return;
					}
					Long newValue = NumericUtilities.parseLong((String) aValue);
					if (!oldValue.equals(newValue)) {
						enuum.remove(oldName);
						try {
							enuum.add(oldName, newValue, oldComment);
							entry.setValue(newValue);
							notifyListener = true;
						}
						catch (IllegalArgumentException e) {
							enuum.add(oldName, oldValue, oldComment);
							editorPanel.setStatusMessage(e.getMessage());
						}
					}
				}
				catch (NumberFormatException e) {
					editorPanel.setStatusMessage("Invalid number entered");
				}
				break;

			case COMMENT_COL:
				String newComment = (String) aValue;
				if (!oldComment.equals(newComment) && newComment != null) {
					enuum.remove(oldName);
					enuum.add(oldName, oldValue, newComment);
					entry.setComment(newComment);
					notifyListener = true;
				}
				break;
		}
		if (notifyListener) {
			editorPanel.stateChanged(null);
			isChanged = true;
			editorPanel.restoreSelection(oldName, true);
		}
		else {
			editorPanel.restoreSelection(oldName, false);
		}
	}
Model for the enum editor table.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/editor/EnumTableModel.java