Hab jetzt gerade nur 10.1U2 zur Hand, da gibt es BulkThreshold = 1000 auch ... unfassbar ...
Kann jetzt nicht checken ob es geht oder nicht.
Edit
Es wird dann BulkPast aufgerufen.
Das wird wohl mit Messages verarbeitet, könnte es sein das dieses Limit von den
OS kommt, und nicht von FMX ?
Delphi-Quellcode:
procedure BulkPaste(APastingText : string; var ACaret : TCaretPosition);
var
LCaretPosition : Integer;
LLengthResidue : Integer;
LText : string;
Insertion: string;
begin
LText := Model.Lines.Text;
case Model.CharCase of
TEditCharCase.ecNormal:
Insertion := APastingText;
TEditCharCase.ecUpperCase:
Insertion := APastingText.ToUpperInvariant;
TEditCharCase.ecLowerCase:
Insertion := APastingText.ToLowerInvariant;
end;
if Model.MaxLength > 0 then
Insertion := Insertion.Substring(0, Model.MaxLength - LText.Length);
Model.SendMessage<TFragmentInserted>(PM_MEMO_UNDO_MANAGER_INSERT_TEXT,
TFragmentInserted.Create(Model.PosToTextPos(ACaret), IfThen(Insertion = Model.Lines.LineBreak,
Model.Lines.LineBreak.Length, Insertion.Length), False, False));
LCaretPosition := Model.PosToTextPos(ACaret);
LLengthResidue := LText.Length - LCaretPosition;
Model.Lines.Text := LText.Substring(0, LCaretPosition) + Insertion + LText.Substring(LCaretPosition,
LLengthResidue);
ACaret := Model.TextPosToPos(lText.Length + Insertion.Length - LLengthResidue);
end;
Rollo