Skip to content

Commit a055faf

Browse files
authored
Merge pull request #266 from fredvs/master
Remove LazMouseAndKeyInput dependency (GPL licence) and use LCLIntf (…
2 parents a364b57 + e7dc4f8 commit a055faf

4 files changed

Lines changed: 30 additions & 18 deletions

File tree

.github/workflows/make.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
- ubuntu-latest
2727
steps:
2828
- name: Checkout
29-
uses: actions/checkout@v4
29+
uses: actions/checkout@v6
3030
with:
3131
submodules: true
3232

bckeyboard.pas

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ interface
1313
uses
1414
Classes, SysUtils, {$IFDEF FPC}LCLType, LResources, LMessages,{$ENDIF}Forms, Controls, Graphics, Dialogs,
1515
{$IFNDEF FPC}Types, Windows, Messages, BGRAGraphics, GraphType, FPImage, BCBaseCtrls,{$ENDIF}
16-
BCThemeManager, BCButton, BCPanel, MouseAndKeyInput;
16+
BCThemeManager, BCButton, BCPanel, LCLIntf;
1717

1818
type
1919

@@ -85,17 +85,27 @@ procedure TBCKeyboard.SetFThemeManager(AValue: TBCThemeManager);
8585
end;
8686

8787
procedure TBCKeyboard.PressVirtKey(p: PtrInt);
88+
var
89+
Target: TWinControl;
8890
begin
89-
KeyInput.Down(p);
90-
KeyInput.Up(p);
91+
Target := Screen.ActiveControl;
92+
if Target = nil then Exit;
93+
94+
LCLIntf.SendMessage(Target.Handle, LM_KEYDOWN, p, 1);
95+
LCLIntf.SendMessage(Target.Handle, LM_KEYUP, p, 1);
9196
end;
9297

9398
procedure TBCKeyboard.PressShiftVirtKey(p: PtrInt);
99+
var
100+
Target: TWinControl;
94101
begin
95-
KeyInput.Down(VK_SHIFT);
96-
KeyInput.Down(p);
97-
KeyInput.Up(p);
98-
KeyInput.Up(VK_SHIFT);
102+
Target := Screen.ActiveControl;
103+
if Target = nil then Exit;
104+
105+
LCLIntf.SendMessage(Target.Handle, LM_KEYDOWN, VK_SHIFT, 1);
106+
LCLIntf.SendMessage(Target.Handle, LM_KEYDOWN, p, 1);
107+
LCLIntf.SendMessage(Target.Handle, LM_KEYUP, p, 1);
108+
LCLIntf.SendMessage(Target.Handle, LM_KEYUP, VK_SHIFT, 1);
99109
end;
100110

101111
procedure TBCKeyboard.OnButtonClick(Sender: TObject; Button: TMouseButton;

bcnumerickeyboard.pas

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ interface
1212

1313
uses
1414
Classes, SysUtils, {$IFDEF FPC}LCLType, LResources, LMessages,{$ENDIF}
15-
Forms, Controls, Graphics, Dialogs, MouseAndKeyInput,
15+
Forms, Controls, Graphics, Dialogs, LCLIntf,
1616
{$IFNDEF FPC}Types, Windows, BGRAGraphics, GraphType, FPImage, BCBaseCtrls, {$ENDIF}
1717
BCPanel, BCButton, BCThemeManager;
1818

@@ -149,9 +149,14 @@ procedure TBCRealNumericKeyboard.OnButtonClick(Sender: TObject;
149149
end;
150150

151151
procedure TBCRealNumericKeyboard.PressVirtKey(p: PtrInt);
152+
var
153+
Target: TWinControl;
152154
begin
153-
KeyInput.Down(p);
154-
KeyInput.Up(p);
155+
Target := Screen.ActiveControl;
156+
if Target = nil then Exit;
157+
158+
LCLIntf.SendMessage(Target.Handle, LM_KEYDOWN, p, 1);
159+
LCLIntf.SendMessage(Target.Handle, LM_KEYUP, p, 1);
155160
end;
156161

157162
constructor TBCRealNumericKeyboard.Create(AOwner: TComponent);

bgracontrols.lpk

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -447,17 +447,14 @@
447447
</Files>
448448
<CompatibilityMode Value="True"/>
449449
<LazDoc Paths="fpdoc"/>
450-
<RequiredPkgs Count="3">
450+
<RequiredPkgs Count="2">
451451
<Item1>
452-
<PackageName Value="lazmouseandkeyinput"/>
453-
</Item1>
454-
<Item2>
455452
<PackageName Value="BGRABitmapPack"/>
456453
<MinVersion Major="11" Minor="6" Release="4" Valid="True"/>
457-
</Item2>
458-
<Item3>
454+
</Item1>
455+
<Item2>
459456
<PackageName Value="IDEIntf"/>
460-
</Item3>
457+
</Item2>
461458
</RequiredPkgs>
462459
<UsageOptions>
463460
<UnitPath Value="$(PkgOutDir)"/>

0 commit comments

Comments
 (0)