File indexing completed on 2024-05-12 04:20:45
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 KGANTTTREEVIEWROWCONTROLLER_H 0010 #define KGANTTTREEVIEWROWCONTROLLER_H 0011 0012 #include "kganttabstractrowcontroller.h" 0013 0014 QT_BEGIN_NAMESPACE 0015 class QAbstractProxyModel; 0016 class QTreeView; 0017 QT_END_NAMESPACE 0018 0019 namespace KGantt { 0020 0021 0022 /*!\class TreeViewRowController 0023 * This is an implementation of AbstractRowController that 0024 * aligns a gantt view with a QTreeView. 0025 */ 0026 class KGANTT_EXPORT TreeViewRowController : public AbstractRowController { 0027 KGANTT_DECLARE_PRIVATE_BASE_POLYMORPHIC(TreeViewRowController) 0028 public: 0029 TreeViewRowController( QTreeView* tv, QAbstractProxyModel* proxy ); 0030 ~TreeViewRowController() override; 0031 0032 /*reimp*/ int headerHeight() const override; 0033 /*reimp*/ int maximumItemHeight() const override; 0034 /*reimp*/ int totalHeight() const override; 0035 /*reimp*/ bool isRowVisible( const QModelIndex& idx ) const override; 0036 /*reimp*/ bool isRowExpanded( const QModelIndex& idx ) const override; 0037 /*reimp*/ Span rowGeometry( const QModelIndex& idx ) const override; 0038 /*reimp*/ QModelIndex indexAt( int height ) const override; 0039 /*reimp*/ QModelIndex indexAbove( const QModelIndex& idx ) const override; 0040 /*reimp*/ QModelIndex indexBelow( const QModelIndex& idx ) const override; 0041 }; 0042 } 0043 0044 #endif /* KGANTTTREEVIEWROWCONTROLLER_H */ 0045