kde-playground/kdepim/kdgantt2/kdganttview.h
Ivailo Monev a9b00154bc generic: replace forward class declarations with header inclusions
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-07-31 18:05:48 +00:00

105 lines
3.7 KiB
C++

/****************************************************************************
** Copyright (C) 2001-2006 Klarälvdalens Datakonsult AB. All rights reserved.
**
** This file is part of the KD Gantt library.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** Licensees holding valid commercial KD Gantt licenses may use this file in
** accordance with the KD Gantt Commercial License Agreement provided with
** the Software.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.kdab.net/kdgantt for
** information about KD Gantt Commercial License Agreements.
**
** Contact info@kdab.net if any conditions of this
** licensing are not clear to you.
**
**********************************************************************/
#ifndef KDGANTTVIEW_H
#define KDGANTTVIEW_H
#include <QWidget>
#include "kdganttglobal.h"
#include <QAbstractItemModel>
#include <QAbstractProxyModel>
#include <QAbstractItemView>
#include <QModelIndex>
#include <QItemSelectionModel>
#include <QPrinter>
#include <QSplitter>
namespace KDGantt {
class ItemDelegate;
class Constraint;
class ConstraintModel;
class AbstractGrid;
class GraphicsView;
class AbstractRowController;
class KDGANTT_EXPORT View : public QWidget {
Q_OBJECT
KDGANTT_DECLARE_PRIVATE_BASE_POLYMORPHIC_QWIDGET(View)
Q_PRIVATE_SLOT( d, void slotCollapsed(const QModelIndex&) )
Q_PRIVATE_SLOT( d, void slotExpanded(const QModelIndex&) )
Q_PRIVATE_SLOT( d, void slotVerticalScrollValueChanged( int ) )
Q_PRIVATE_SLOT( d, void slotLeftWidgetVerticalRangeChanged( int, int ) )
Q_PRIVATE_SLOT( d, void slotGfxViewVerticalRangeChanged( int, int ) )
public:
explicit View(QWidget* parent=0);
virtual ~View();
QAbstractItemModel* model() const;
QItemSelectionModel* selectionModel() const;
ItemDelegate* itemDelegate() const;
ConstraintModel* constraintModel() const;
AbstractGrid* grid() const;
QModelIndex rootIndex() const;
QModelIndex indexAt( const QPoint& pos ) const;
void setLeftView( QAbstractItemView* );
const QAbstractItemView* leftView() const;
QAbstractItemView* leftView();
const QSplitter* splitter() const;
QSplitter* splitter();
void setRowController( AbstractRowController* );
AbstractRowController* rowController();
const AbstractRowController* rowController() const;
const GraphicsView* graphicsView() const;
GraphicsView* graphicsView();
const QAbstractProxyModel* ganttProxyModel() const;
QAbstractProxyModel* ganttProxyModel();
void print( QPrinter* printer, bool drawRowLabels=true );
void print( QPrinter* printer, qreal start, qreal end, bool drawRowLabels=true );
void print( QPainter* painter, const QRectF& target = QRectF(), bool drawRowLabels=true);
void print( QPainter* painter, qreal start, qreal end,
const QRectF& target = QRectF(), bool drawRowLabels=true);
public Q_SLOTS:
void setModel(QAbstractItemModel* model);
void setRootIndex( const QModelIndex& idx );
void setSelectionModel( QItemSelectionModel* smodel );
void setItemDelegate( ItemDelegate* );
void setConstraintModel( ConstraintModel* );
void setGrid( AbstractGrid* );
protected:
/*reimp*/ void resizeEvent(QResizeEvent*);
};
}
#endif /* KDGANTTVIEW_H */