Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-8886

Low performance of changing data in a densely populated QTreeView

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 4.7.0
    • 4.5.3, 4.6.0, 4.6.1, 4.6.2
    • Widgets: Itemviews
    • None
    • f98d645e7b260fa5098360a5cc4fbb381a30004a

    Description

      The performance of changing data on a large, deep hierarchy is also quite bad in QTreeView. To show this behavior, run the test application, expand all indexes, and then click the "Toggle Long Names" button. This emits dataChanged for all ranges of sibling indexes within the model, but since there is usually just a single child, this really means emitting very close to N signals where N is the number of items in the tree. This operation takes about 8.5 seconds. Reset is not a valid option because it discards selection and would force us to restore the expanded state, something which has already been noted as infeasible due to performance.

      Also worth noting, this only requires a single signal emission in the flat list cases and is also nearly instantaneous.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            goffart Olivier Goffart (closed Nokia identity) (Inactive)
            sanonymous Nokia Qt Support (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes