File indexing completed on 2024-05-12 04:20:44
0001 /* 0002 * SPDX-FileCopyrightText: 2001-2015 Klaralvdalens Datakonsult AB. All rights reserved. 0003 * 0004 * This file is part of the KGantt library. 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #ifndef KGANTTLISTVIEWROWCONTROLLER_H 0010 #define KGANTTLISTVIEWROWCONTROLLER_H 0011 0012 #include "kganttabstractrowcontroller.h" 0013 0014 QT_BEGIN_NAMESPACE 0015 class QAbstractProxyModel; 0016 class QListView; 0017 QT_END_NAMESPACE 0018 0019 namespace KGantt { 0020 0021 0022 /*!\class ListViewRowController 0023 * This is an implementation of AbstractRowController that 0024 * aligns a gantt view with a QListView. Provided for 0025 * convenience for users who want to use View with QListView 0026 * instead of QTreeView. 0027 */ 0028 class KGANTT_EXPORT ListViewRowController : public AbstractRowController { 0029 KGANTT_DECLARE_PRIVATE_BASE_POLYMORPHIC(ListViewRowController) 0030 public: 0031 ListViewRowController( QListView* lv, QAbstractProxyModel* proxy ); 0032 ~ListViewRowController() override; 0033 0034 /*reimp*/ int headerHeight() const override; 0035 /*reimp*/ int maximumItemHeight() const override; 0036 /*reimp*/ int totalHeight() const override; 0037 /*reimp*/ bool isRowVisible( const QModelIndex& idx ) const override; 0038 /*reimp*/ bool isRowExpanded( const QModelIndex& idx ) const override; 0039 /*reimp*/ Span rowGeometry( const QModelIndex& idx ) const override; 0040 /*reimp*/ QModelIndex indexAt( int height ) const override; 0041 /*reimp*/ QModelIndex indexAbove( const QModelIndex& idx ) const override; 0042 /*reimp*/ QModelIndex indexBelow( const QModelIndex& idx ) const override; 0043 }; 0044 } 0045 0046 #endif /* KGANTTLISTVIEWROWCONTROLLER_H */ 0047