あのー、試しにアプレットを作ってみて疑問に思った初学者ですけど...

コンポーネントの階層の下の方にボタンがあって、そのボタンを
押すとコンポーネント階層の一番上から下まで書き直す、ってな
ことをやってみました。

ボタンのリスナーにアプレット自体のリファレンスを渡して実現は
できたんですけど、ボタンがaddされそのボタンのイベントリスナーを
作るに至るまで、各コンポーネントの階層ごとにトップレベルの参照を順繰りに
渡してる、ってのが、なんかわれながら間違った方針でやっているように
思えてなりません。もっとうまい方法はないでしょうか。