TCustomCalendar.Date is wrong inside OnXXXChanged events on Linux-QT
Original Reporter info from Mantis: Bart @flyingsheep
-
Reporter name: Bart Broersma
Original Reporter info from Mantis: Bart @flyingsheep
- Reporter name: Bart Broersma
Description:
Inside the OnMonthChanged, OnYearChanged and OnChange the value of TCalendar.Date is wrong, it contains the old value that was previously selected.
Steps to reproduce:
Unzip and build attached sample project.
It creates a TCalendar on the form.
Select 3th of december 2014 as the date.
Click on the arrow of the TCalendar to go to the next month (january 2015)
Expected result:
Calendar.YearChanged : 03-01-15
Calendar.MonthChanged : 03-01-15
Calendar.Change : 03-01-15
//order may differ
Observed result:
Calendar.Change : 03-12-14
Calendar.MonthChanged : 03-12-14
Additional information:
The events that each WS fires differ.
Start with date = 03-12-2014 (dd-mm-yy, so dec 3th 2014), then goto next month in calendar:
Windows:
TCustomCalendar.LMChanged<br/>
** FDate : 03-12-14
** NewDate: 01-01-15
Calendar.YearChanged : 01-01-15
Calendar.MonthChanged : 01-01-15
Calendar.DayChanged : 01-01-15
Calendar.Change : 01-01-15
So, Windows only ever sends LMChange
GTK2 Linux:
TCustomCalendar.LMMonthChanged
Calendar.MonthChanged : 03-01-15
Calendar.Change : 03-01-15
TCustomCalendar.LMDAYChanged
Calendar.DayChanged : 03-01-15
Calendar.Change : 03-01-15
GTK2 does not send LMYEARChanged nor LMChanged
QT Linux
TCustomCalendar.LMYearChanged
Calendar.YearChanged : 03-12-14 //note: date is old date!!
Calendar.Change : 03-12-14
TCustomCalendar.LMChanged
** FDate : 03-12-14
** NewDate: 03-12-14
TCustomCalendar.LMMonthChanged
Calendar.MonthChanged : 03-12-14
Calendar.Change : 03-12-14
TCustomCalendar.LMChanged
** FDate : 03-12-14
** NewDate: 03-12-14
QT does not send LMMonthCanged if you click on a date in a different month, it only sends LMDaychanged in this case.
Mantis conversion info:
- Mantis ID: 27125
- OS: Linux
- OS Build: Fedora Core 18
- Build: r47069
- Platform: i386
- Version: 1.3 (SVN)
- Fixed in revision: 47080 (#ab1a88f4)
- Target version: 1.2.8