Ti sta già rispondendo l'autorevolissimo andbin, ma credo che qui ci sia un problema di fondo: semplificare. Se è troppo complicato, probabilmente stai cercando di reinventare la ruota (ti assicuro che non serve). A meno che non mi sfugga qualcosa di macroscopico, che cosa ti impedisce di appiccicare ad ogni button il suo proprio listener? Che poi sia in forma di classe interna anonima oppure di implementazione con tutti i crismi (non che le classi interne anonime non abbiano tutti i crismi) quella è una scelta tua... però un unico incasinatissimo listener per gestire le azioni provenienti da più bottoni mi pare una strada davvero poco produttiva e difficile da percorrere.