mirror of
https://bitbucket.org/smil3y/kde-playground.git
synced 2025-02-23 18:32:51 +00:00
105 lines
3.7 KiB
C++
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 */
|