unit lamwutils;
{$mode delphi}
interface
uses
Classes, SysUtils, Laz_And_Controls, AndroidWidget;
type
{ TjEditTextController }
TjEditTextController = class(TObject)
private
fEditText : jEditText;
fGetStrEvt : TGetStrProc;
Procedure EditOnChanged(Sender: TObject; txt: string; count: integer);
Procedure EditOnEnter(Sender: TObject);
public
procedure JNIPromptSetup;
constructor Create( pEditText : jEditText; pGetStrEvt : TGetStrProc );
end;
implementation
{ TjEditTextController }
constructor TjEditTextController.Create( pEditText: jEditText;
pGetStrEvt: TGetStrProc);
begin
inherited Create;
fEditText := pEditText;
fGetStrEvt := pGetStrEvt;
fEditText.OnChanged := EditOnChanged;
fEditText.OnEnter := EditOnEnter;
end;
procedure TjEditTextController.EditOnChanged(Sender: TObject; txt: string;
count: integer);
var
lchar : Char;
llen : Integer;
begin
llen := length( txt );
if( llen = 0 )then exit;
lchar := txt[llen];
if( Ord(lchar) = 10 )then
fGetStrEvt( Copy(txt,1,llen-1));
end;
procedure TjEditTextController.EditOnEnter(Sender: TObject);
begin
fGetStrEvt( fEditText.Text );
end;
procedure TjEditTextController.JNIPromptSetup;
begin
fEditText.SetImeOptions(imeFlagNoFullScreen);
fEditText.SetImeOptions(imeActionDone);
end;
end.