Details
-
Bug
-
Resolution: Done
-
Not Evaluated
-
5.8.0
-
None
Description
The implementation of takeRow(int row) is wrong. It takes the wrong row, because it takes the row from the wrong item.
In the function "takeRow(int row)" the storageIndex and storageRow is taken from "d->m_things.value(row)" which is wrong. The items of "m_things" are index based not row based. For example a Layout with 50 rows has 100 items stored in "m_things".
You can see the right usage at "getItemPosition" or "takeAt".
It works with this approach:
layout->takeRow(layout->indexOf(widget))