mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-22 13:59:31 +02:00
LCL-GTK3: Implement Button.OnClick handler. Fix Tab behavior. Issue #37718, patch from Anton Kavalenka.
git-svn-id: trunk@63874 -
This commit is contained in:
parent
4c7fde32e9
commit
2f35763ff4
@ -671,6 +671,7 @@ type
|
||||
procedure SetMargin(AValue: Integer);
|
||||
procedure SetSpacing(AValue: Integer);
|
||||
protected
|
||||
procedure ButtonClicked(pData:pointer);cdecl;
|
||||
procedure SetImage(AImage:TBitmap);
|
||||
function getText: String; override;
|
||||
procedure setText(const AValue: String); override;
|
||||
@ -2072,7 +2073,9 @@ begin
|
||||
|
||||
if AKeyPress and (ACharCode = VK_TAB) then
|
||||
begin
|
||||
|
||||
if Sender^.is_focus then
|
||||
Self.LCLObject.SelectNext(Self.LCLObject,true,true);
|
||||
exit;
|
||||
end;
|
||||
|
||||
IsArrowKey := ((ACharCode = VK_UP) or (ACharCode = VK_DOWN) or (ACharCode = VK_LEFT) or (ACharCode = VK_RIGHT));
|
||||
@ -6515,6 +6518,12 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TGtk3Button.ButtonClicked(pData: pointer); cdecl;
|
||||
begin
|
||||
if TObject(pdata) is TButton then
|
||||
TButton(pdata).Click;
|
||||
end;
|
||||
|
||||
procedure TGtk3Button.SetImage(AImage: TBitmap);
|
||||
begin
|
||||
if Assigned(fImage) then
|
||||
@ -6546,6 +6555,9 @@ begin
|
||||
|
||||
btn^.set_use_underline(true);
|
||||
|
||||
g_signal_connect_data(btn,'clicked',
|
||||
TGCallback(@TGtk3Button.ButtonClicked), LCLObject, nil, 0);
|
||||
|
||||
FMargin := -1;
|
||||
FLayout := GTK_POS_LEFT;
|
||||
FSpacing := 2; // default gtk3 spacing is 2
|
||||
|
Loading…
Reference in New Issue
Block a user