riando um botão personalizado em Java com JButton

Estou tentando criar um botão que tenha uma forma personalizada (hexágono), mas, caso contrário, age como um JButton normal (ou seja, funciona com um ActionListener

Criei uma classe que estende o AbstractButton, mas não parece estar enviando eventos para o ActionListener quando clico nele. Se eu mudar a classe para estender o JButton, ele funcionará perfeitamente, mas estraga a maneira como o botão é exibido. Estou assumindo que existe um método que eu preciso substituir para acionar eventos, mas não consigo descobrir o que

questionAnswers(4)

yourAnswerToTheQuestion