Skip to content

Commit a3c86bc

Browse files
committed
Register event handlers before Delphi wrappers, so that manually wrapped events take precedence.
1 parent d73dcac commit a3c86bc

12 files changed

+53
-67
lines changed

Source/WrapActions.pas

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,10 +91,10 @@ function TActionsRegistration.Name: string;
9191
procedure TActionsRegistration.RegisterWrappers(
9292
APyDelphiWrapper: TPyDelphiWrapper);
9393
begin
94-
inherited;
94+
APyDelphiWrapper.EventHandlers.RegisterHandler(TActionEventHandler);
95+
9596
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiContainedAction);
9697
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiContainedActionList);
97-
APyDelphiWrapper.EventHandlers.RegisterHandler(TActionEventHandler);
9898
end;
9999

100100
{ TPyDelphiContainedAction }

Source/fmx/WrapFmxControls.pas

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,15 +196,14 @@ function TControlsRegistration.Name: string;
196196
procedure TControlsRegistration.RegisterWrappers(
197197
APyDelphiWrapper: TPyDelphiWrapper);
198198
begin
199-
inherited;
199+
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyEventHandler);
200+
200201
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiControl);
201202
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiStyledControl);
202203
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTextControl);
203204
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiStyleBook);
204205
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiPopup);
205206
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomControlAction);
206-
207-
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyEventHandler);
208207
end;
209208

210209
{ TPyDelphiControl }

Source/fmx/WrapFmxForms.pas

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -192,17 +192,16 @@ function TFormsRegistration.Name: string;
192192
procedure TFormsRegistration.RegisterWrappers(
193193
APyDelphiWrapper: TPyDelphiWrapper);
194194
begin
195-
inherited;
195+
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseQueryEventHandler);
196+
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseEventHandler);
197+
196198
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiApplication);
197199
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCommonCustomForm);
198200
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomForm);
199201
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomPopupForm);
200202
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiForm);
201203
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiFrame);
202204
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiScreen);
203-
204-
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseQueryEventHandler);
205-
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseEventHandler);
206205
end;
207206

208207
{ TPyDelphiApplication }

Source/fmx/WrapFmxListView.pas

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,15 +118,14 @@ function TListViewRegistration.Name: string;
118118
procedure TListViewRegistration.RegisterWrappers(
119119
APyDelphiWrapper: TPyDelphiWrapper);
120120
begin
121-
inherited;
121+
APyDelphiWrapper.EventHandlers.RegisterHandler(TItemEventHandler);
122+
122123
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiAdapterListView);
123124
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiListViewBase);
124125
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiPresentedListView);
125126
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiAppearanceListView);
126127
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomListView);
127128
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiListView);
128-
129-
APyDelphiWrapper.EventHandlers.RegisterHandler(TItemEventHandler);
130129
end;
131130

132131
{ TPyDelphiAdapterListView }

Source/fmx/WrapFmxMedia.pas

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,8 @@ procedure TFMXMediaRegistration.DefineVars(APyDelphiWrapper: TPyDelphiWrapper);
192192
procedure TFMXMediaRegistration.RegisterWrappers(APyDelphiWrapper
193193
: TPyDelphiWrapper);
194194
begin
195-
inherited;
195+
APyDelphiWrapper.EventHandlers.RegisterHandler(TSampleBufferReadyEventHandler);
196+
196197
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCameraComponent);
197198
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomMediaCodec);
198199
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiMediaPlayerControl);
@@ -205,8 +206,6 @@ procedure TFMXMediaRegistration.RegisterWrappers(APyDelphiWrapper
205206
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiMediaPlayerValue);
206207
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiMediaPlayerCurrentTime);
207208
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiMediaPlayerVolume);
208-
209-
APyDelphiWrapper.EventHandlers.RegisterHandler(TSampleBufferReadyEventHandler);
210209
end;
211210

212211
{ TSampleBufferReadyEventHandler }

Source/fmx/WrapFmxTypes.pas

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -309,28 +309,27 @@ function TTypesRegistration.Name: string;
309309
procedure TTypesRegistration.RegisterWrappers(
310310
APyDelphiWrapper: TPyDelphiWrapper);
311311
begin
312-
inherited;
312+
// Event handlers
313+
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseEventHandler);
314+
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseMoveEventHandler);
315+
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseWheelEventHandler);
316+
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyEventHandler);
317+
APyDelphiWrapper.EventHandlers.RegisterHandler(TProcessTickEventHandler);
318+
APyDelphiWrapper.EventHandlers.RegisterHandler(TVirtualKeyboardEventHandler);
319+
APyDelphiWrapper.EventHandlers.RegisterHandler(TTapEventHandler);
320+
APyDelphiWrapper.EventHandlers.RegisterHandler(TTouchEventHandler);
321+
// Helper types
313322
APyDelphiWrapper.RegisterHelperType(TPyDelphiPointF);
314323
APyDelphiWrapper.RegisterHelperType(TPyDelphiSizeF);
315324
APyDelphiWrapper.RegisterHelperType(TPyDelphiRectF);
316325
APyDelphiWrapper.RegisterHelperType(TPyDelphiTouch);
317-
326+
// Classes
318327
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiFmxObject);
319328
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiPosition);
320329
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomPopupMenu);
321330
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiBounds);
322331
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiControlSize);
323332
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTimer);
324-
325-
//Event handlers
326-
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseEventHandler);
327-
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseMoveEventHandler);
328-
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseWheelEventHandler);
329-
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyEventHandler);
330-
APyDelphiWrapper.EventHandlers.RegisterHandler(TProcessTickEventHandler);
331-
APyDelphiWrapper.EventHandlers.RegisterHandler(TVirtualKeyboardEventHandler);
332-
APyDelphiWrapper.EventHandlers.RegisterHandler(TTapEventHandler);
333-
APyDelphiWrapper.EventHandlers.RegisterHandler(TTouchEventHandler);
334333
end;
335334

336335
{ TPyDelphiPointF }

Source/vcl/WrapVclComCtrls.pas

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -874,24 +874,6 @@ function TComCtrlsRegistration.Name: string;
874874

875875
procedure TComCtrlsRegistration.RegisterWrappers(APyDelphiWrapper: TPyDelphiWrapper);
876876
begin
877-
inherited;
878-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiDateTimePicker);
879-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiPageControl);
880-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTabSheet);
881-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTrackBar);
882-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiToolButton);
883-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiToolbar);
884-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomCustomTabControl);
885-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomTabControl);
886-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomStatusBar);
887-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiStatusBar);
888-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTreeNode);
889-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomTreeView);
890-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTreeView);
891-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiListItem);
892-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomListView);
893-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiListView);
894-
895877
APyDelphiWrapper.EventHandlers.RegisterHandler(TTabChangingEventHandler);
896878
APyDelphiWrapper.EventHandlers.RegisterHandler(TTVChangingEventHandler);
897879
APyDelphiWrapper.EventHandlers.RegisterHandler(TTVChangedEventHandler);
@@ -911,7 +893,6 @@ procedure TComCtrlsRegistration.RegisterWrappers(APyDelphiWrapper: TPyDelphiWrap
911893
APyDelphiWrapper.EventHandlers.RegisterHandler(TTVCheckStateChangedEventHandler);
912894
APyDelphiWrapper.EventHandlers.RegisterHandler(TTVCheckStateChangingEventHandler);
913895
{$ENDIF}
914-
915896
APyDelphiWrapper.EventHandlers.RegisterHandler(TLVDeletedEventHandler);
916897
APyDelphiWrapper.EventHandlers.RegisterHandler(TLVEditingEventHandler);
917898
APyDelphiWrapper.EventHandlers.RegisterHandler(TLVEditedEventHandler);
@@ -937,6 +918,23 @@ procedure TComCtrlsRegistration.RegisterWrappers(APyDelphiWrapper: TPyDelphiWrap
937918
APyDelphiWrapper.EventHandlers.RegisterHandler(TLVSubItemImageEventHandler);
938919
APyDelphiWrapper.EventHandlers.RegisterHandler(TLVInfoTipEventHandler);
939920
APyDelphiWrapper.EventHandlers.RegisterHandler(TLVCreateItemClassEventHandler);
921+
922+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiDateTimePicker);
923+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiPageControl);
924+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTabSheet);
925+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTrackBar);
926+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiToolButton);
927+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiToolbar);
928+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomCustomTabControl);
929+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomTabControl);
930+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomStatusBar);
931+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiStatusBar);
932+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTreeNode);
933+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomTreeView);
934+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiTreeView);
935+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiListItem);
936+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomListView);
937+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiListView);
940938
end;
941939

942940

Source/vcl/WrapVclControls.pas

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -267,22 +267,19 @@ function TControlsRegistration.Name: string;
267267

268268
procedure TControlsRegistration.RegisterWrappers(APyDelphiWrapper: TPyDelphiWrapper);
269269
begin
270-
inherited;
270+
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyPressEventHandler);
271+
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyEventHandler);
272+
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseEventHandler);
273+
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseMoveEventHandler);
274+
APyDelphiWrapper.EventHandlers.RegisterHandler(TContextPopupEventHandler);
275+
271276
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiControl);
272277
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiWinControl);
273278
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomControl);
274279
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomListControl);
275280
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomMultiListControl);
276281
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiDragImageList);
277282
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiImageList);
278-
279-
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyPressEventHandler);
280-
APyDelphiWrapper.EventHandlers.RegisterHandler(TKeyEventHandler);
281-
282-
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseEventHandler);
283-
APyDelphiWrapper.EventHandlers.RegisterHandler(TMouseMoveEventHandler);
284-
285-
APyDelphiWrapper.EventHandlers.RegisterHandler(TContextPopupEventHandler);
286283
end;
287284

288285
{ TPyDelphiControl }

Source/vcl/WrapVclForms.pas

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -423,15 +423,14 @@ function TFormsRegistration.Name: string;
423423

424424
procedure TFormsRegistration.RegisterWrappers(APyDelphiWrapper: TPyDelphiWrapper);
425425
begin
426-
inherited;
426+
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseQueryEventHandler);
427+
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseEventHandler);
428+
427429
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomForm);
428430
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiForm);
429431
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiApplication);
430432
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiScreen);
431433
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiMonitor);
432-
433-
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseQueryEventHandler);
434-
APyDelphiWrapper.EventHandlers.RegisterHandler(TCloseEventHandler);
435434
end;
436435

437436
{ TPyDelphiCustomForm }

Source/vcl/WrapVclGrids.pas

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -184,14 +184,13 @@ function TGridsRegistration.Name: string;
184184

185185
procedure TGridsRegistration.RegisterWrappers(APyDelphiWrapper: TPyDelphiWrapper);
186186
begin
187-
inherited;
187+
APyDelphiWrapper.EventHandlers.RegisterHandler(TDrawCellEventHandler);
188+
APyDelphiWrapper.EventHandlers.RegisterHandler(TSelectCellEventHandler);
189+
188190
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomGrid);
189191
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomDrawGrid);
190192
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiDrawGrid);
191193
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiStringGrid);
192-
193-
APyDelphiWrapper.EventHandlers.RegisterHandler(TDrawCellEventHandler);
194-
APyDelphiWrapper.EventHandlers.RegisterHandler(TSelectCellEventHandler);
195194
end;
196195

197196
{ Helper functions }

Source/vcl/WrapVclMedia.pas

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,10 @@ procedure TMediaRegistration.DefineVars(APyDelphiWrapper: TPyDelphiWrapper);
7676
procedure TMediaRegistration.RegisterWrappers(
7777
APyDelphiWrapper: TPyDelphiWrapper);
7878
begin
79-
inherited;
80-
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiMediaPlayer);
81-
8279
APyDelphiWrapper.EventHandlers.RegisterHandler(TEMPNotifyEventHandler);
8380
APyDelphiWrapper.EventHandlers.RegisterHandler(TEMPPostNotifyEventHandler);
81+
82+
APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiMediaPlayer);
8483
end;
8584

8685
{ TPyDelphiMediaPlayer }

Tests/WrapDelphiEventHandlerTest.pas

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,6 @@ function TTestRegistration.Name: string;
8989

9090
procedure TTestRegistration.RegisterWrappers(APyDelphiWrapper: TPyDelphiWrapper);
9191
begin
92-
inherited;
9392
APyDelphiWrapper.EventHandlers.RegisterHandler(TTestGetValueEventHandler);
9493
APyDelphiWrapper.EventHandlers.RegisterHandler(TTestGetObjectEventHandler);
9594
end;

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy