lazarus/lcl/interfaces/android/android_all.pas
sekelsenmat 53de325aa6 Small improvement to lcl-android
git-svn-id: trunk@31732 -
2011-07-18 12:48:00 +00:00

71 lines
1.9 KiB
ObjectPascal

unit ;
interface
type
TCompoundButton = class(TButton)
public
function isChecked(): Boolean;
function performClick(): Boolean;
procedure setChecked(checked: Boolean);
procedure toggle();
end;
TCheckBox = class(TCompoundButton)
public
constructor Create();
end;
implementation
const
// TCompoundButton
amkUI_TCompoundButton_isChecked = $00101000;
amkUI_TCompoundButton_performClick = $00101001;
amkUI_TCompoundButton_setChecked = $00101002;
amkUI_TCompoundButton_toggle = $00101003;
// TCheckBox
amkUI_TCheckBox_Create = $00102000;
function TCompoundButton.isChecked(): Boolean;
begin
vAndroidPipesComm.SendByte(ShortInt(amkUICommand));
vAndroidPipesComm.SendInt(amkUI_TCompoundButton_isChecked);
vAndroidPipesComm.SendInt(Index); // Self, Java Pointer
Result := Boolean(vAndroidPipesComm.WaitForIntReturn());
end;
function TCompoundButton.performClick(): Boolean;
begin
vAndroidPipesComm.SendByte(ShortInt(amkUICommand));
vAndroidPipesComm.SendInt(amkUI_TCompoundButton_performClick);
vAndroidPipesComm.SendInt(Index); // Self, Java Pointer
Result := Boolean(vAndroidPipesComm.WaitForIntReturn());
end;
procedure TCompoundButton.setChecked(checked: Boolean);
begin
vAndroidPipesComm.SendByte(ShortInt(amkUICommand));
vAndroidPipesComm.SendInt(amkUI_TCompoundButton_setChecked);
vAndroidPipesComm.SendInt(Index); // Self, Java Pointer
vAndroidPipesComm.SendInt(Integer(checked));
vAndroidPipesComm.WaitForReturn();
end;
procedure TCompoundButton.toggle();
begin
vAndroidPipesComm.SendByte(ShortInt(amkUICommand));
vAndroidPipesComm.SendInt(amkUI_TCompoundButton_toggle);
vAndroidPipesComm.SendInt(Index); // Self, Java Pointer
vAndroidPipesComm.WaitForReturn();
end;
constructor TCheckBox.Create();
begin
vAndroidPipesComm.SendByte(ShortInt(amkUICommand));
vAndroidPipesComm.SendInt(amkUI_TCheckBox_Create);
Index := vAndroidPipesComm.WaitForIntReturn();
end;
end.