In the diagram editor I am developing users can delete most of the nodes in the diagram, except a central node that is treated specially and can't be deleted. To block the user from deleting this node I have two options:
- Disable the option to delete a node when the special node is selected
- Show an error message to the user when he executes a command to delete the special node
While the first option is simpler to implement, I am worried that the users will be confused and will ask themselves why the command is disabled. Having it enabled with an error if executed removes this cognitive load from the user (my opinion).
Which of the two is the best customer experience?