Bernard,
I am guessing that the real reason is because the Qt libraries don't cater for it, and you don't want to override QTable.
Reuben,
Yes and No.
Yes, the Qt Library does not provide an out of the box extended table, and we tend to not override too much their code (this to avoid beeing stucked in one direction while Qt finally moves in an other one).
No, the fact that the summary line is not implemented is not because of that.
What is really difficult to achieve in GDC is "freeze panes" like in Excel, because here we've to make a lot of drawings by ourselves. (We had a prototype, but as said previously it was unfortunately not an option as it was 100% home made and the we would be blocked later to extend it easily).
The "sum" line problem is more a question of 4GL definition.
I agree your solution could be quickly implemented (even if it's a bit more difficult than you say, as the runtime has to send a page with the current page + the last line).
But I feel (personnal opinion, everyone's idea is of course welcome here) that this is not "4GL" enough. In my eyes, the SUM line and the ARRAY must be two different data objects.
It's not up to the 4GL developper to think the last line must be the total.
It's not up to the 4GL developper to think that you have to insert rows at the last-1 position instead of appending rows, when there is a total line.
Just some ideas, but:
DEFINE ar ARRAY OF RECORD xx ...
DEFINE total RECORD xx ...
DISPLAY ARRAY ar TO sr.* ATTRIBUTES (SUMRECORD = total)
..
or
INPUT ARRAY ar FROM sr.* ATTRIBUTES (SUMRECORD = total)
ON ROW CHANGE
CALL recomputeTotal( DIALOG.DIALOG.getCurrentRow("ar") )
...
Of course then you need a selector for the sum line, but this should be the last issue ;)
As said: in any case, the runtime system and the front ends are impacted: the sum line must always be sent, the synchronisation must be done a bit differently...
Therefore this has not been done today. The goal was to finish Multiple Dialogs first, then to go further.
Now, I can't tell you when this will be done (always the same story of priority), but be sure this is not written on a small paper then thrown to the trash. We've it in mind, and we've already some ideas on how to make it.