I just upgraded TMS Pack for FireMonkey from v2.3 to v3.2 (Using XE5). Found TTMSFMXGrid exist a big bug.
Grid can be edited. DirectEdit = True, Operation list as below,
1. Load data into TTMSFMXGrid,
2. Click one cell, it would show editor.
3. While it is editing, Mouse Click another cell, then trigger wrong events
// Click a cell and edit,
[ 20/07/2017 19:55:35.002 ] >>> frmTest.gridTestMouseDown - Col=2, Row=2 : V ***** Enter ***** V
[ 20/07/2017 19:55:35.004 ] <<< frmTest.gridTestMouseDown - Col=2, Row=2 : ^ ***** Exit ***** ^ Elapsed time : 0 msec
[ 20/07/2017 19:55:35.006 ] >>> frmTest.TransactionFieldIsReadOnly - Col=2, Row=2 : V ***** Enter ***** V
[ 20/07/2017 19:55:35.009 ] <<< frmTest.TransactionFieldIsReadOnly - Col=2, Row=2 : ^ ***** Exit ***** ^ Elapsed time : 0 msec
[ 20/07/2017 19:55:35.011 ] >>> frmTest.TransactionFieldIsReadOnly - Col=2, Row=2 : V ***** Enter ***** V
[ 20/07/2017 19:55:35.014 ] <<< frmTest.TransactionFieldIsReadOnly - Col=2, Row=2 : ^ ***** Exit ***** ^ Elapsed time : 0 msec
[ 20/07/2017 19:55:35.121 ] >>> frmTest.gridTestMouseUp - Col=2, Row=2 : V ***** Enter ***** V
[ 20/07/2017 19:55:35.124 ] <<< frmTest.gridTestMouseUp - Col=2, Row=2 : ^ ***** Exit ***** ^ Elapsed time : 1 msec
//Click another cell, V3.2 would do sth for edted cell , but V2.2 would trigger MouseDown first
[ 20/07/2017 19:55:43.952 ] >>> frmTest.gridTestCellEditValidateData : V ***** Enter ***** V
[ 20/07/2017 19:55:43.957 ] <<< frmTest.gridTestCellEditValidateData : ^ ***** Exit ***** ^ Elapsed time : 0 msec
[ 20/07/2017 19:55:43.962 ] >>> frmTest.gridTestCellEditSetData : V ***** Enter ***** V
[ 20/07/2017 19:55:43.968 ] <<< frmTest.gridTestCellEditSetData : ^ ***** Exit ***** ^ Elapsed time : 0 msec
[ 20/07/2017 19:55:43.978 ] >>> frmTest.gridTestCellEditDone : V ***** Enter ***** V
[ 20/07/2017 19:55:43.986 ] <<< frmTest.gridTestCellEditDone : ^ ***** Exit ***** ^ Elapsed time : 0 msec
///// here is the bug, grid always trigger MouseUp first, then MouseDown, it would let cursor follow mouse until next Click.
[ 20/07/2017 19:55:44.076 ] >>> frmTest.gridTestMouseUp - Col=1, Row=1 : V ***** Enter ***** V
[ 20/07/2017 19:55:44.078 ] <<< frmTest.gridTestMouseUp - Col=1, Row=1 : ^ ***** Exit ***** ^ Elapsed time : 1 msec
[ 20/07/2017 19:55:44.128 ] >>> frmTest.gridTestMouseDown - Col=1, Row=1 : V ***** Enter ***** V
[ 20/07/2017 19:55:44.130 ] <<< frmTest.gridTestMouseDown - Col=1, Row=1 : ^ ***** Exit ***** ^ Elapsed time : 0 msec
Are there any options to affect this?
Thanks,