« IME on/off の切り替え | トップページ | 部位入力パネルをグラフィカルに »

2012年1月 1日 (日)

半透明の DnD フィードバック

スタンプのドラッグを開始した時,オリジナルの状態では,ドラッグ中のスタンプは長方形の線で表示されるのみである。これが,ドラッグ中もスタンプが半透明で表示されると,何をドラッグしているのかがわかりやすい。そのために使えそうな TransferHandler#getVisualRepresentation(Transferable t) というメソッドがあるが,実際やってみると,このメソッドをオーバーライドしても呼ばれることはなく無視されてしまう。このことはオラクルのサイトにバグとして報告されており,同サイトに work around (PatchedTransferHandler.java)が出ていた。これを組み込んで改造して,下のように半透明のフィードバックが出るようにした。ただし,Mac でしか動かないようだ。

 

スタンプのドラッグ:改造前

 

改造後

Dnd1before_2

 

Dnd1after_2

スタンプ箱からのドラッグ:改造前

 

改造後

Dnd2before

 

Dnd2after

シェーマのドラッグ:改造前

 

改造後

Dnd3before

 

Dnd3after

« IME on/off の切り替え | トップページ | 部位入力パネルをグラフィカルに »

OpenDolphin」カテゴリの記事