Thanks for the answer,

I checked the rowCount(). It looks ok to me. (Thats what the std::cout < .. is for.)

To making a minimal example it will take some time to do it but its a good idea.

Here are some screen shots:

This one shows the Input tab with no row added into the model:
empty-input.jpg

This one shows the Output tab after adding a output row into the model:
one-row-output.jpg

This one shows the Input tab again after adding the output row.
input-after-add-output-row.jpg

If you take a close look you can see that the grid lines are different in both tabs.

PS.
If someone is wondering, this application is a tool to do HW configuration for our own HW. Its usually not shipped to customers.