DeleteEditSelection

フォーム、インタラクション、編集履歴

説明

TPDFlibFormSessionの内部ヘルパーで、DispatchInputEventのBackspaceキーとDeleteキーを実装します

選択が折りたたまれている場合、まず隣接する拡張書素クラスタを1つ選択します。Backspaceではキャレットの前のクラスタ、Deleteではキャレットの後ろのクラスタです

一致するテキスト境界では、ヘルパーは何も削除せずに成功を報告します

削除自体は空の置換によるfekReplaceSelectionとしてApplySelectionEditを通って実行されるため、/KアクションとOnTextEditは依然として拒否できます

成功時には最新の履歴エントリの変更前位置が削除前に記録された選択へ書き換えられ、UndoEditがそれを復元します。失敗時には元の選択が復元されます

宣言

function DeleteEditSelection(Backwards: Boolean): Integer;

パラメータ

BackwardsTrueはBackspaceと同様にテキスト先頭へ向かって削除し、FalseはDeleteと同様に末尾へ向かって削除します

戻り値

クラスタが選択されて削除されたか、キャレットが既に対応する境界にあった場合は1を返します。要求の再入、編集がアクティブでないこと、置換トランザクションの拒否のいずれかの場合は0を返します

関連項目

ApplySelectionEdit, DispatchInputEvent, UndoEdit, EnsureSelectionBoundaries, TPDFlibFormInputKey, TPDFlibFormSession