feat: Pagination/virtualization (fetchMore) for EmailListModel
- EmailListModel: QAbstractListModel with canFetchMore/fetchMore * Batch loading (default 50 emails per fetch) * Total count query for scrollbar * TotalCountChanged signal * Paginated DB queries: findAllPaginated, findByFolderIdPaginated * Count queries: countAll, countByFolderId - MailItemDao: new paginated methods * findAllPaginated(offset, limit, filters...) * findByFolderIdPaginated(folderId, offset, limit, filters...) * countAll(filters...), countByFolderId(folderId, filters...) - MailListView: scroll-triggered fetchMore * Connects verticalScrollBar valueChanged on both TreeView and ListView * Triggers fetchMore at 90% scroll threshold * onRowsInserted updates EmailTreeModel when new emails arrive * Works in both normal (tree) and compact (list) views
This commit is contained in:
@@ -596,4 +596,6 @@ CMakeFiles/wino-mail-qt.dir/src/ui/maillistview.cpp.o: \
|
||||
/usr/include/x86_64-linux-gnu/qt6/QtGui/qfontmetrics.h \
|
||||
/usr/include/x86_64-linux-gnu/qt6/QtGui/QColor \
|
||||
/usr/include/x86_64-linux-gnu/qt6/QtGui/qcolor.h \
|
||||
/usr/include/x86_64-linux-gnu/qt6/QtCore/QRect
|
||||
/usr/include/x86_64-linux-gnu/qt6/QtCore/QRect \
|
||||
/usr/include/x86_64-linux-gnu/qt6/QtWidgets/QScrollBar \
|
||||
/usr/include/x86_64-linux-gnu/qt6/QtWidgets/qscrollbar.h
|
||||
|
||||
Reference in New Issue
Block a user