mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-12 16:29:38 +02:00
TCalendarDialog: update TCalendarDialog.Date before calling OnXXXChanged events. Issue #0026852.
git-svn-id: trunk@46791 -
This commit is contained in:
parent
002710fa19
commit
311f06d24a
@ -216,6 +216,9 @@ Type
|
|||||||
FCalendar:TCalendar;
|
FCalendar:TCalendar;
|
||||||
procedure OnDialogClose(Sender: TObject; var CloseAction: TCloseAction);
|
procedure OnDialogClose(Sender: TObject; var CloseAction: TCloseAction);
|
||||||
procedure OnDialogCloseQuery(Sender : TObject; var CanClose : boolean);
|
procedure OnDialogCloseQuery(Sender : TObject; var CanClose : boolean);
|
||||||
|
procedure OnCalendarDayChanged(Sender: TObject);
|
||||||
|
procedure OnCalendarMonthChanged(Sender: TObject);
|
||||||
|
procedure OnCalendarYearChanged(Sender: TObject);
|
||||||
protected
|
protected
|
||||||
class procedure WSRegisterClass; override;
|
class procedure WSRegisterClass; override;
|
||||||
procedure GetNewDate(Sender:TObject);//or onClick
|
procedure GetNewDate(Sender:TObject);//or onClick
|
||||||
@ -226,8 +229,8 @@ Type
|
|||||||
function Execute: Boolean; override;
|
function Execute: Boolean; override;
|
||||||
published
|
published
|
||||||
property Date: TDateTime read FDate write FDate;
|
property Date: TDateTime read FDate write FDate;
|
||||||
property OnDayChanged: TNotifyEvent read FDayChanged write FDayChanged;
|
|
||||||
property DisplaySettings: TDisplaySettings read FDisplaySettings write FDisplaySettings default DefaultDisplaySettings;
|
property DisplaySettings: TDisplaySettings read FDisplaySettings write FDisplaySettings default DefaultDisplaySettings;
|
||||||
|
property OnDayChanged: TNotifyEvent read FDayChanged write FDayChanged;
|
||||||
property OnMonthChanged: TNotifyEvent read FMonthChanged write FMonthChanged;
|
property OnMonthChanged: TNotifyEvent read FMonthChanged write FMonthChanged;
|
||||||
property OnYearChanged: TNotifyEvent read FYearChanged write FYearChanged;
|
property OnYearChanged: TNotifyEvent read FYearChanged write FYearChanged;
|
||||||
property OKCaption:TCaption read FOKCaption write FOKCaption;
|
property OKCaption:TCaption read FOKCaption write FOKCaption;
|
||||||
@ -1293,6 +1296,25 @@ begin
|
|||||||
if Assigned(OnCanClose) then OnCanClose(Sender, CanClose);
|
if Assigned(OnCanClose) then OnCanClose(Sender, CanClose);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TCalendarDialog.OnCalendarDayChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
GetNewDate(Self);
|
||||||
|
if Assigned(FDayChanged) then FDayChanged(Self);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCalendarDialog.OnCalendarMonthChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
GetNewDate(Self);
|
||||||
|
if Assigned(FMonthChanged) then FMonthChanged(Self);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCalendarDialog.OnCalendarYearChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
GetNewDate(Self);
|
||||||
|
if Assigned(FYearChanged) then FYearChanged(Self);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
class procedure TCalendarDialog.WSRegisterClass;
|
class procedure TCalendarDialog.WSRegisterClass;
|
||||||
begin
|
begin
|
||||||
inherited WSRegisterClass;
|
inherited WSRegisterClass;
|
||||||
@ -1328,9 +1350,9 @@ begin
|
|||||||
DateTime:=Self.Date;
|
DateTime:=Self.Date;
|
||||||
TabStop:=True;
|
TabStop:=True;
|
||||||
DisplaySettings:=Self.DisplaySettings;
|
DisplaySettings:=Self.DisplaySettings;
|
||||||
OnDayChanged:=Self.OnDayChanged;
|
OnDayChanged:=@Self.OnCalendarDayChanged;
|
||||||
OnMonthChanged:=Self.OnMonthChanged;
|
OnMonthChanged:=@Self.OnCalendarMonthChanged;
|
||||||
OnYearChanged:=Self.OnYearChanged;
|
OnYearChanged:=@Self.OnCalendarYearChanged;
|
||||||
OnDblClick:=@CalendarDblClick;
|
OnDblClick:=@CalendarDblClick;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user