@Override
			public void keyPressed(KeyEvent e) {
				if (e.getKeyCode() == KeyEvent.VK_DOWN) {
					Swing.runLater(() -> popupMenu = showPopup());
					e.consume();
				}
			}
A button that has a drop-down list of choosable {@link ButtonState}s. When a state is selected,
it changes the behavior of the action associated with the button. This code is based on code 
for the {@link MultipleActionDockingToolbarButton}.

@param <T> The type of the user data associated with the {@link ButtonState}s
Ghidra/Framework/Docking/src/main/java/docking/menu/MultiStateButton.java