aboutsummaryrefslogtreecommitdiffstats
path: root/src/nmraii.h
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-08 10:20:14 +0200
committerDanilo M. <danix@danix.xyz>2026-08-08 10:20:14 +0200
commit02d218358347e5d7a29164bc70a346c57fe098ab (patch)
tree33c3292c2e1d215a0465640a195c5d720e88a719 /src/nmraii.h
parentbb3e119a55345e997efe80ec275e67acf7a04851 (diff)
downloadqtmaildir-02d218358347e5d7a29164bc70a346c57fe098ab.tar.gz
qtmaildir-02d218358347e5d7a29164bc70a346c57fe098ab.zip
refactor(model): convert ThreadListModel to QAbstractItemModel
A table cannot indent or expand, so message rows need a tree. This task changes only the base class and the index plumbing: no children are produced yet, so the 30 pre-existing tests in test_threadlistmodel are the regression net proving a thread row still behaves exactly as it did, and QAbstractItemModelTester checks the index/parent round trip a hand-written assertion would miss. Two things the table version could leave wrong and a tree cannot. columnCount returned 0 for a valid parent, which would give message rows no columns and render them blank. And rowCount now answers only for column 0, since a tree takes one set of children per row and offering them under every column draws an expander in each. The model stays two levels deep even though replies carry a reply depth of their own. The visual nesting past the first level comes from that depth, not from further parent-child structure, so no index calculation has to recurse.
Diffstat (limited to 'src/nmraii.h')
0 files changed, 0 insertions, 0 deletions