アプリケーションに が割り当てられたQPlainTextEdit
ウィジェットがあります。QSyntaxHighlighter
そのテキスト編集領域内のコンテンツが変更されるたびに、通知を受け取る必要があります (グローバル アプリケーションの保存/変更状態を更新するため)。ただし、textChanged()
ハイライターが機能するたびに信号も放出されるため、何らかの方法でフィルター処理する必要があります。
私はすでに を見ましたmodificationChanged()
が、それもうまくいかないようです。強調表示の変更を無視し、最初のコンテンツの変更については正常に通知しますが、その後の変更については通知しません。ドキュメントには、内部状態をリセットできるはずだと書かれていますが、そのsetModified(false)
方法は存在しないようです。
変更をフィルタリングする方法についてのアイデアはありますか?
シンタックスハイライトの変更を無視すると言わQTextDocument
れているシングルがあるように見えるものcontentsChanged()
に切り替える必要がありますか?