半透明の DnD フィードバック
スタンプのドラッグを開始した時,オリジナルの状態では,ドラッグ中のスタンプは長方形の線で表示されるのみである。これが,ドラッグ中もスタンプが半透明で表示されると,何をドラッグしているのかがわかりやすい。そのために使えそうな TransferHandler#getVisualRepresentation(Transferable t) というメソッドがあるが,実際やってみると,このメソッドをオーバーライドしても呼ばれることはなく無視されてしまう。このことはオラクルのサイトにバグとして報告されており,同サイトに work around (PatchedTransferHandler.java)が出ていた。これを組み込んで改造して,下のように半透明のフィードバックが出るようにした。ただし,Mac でしか動かないようだ。
| スタンプのドラッグ:改造前 |
| 改造後 |
|
| ||
| スタンプ箱からのドラッグ:改造前 |
| 改造後 |
|
| ||
| シェーマのドラッグ:改造前 |
| 改造後 |
|
|
- PatchedTransferHandler.java
- TransferHandler に exportAsDrag と getVisualRepresentation をインプリメントする。
« IME on/off の切り替え | トップページ | 部位入力パネルをグラフィカルに »
「OpenDolphin」カテゴリの記事
- OpenDolphin: Java 25 / WildFly 38 への移行(2025.11.09)
- 運用17年目のまとめ(2025.02.03)
- IME on/off の切換 - その2(2024.12.02)
- OrcaController オルコン(2024.11.28)
- OpenDolphin: java 21 / wildfly 34 への移行(2024.11.08)








