Skip to content

Commit c5eba76

Browse files
committed
Add TDateEdit and TTimeEdit
more properties forgot result params
1 parent 907bbae commit c5eba76

File tree

1 file changed

+151
-1
lines changed

1 file changed

+151
-1
lines changed

Source/script/imports/lcl/simba.import_lcl_misc.pas

Lines changed: 151 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ procedure ImportLCLMisc(Script: TSimbaScript);
1313
implementation
1414

1515
uses
16-
Controls, Spin, Menus, Graphics, ListFilterEdit, StdCtrls, Buttons, ButtonPanel,
16+
Controls, EditBtn, Spin, Menus, Graphics, ListFilterEdit, StdCtrls, Buttons, ButtonPanel,
1717
lptypes, ffi;
1818

1919
type
@@ -26,6 +26,9 @@ implementation
2626
PFloatSpinEdit = ^TFloatSpinEdit;
2727
PSpinEdit = ^TSpinEdit;
2828

29+
PDateEdit = ^TDateEdit;
30+
PTimeEdit = ^TTimeEdit;
31+
2932
PMenu = ^TMenu;
3033
PPopupMenu = ^TPopupMenu;
3134
PMainMenu = ^TMainMenu;
@@ -157,6 +160,134 @@ procedure _LapeSpinEdit_Create(const Params: PParamArray; const Result: Pointer)
157160
PSpinEdit(Result)^ := TSpinEdit.Create(PComponent(Params^[0])^);
158161
end;
159162

163+
164+
//DATE
165+
procedure _LapeDateEdit_Date_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
166+
begin
167+
PDateTime(Result)^ := PDateEdit(Params^[0])^.Date;
168+
end;
169+
170+
procedure _LapeDateEdit_Date_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
171+
begin
172+
PDateEdit(Params^[0])^.Date := PDouble(Params^[1])^;
173+
end;
174+
175+
procedure _LapeDateEdit_MinDate_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
176+
begin
177+
PDateTime(Result)^ := PDateEdit(Params^[0])^.MinDate;
178+
end;
179+
180+
procedure _LapeDateEdit_MinDate_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
181+
begin
182+
PDateEdit(Params^[0])^.MinDate := PDouble(Params^[1])^;
183+
end;
184+
185+
procedure _LapeDateEdit_MaxDate_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
186+
begin
187+
PDateTime(Result)^ := PDateEdit(Params^[0])^.MaxDate;
188+
end;
189+
190+
procedure _LapeDateEdit_MaxDate_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
191+
begin
192+
PDateEdit(Params^[0])^.MaxDate := PDateTime(Params^[1])^;
193+
end;
194+
195+
procedure _LapeDateEdit_DateFormat_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
196+
begin
197+
PString(Result)^ := PDateEdit(Params^[0])^.DateFormat;
198+
end;
199+
200+
procedure _LapeDateEdit_DateFormat_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
201+
begin
202+
PDateEdit(Params^[0])^.DateFormat := PString(Params^[1])^;
203+
end;
204+
205+
procedure _LapeDateEdit_DefaultToday_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
206+
begin
207+
PBoolean(Result)^ := PDateEdit(Params^[0])^.DefaultToday;
208+
end;
209+
210+
procedure _LapeDateEdit_DefaultToday_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
211+
begin
212+
PDateEdit(Params^[0])^.DefaultToday := PBoolean(Params^[1])^;
213+
end;
214+
215+
procedure _LapeDateEdit_ReadOnly_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
216+
begin
217+
PBoolean(Result)^ := PDateEdit(Params^[0])^.ReadOnly;
218+
end;
219+
220+
procedure _LapeDateEdit_ReadOnly_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
221+
begin
222+
PDateEdit(Params^[0])^.ReadOnly := PBoolean(Params^[1])^;
223+
end;
224+
225+
procedure _LapeDateEdit_DirectInput_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
226+
begin
227+
PBoolean(Result)^ := PDateEdit(Params^[0])^.DirectInput;
228+
end;
229+
230+
procedure _LapeDateEdit_DirectInput_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
231+
begin
232+
PDateEdit(Params^[0])^.DirectInput := PBoolean(Params^[1])^;
233+
end;
234+
235+
236+
237+
procedure _LapeDateEdit_Create(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
238+
begin
239+
PDateEdit(Result)^ := TDateEdit.Create(PComponent(Params^[0])^);
240+
end;
241+
242+
//TIME
243+
procedure _LapeTimeEdit_Time_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
244+
begin
245+
PDateTime(Result)^ := PTimeEdit(Params^[0])^.Time;
246+
end;
247+
248+
procedure _LapeTimeEdit_Time_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
249+
begin
250+
PTimeEdit(Params^[0])^.Time := PDateTime(Params^[1])^;
251+
end;
252+
253+
procedure _LapeTimeEdit_DefaultNow_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
254+
begin
255+
PBoolean(Result)^ := PTimeEdit(Params^[0])^.DefaultNow;
256+
end;
257+
258+
procedure _LapeTimeEdit_DefaultNow_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
259+
begin
260+
PTimeEdit(Params^[0])^.DefaultNow := PBoolean(Params^[1])^;
261+
end;
262+
263+
procedure _LapeTimeEdit_ReadOnly_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
264+
begin
265+
PBoolean(Result)^ := PTimeEdit(Params^[0])^.ReadOnly;
266+
end;
267+
268+
procedure _LapeTimeEdit_ReadOnly_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
269+
begin
270+
PTimeEdit(Params^[0])^.ReadOnly := PBoolean(Params^[1])^;
271+
end;
272+
273+
procedure _LapeTimeEdit_DirectInput_Read(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
274+
begin
275+
PBoolean(Result)^ := PTimeEdit(Params^[0])^.DirectInput;
276+
end;
277+
278+
procedure _LapeTimeEdit_DirectInput_Write(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
279+
begin
280+
PTimeEdit(Params^[0])^.DirectInput := PBoolean(Params^[1])^;
281+
end;
282+
283+
procedure _LapeTimeEdit_Create(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
284+
begin
285+
PTimeEdit(Result)^ := TTimeEdit.Create(PComponent(Params^[0])^);
286+
end;
287+
288+
289+
290+
160291
procedure _LapeMenuItem_Find(const Params: PParamArray; const Result: Pointer); LAPE_WRAPPER_CALLING_CONV
161292
begin
162293
PMenuItem(Result)^ := PMenuItem(Params^[0])^.Find(PString(Params^[1])^);
@@ -624,6 +755,25 @@ procedure ImportLCLMisc(Script: TSimbaScript);
624755
addClass('TLazSpinEdit', 'TLazCustomSpinEdit', TSpinEdit);
625756
addClassConstructor('TLazSpinEdit', '(TheOwner: TLazComponent)', @_LapeSpinEdit_Create);
626757

758+
759+
addClass('TLazDateEdit', 'TLazCustomControl', TDateEdit);
760+
addProperty('TLazDateEdit', 'Date', 'TDateTime', @_LapeDateEdit_Date_Read, @_LapeDateEdit_Date_Write);
761+
addProperty('TLazDateEdit', 'MinDate', 'TDateTime', @_LapeDateEdit_MinDate_Read, @_LapeDateEdit_MinDate_Write);
762+
addProperty('TLazDateEdit', 'MaxDate', 'TDateTime', @_LapeDateEdit_MaxDate_Read, @_LapeDateEdit_MaxDate_Write);
763+
addProperty('TLazDateEdit', 'DateFormat', 'String', @_LapeDateEdit_DateFormat_Read, @_LapeDateEdit_DateFormat_Write);
764+
addProperty('TLazDateEdit', 'DefaultToday', 'Boolean', @_LapeDateEdit_DefaultToday_Read, @_LapeDateEdit_DefaultToday_Write);
765+
addProperty('TLazDateEdit', 'ReadOnly', 'Boolean', @_LapeDateEdit_ReadOnly_Read, @_LapeDateEdit_ReadOnly_Write);
766+
addProperty('TLazDateEdit', 'DirectInput', 'Boolean', @_LapeDateEdit_DirectInput_Read, @_LapeDateEdit_DirectInput_Write);
767+
addClassConstructor('TLazDateEdit', '(TheOwner: TLazComponent)', @_LapeDateEdit_Create);
768+
769+
addClass('TLazTimeEdit', 'TLazCustomControl', TTimeEdit);
770+
addProperty('TLazTimeEdit', 'Time', 'TDateTime', @_LapeTimeEdit_Time_Read, @_LapeTimeEdit_Time_Write);
771+
addProperty('TLazTimeEdit', 'DefaultNow', 'Boolean', @_LapeTimeEdit_DefaultNow_Read, @_LapeTimeEdit_DefaultNow_Write);
772+
addProperty('TLazTimeEdit', 'ReadOnly', 'Boolean', @_LapeTimeEdit_ReadOnly_Read, @_LapeTimeEdit_ReadOnly_Write);
773+
addProperty('TLazTimeEdit', 'DirectInput', 'Boolean', @_LapeTimeEdit_DirectInput_Read, @_LapeTimeEdit_DirectInput_Write);
774+
addClassConstructor('TLazTimeEdit', '(TheOwner: TLazComponent)', @_LapeTimeEdit_Create);
775+
776+
627777
addClass('TLazMenu', 'TLazComponent', TMenu);
628778
addClass('TLazMenuItem', 'TLazComponent', TMenuItem);
629779
addGlobalFunc('function TLazMenuItem.Find(const ACaption: string): TLazMenuItem;', @_LapeMenuItem_Find);

0 commit comments

Comments
 (0)