diff --git a/Packages/Delphi/Delphi 10.4+/PythonFmx.dpk b/Packages/Delphi/Delphi 10.4+/PythonFmx.dpk index e9cf1053..5bce1043 100644 --- a/Packages/Delphi/Delphi 10.4+/PythonFmx.dpk +++ b/Packages/Delphi/Delphi 10.4+/PythonFmx.dpk @@ -48,6 +48,8 @@ contains WrapFmxShapes in '..\..\..\Source\fmx\WrapFmxShapes.pas', WrapFmxStdCtrls in '..\..\..\Source\fmx\WrapFmxStdCtrls.pas', WrapFmxTypes in '..\..\..\Source\fmx\WrapFmxTypes.pas', - WrapDelphiFmx in '..\..\..\Source\fmx\WrapDelphiFmx.pas'; + WrapDelphiFmx in '..\..\..\Source\fmx\WrapDelphiFmx.pas', + WrapFmxEdit in '..\..\..\Source\fmx\WrapFmxEdit.pas', + WrapFmxListBox in '..\..\..\Source\fmx\WrapFmxListBox.pas'; end. diff --git a/Source/fmx/WrapDelphiFmx.pas b/Source/fmx/WrapDelphiFmx.pas index 5bd1b3b5..fd2efc20 100644 --- a/Source/fmx/WrapDelphiFmx.pas +++ b/Source/fmx/WrapDelphiFmx.pas @@ -11,6 +11,8 @@ implementation WrapFireDac, WrapFmxTypes, WrapFmxStdCtrls, + WrapFmxEdit, + WrapFmxListBox, WrapFmxActnList, WrapFmxComCtrls, WrapFmxDialogs, diff --git a/Source/fmx/WrapFmxEdit.pas b/Source/fmx/WrapFmxEdit.pas new file mode 100644 index 00000000..0106e229 --- /dev/null +++ b/Source/fmx/WrapFmxEdit.pas @@ -0,0 +1,105 @@ +{$I ..\Definition.Inc} + +unit WrapFmxEdit; + +interface + +uses + FMX.Edit, PythonEngine, WrapFmxTypes, WrapFmxControls; + + +type + TPyDelphiCustomEdit = class(TPyDelphiPresentedControl) + private + function GetDelphiObject: TCustomEdit; + procedure SetDelphiObject(const Value: TCustomEdit); + public + class function DelphiObjectClass: TClass; override; + // Properties + property DelphiObject: TCustomEdit read GetDelphiObject + write SetDelphiObject; + end; + + TPyDelphiEdit = class(TPyDelphiCustomEdit) + private + function GetDelphiObject: TEdit; + procedure SetDelphiObject(const Value: TEdit); + public + class function DelphiObjectClass: TClass; override; + // Properties + property DelphiObject: TEdit read GetDelphiObject + write SetDelphiObject; + end; + +implementation + +uses + WrapDelphi; + +{ Register the wrappers, the globals and the constants } +type + TEditRegistration = class(TRegisteredUnit) + public + function Name: string; override; + procedure RegisterWrappers(APyDelphiWrapper: TPyDelphiWrapper); override; + procedure DefineVars(APyDelphiWrapper: TPyDelphiWrapper); override; + end; + +{ TEditRegistration } + +procedure TEditRegistration.DefineVars(APyDelphiWrapper: TPyDelphiWrapper); +begin + inherited; +end; + +function TEditRegistration.Name: string; +begin + Result := 'Edit'; +end; + +procedure TEditRegistration.RegisterWrappers( + APyDelphiWrapper: TPyDelphiWrapper); +begin + inherited; + APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomEdit); + APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiEdit); +end; + +{ TPyDelphiCustomEdit } + +class function TPyDelphiCustomEdit.DelphiObjectClass: TClass; +begin + Result := TCustomEdit; +end; + +function TPyDelphiCustomEdit.GetDelphiObject: TCustomEdit; +begin + Result := TCustomEdit(inherited DelphiObject); +end; + +procedure TPyDelphiCustomEdit.SetDelphiObject(const Value: TCustomEdit); +begin + inherited DelphiObject := Value; +end; + +{ TPyDelphiEdit } + +class function TPyDelphiEdit.DelphiObjectClass: TClass; +begin + Result := TEdit; +end; + +function TPyDelphiEdit.GetDelphiObject: TEdit; +begin + Result := TEdit(inherited DelphiObject); +end; + +procedure TPyDelphiEdit.SetDelphiObject(const Value: TEdit); +begin + inherited DelphiObject := Value; +end; + +initialization + RegisteredUnits.Add(TEditRegistration.Create); + +end. diff --git a/Source/fmx/WrapFmxListBox.pas b/Source/fmx/WrapFmxListBox.pas new file mode 100644 index 00000000..1cb29538 --- /dev/null +++ b/Source/fmx/WrapFmxListBox.pas @@ -0,0 +1,133 @@ +{$I ..\Definition.Inc} + +unit WrapFmxListBox; + +interface + +uses + FMX.ListBox, WrapFmxTypes, WrapFmxControls, WrapFmxLayouts, PythonEngine; + +type + TPyListBoxItem = class(TPyDelphiTextControl) + private + function GetDelphiObject: TListBoxItem; + procedure SetDelphiObject(const Value: TListBoxItem); + public + class function DelphiObjectClass: TClass; override; + property DelphiObject: TListBoxItem read GetDelphiObject + write SetDelphiObject; + end; + + TPyDelphiCustomListBox = class(TPyDelphiScrollBox) + private + function GetDelphiObject: TCustomListBox; + procedure SetDelphiObject(const Value: TCustomListBox); + public + class function DelphiObjectClass: TClass; override; + // Properties + property DelphiObject: TCustomListBox read GetDelphiObject + write SetDelphiObject; + end; + + TPyDelphiListBox = class(TPyDelphiCustomListBox) + private + function GetDelphiObject: TListBox; + procedure SetDelphiObject(const Value: TListBox); + public + class function DelphiObjectClass: TClass; override; + // Properties + property DelphiObject: TListBox read GetDelphiObject + write SetDelphiObject; + end; + +implementation + +uses + WrapDelphi; + +{ Register the wrappers, the globals and the constants } +type + TListBoxRegistration = class(TRegisteredUnit) + public + function Name: string; override; + procedure RegisterWrappers(APyDelphiWrapper: TPyDelphiWrapper); override; + procedure DefineVars(APyDelphiWrapper: TPyDelphiWrapper); override; + end; + +{ TListBoxRegistration } + +procedure TListBoxRegistration.DefineVars(APyDelphiWrapper: TPyDelphiWrapper); +begin + inherited; +end; + +function TListBoxRegistration.Name: string; +begin + Result := 'ListBox'; +end; + +procedure TListBoxRegistration.RegisterWrappers( + APyDelphiWrapper: TPyDelphiWrapper); +begin + inherited; + APyDelphiWrapper.RegisterDelphiWrapper(TPyListBoxItem); + APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiCustomListBox); + APyDelphiWrapper.RegisterDelphiWrapper(TPyDelphiListBox); +end; + +{ TPyListBoxItem } + +class function TPyListBoxItem.DelphiObjectClass: TClass; +begin + Result := TListBox; +end; + +function TPyListBoxItem.GetDelphiObject: TListBoxItem; +begin + Result := TListBoxItem(inherited DelphiObject); +end; + +procedure TPyListBoxItem.SetDelphiObject(const Value: TListBoxItem); +begin + inherited DelphiObject := Value; +end; + +{ TPyDelphiCustomListBox } + +class function TPyDelphiCustomListBox.DelphiObjectClass: TClass; +begin + Result := TCustomListBox; +end; + +function TPyDelphiCustomListBox.GetDelphiObject: TCustomListBox; +begin + Result := TCustomListBox(inherited DelphiObject); +end; + +procedure TPyDelphiCustomListBox.SetDelphiObject(const Value: TCustomListBox); +begin + inherited DelphiObject := Value; +end; + +{ TPyDelphiListBox } + +class function TPyDelphiListBox.DelphiObjectClass: TClass; +begin + Result := TListBox; +end; + +function TPyDelphiListBox.GetDelphiObject: TListBox; +begin + Result := TListBox(inherited DelphiObject); +end; + + +procedure TPyDelphiListBox.SetDelphiObject(const Value: TListBox); +begin + inherited DelphiObject := Value; +end; + +initialization + RegisteredUnits.Add(TListBoxRegistration.Create); + +end.