SWT StyledText を使用して、複数のソース (私の場合はスペル チェッカー、繰り返し単語、リンク、その他のマークアップなどのスタイル ヒント) から任意のテキスト スタイルをマージできるテキスト エディターを作成する必要があります。私はそれを行う標準的な方法を調べました:
変更リスナーをインストールして、変更ごとにテキスト全体のスタイルを作成できます。それはかなり遅いですが正確です。
を使用できます
LineStyleListener
。これは、自分でテキストを再描画する必要があることを意味します (たとえば、単語の一部が現在の編集範囲外になるため、単語が繰り返される場合)、エディターはスタイルをキャッシュしないため、この API はより頻繁に呼び出されます。それから人は期待するでしょう。IDE と同じように、バックグラウンド調整ツールを使用できます。これは、スタイリングが編集に遅れをとることを意味し、ユーザーの観点からは好ましくありません。
さらに、階層的なスタイルが必要なので、StyleRange
API を再実装する必要があります。
より良い解決策を見た人はいますか?誰かがキーワードを強調する以上のことをするいくつかの例を教えてもらえますか?