JavatterAdventCalendar自分の記事3つ目です。
今回はイベントシステムを使ってJavatterのボタンを増やします。
デモとしてやよい軒ボタンを追加します。
やよい軒

ツイートのセルが作られた時のイベントを取得してセルのオブジェクトを編集することで追加することが出来ます。
イベントリスナにEventInitializeTweetobjectを引数にすればセルが作られた時に呼び出される様になります。
受け取ったEventからgetControllerでコントローラを取得し、addMenuItemでMenuItemを追加すれば大丈夫です。

@EventHandler
public void createButton(final EventInitializeTweetobject event){
	MenuItem item=new MenuItem("やよい軒");
	event.getController().addMenuItem(item);
	item.setOnAction(new javafx.event.EventHandler<ActionEvent>() {
		@Override
		public void handle(ActionEvent arg0) {
			Status status=event.getController().getStatus();
			String user=status.getUser().getScreenName();
			StatusUpdateBuilder builder=new StatusUpdateBuilder("@"+user+" やよい軒ええぞやよい軒");
			builder.setReplyID(status);
			TweetDispenser.tweet(builder.create());
		}
	});
}

3行目のMenuItemはボタンに追加するアイテムです。
4行目でMenuItemを追加しています。
5行目ではsetOnActionでEventHandlerの匿名クラスを作成し、押された時の動作を定義しています。
StatusUpdateBuilderは、UpdateStatusを作成するためのクラスです。コンストラクタに呟きたい文字列を与え、setReplyIDでリプライを設定しています。
他にも画像を添付したりすることも可能です。
そしてcreateメソッドでUpdateStatusを作成し、TweetDispenserでツイートしています。

動作確認をしてみて動けば完成です。お疲れ様でした。