if qt2 goes, the attached should go (in) as well i think (i.e. remove qgridview.[Ch])
edwin
Index: qgridview.h =================================================================== --- qgridview.h (revision 13415) +++ qgridview.h (working copy) @@ -1,134 +0,0 @@ -/********************************************************************** -** $Id: qgridview.h,v 1.3 2004/12/14 11:05:44 leeming Exp $ -** -** Definition of QGridView class -** -** Created: 2001.05.23 -** -** Copyright (C) 1992-2001 Trolltech AS. All rights reserved. -** -** This file is part of the widgets module of the Qt GUI Toolkit. -** -** This file may be distributed under the terms of the Q Public License -** as defined by Trolltech AS of Norway and appearing in the file -** LICENSE.QPL included in the packaging of this file. -** -** 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 Qt Enterprise Edition or Qt Professional Edition -** licenses may use this file in accordance with the Qt 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.trolltech.com/pricing.html or email [EMAIL PROTECTED] for -** information about Qt Commercial License Agreements. -** See http://www.trolltech.com/qpl/ for QPL licensing information. -** See http://www.trolltech.com/gpl/ for GPL licensing information. -** -** Contact [EMAIL PROTECTED] if any conditions of this licensing are -** not clear to you. -** -**********************************************************************/ - -#ifndef QGRIDVIEW_H -#define QGRIDVIEW_H - -#include <qscrollview.h> - -#ifndef QT_NO_GRIDVIEW - -class QGridViewPrivate; - -class QGridView : public QScrollView -{ - Q_OBJECT - Q_PROPERTY( int numRows READ numRows WRITE setNumRows ) - Q_PROPERTY( int numCols READ numCols WRITE setNumCols ) - Q_PROPERTY( int cellWidth READ cellWidth WRITE setCellWidth ) - Q_PROPERTY( int cellHeight READ cellHeight WRITE setCellHeight ) -public: - - QGridView( QWidget *parent=0, const char *name=0, WFlags f=0 ); - ~QGridView(); - - int numRows() const; - virtual void setNumRows( int ); - int numCols() const; - virtual void setNumCols( int ); - - int cellWidth() const; - virtual void setCellWidth( int ); - int cellHeight() const; - virtual void setCellHeight( int ); - - QRect cellRect() const; - QRect cellGeometry( int row, int column ); - QSize gridSize() const; - - int rowAt( int y ) const; - int columnAt( int x ) const; - - void repaintCell( int row, int column, bool erase=TRUE ); - void updateCell( int row, int column ); - void ensureCellVisible( int row, int column ); - -protected: - virtual void paintCell( QPainter *, int row, int col ) = 0; - virtual void paintEmptyArea( QPainter *p, int cx, int cy, int cw, int ch ); - - void drawContents( QPainter *p, int cx, int cy, int cw, int ch ); - - virtual void dimensionChange( int, int ); - -private: - void drawContents( QPainter* ); - void updateGrid(); - - int nrows; - int ncols; - int cellw; - int cellh; - QGridViewPrivate* d; - -private: // Disabled copy constructor and operator= -#if defined(Q_DISABLE_COPY) - QGridView( const QGridView & ); - QGridView &operator=( const QGridView & ); -#endif -}; - -inline int QGridView::cellWidth() const -{ return cellw; } - -inline int QGridView::cellHeight() const -{ return cellh; } - -inline int QGridView::rowAt( int y ) const -{ return y / cellh; } - -inline int QGridView::columnAt( int x ) const -{ return x / cellw; } - -inline int QGridView::numRows() const -{ return nrows; } - -inline int QGridView::numCols() const -{return ncols; } - -inline QRect QGridView::cellRect() const -{ return QRect( 0, 0, cellw, cellh ); } - -inline QSize QGridView::gridSize() const -{ return QSize( ncols * cellw, nrows * cellh ); } - - - -#endif // QT_NO_GRIDVIEW - - -#endif // QTABLEVIEW_H Index: Makefile.dialogs =================================================================== --- Makefile.dialogs (revision 13415) +++ Makefile.dialogs (working copy) @@ -97,7 +97,6 @@ QExternalDialog.C QExternalDialog.h \ QFloatDialog.C QFloatDialog.h \ QGraphicsDialog.C QGraphicsDialog.h \ - qgridview.C qgridview.h \ QIncludeDialog.C QIncludeDialog.h \ QIndexDialog.C QIndexDialog.h \ QLogDialog.C QLogDialog.h \ Index: QBrowseBox.h =================================================================== --- QBrowseBox.h (revision 13415) +++ QBrowseBox.h (working copy) @@ -12,7 +12,7 @@ #ifndef QBROWSEBOX_H #define QBROWSEBOX_H -#include "qgridview.h" +#include <qgridview.h> class QString; Index: qgridview.C =================================================================== --- qgridview.C (revision 13415) +++ qgridview.C (working copy) @@ -1,356 +0,0 @@ -/**************************************************************************** -** $Id: qgridview.C,v 1.3 2003/08/23 00:16:39 leeming Exp $ -** -** Implementation of QGridView class -** -** Created: 010523 -** -** Copyright (C) 1992-2001 Trolltech AS. All rights reserved. -** -** This file is part of the widgets module of the Qt GUI Toolkit. -** -** This file may be distributed under the terms of the Q Public License -** as defined by Trolltech AS of Norway and appearing in the file -** LICENSE.QPL included in the packaging of this file. -** -** 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 Qt Enterprise Edition or Qt Professional Edition -** licenses may use this file in accordance with the Qt 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.trolltech.com/pricing.html or email [EMAIL PROTECTED] for -** information about Qt Commercial License Agreements. -** See http://www.trolltech.com/qpl/ for QPL licensing information. -** See http://www.trolltech.com/gpl/ for GPL licensing information. -** -** Contact [EMAIL PROTECTED] if any conditions of this licensing are -** not clear to you. -** -**********************************************************************/ - - -#include <config.h> - -#include "qgridview.h" - -#ifndef QT_NO_GRIDVIEW - -#include <qpainter.h> - -/*! - \class QGridView qgridview.h - \brief The QGridView class provides an abstract base for fixed-size - grids. - - \ingroup abstractwidgets - - A grid view consists of a number of abstract cells organized in rows - and columns. The cells have a fixed size and are identified with a - row index and a column index. The top-left cell is in row 0, column - 0. The bottom-right cell is in row numRows()-1, column numCols()-1. - - You can define \l numRows, \l numCols, \l cellWidth and - \l cellHeight. Reimplement the pure virtual function paintCell() to - draw the content of a cell. - - With ensureCellVisible(), you can ensure a certain cell is - visible. With rowAt() and columnAt() you can find a cell based on - the given x- and y-coordinates. - - If you need to monitor changes to the grid's dimensions (i.e. when - numRows or numCols is changed), reimplement the dimensionChange() - change handler. - - Note: the row, column indices are always given in the order, row - (vertical offset) then column (horizontal offset). This order is the - opposite of all pixel operations, which are given in the order x - (horizontal offset), y (vertical offset). - - QGridView is a very simple abstract class based on QScrollView. It - is designed to simplify the task of drawing many cells of the same - size in a potentially scrollable canvas. If you need rows and - columns in different sizes, use a QTable instead. If you need a - simple list of items, use a QListBox. If you need to present - hierachical data use a QListView, and if you need random objects at - random positions, consider using either a QIconView or a QCanvas. - -*/ - - -/*! - Constructs a grid view. - - The \a parent, \a name and widget flag, \a f, arguments are passed to the - QScrollView constructor. -*/ -QGridView::QGridView( QWidget *parent, const char *name, WFlags f ) - :QScrollView( parent, name ,f ),nrows(5),ncols(5),cellw(12),cellh(12) -{ - viewport()->setBackgroundMode( PaletteBase ); - setBackgroundMode( PaletteBackground ); - viewport()->setFocusProxy( this ); -} - -/*! - Destroys the grid view. -*/ -QGridView::~QGridView() -{ -} - -void QGridView::updateGrid() -{ - resizeContents( ncols * cellw, nrows * cellh ); -} - -/*! \property QGridView::numRows - \brief The number of rows in the grid - - \sa numCols -*/ -void QGridView::setNumRows( int numRows ) -{ - int oldnrows = nrows; - nrows = numRows; - dimensionChange( oldnrows, ncols ); - updateGrid(); -} - -/*! \property QGridView::numCols - \brief The number of columns in the grid - - \sa numRows -*/ -void QGridView::setNumCols( int numCols ) -{ - int oldncols = ncols; - ncols = numCols; - dimensionChange( nrows, oldncols ); - updateGrid(); -} - -/*! \property QGridView::cellWidth - \brief The width of a grid column - - All columns in a grid view have the same width. - - \sa cellHeight -*/ -void QGridView::setCellWidth( int cellWidth ) -{ - cellw = cellWidth; - updateGrid(); - updateContents( contentsX(), contentsY(), visibleWidth(), visibleHeight() ); - -} - -/*! \property QGridView::cellHeight - \brief The height of a grid row - - All rows in a grid view have the same height. - - \sa cellWidth -*/ -void QGridView::setCellHeight( int cellHeight ) -{ - cellh = cellHeight; - updateGrid(); - updateContents( contentsX(), contentsY(), visibleWidth(), visibleHeight() ); - -} - -/*! - Returns the geometry of cell (\a row, \a column) in the content - coordinate system. - - \sa cellRect() - */ -QRect QGridView::cellGeometry( int row, int column ) -{ - QRect r; - if ( row >= 0 && row < nrows && column >= 0 && column < ncols ) - r.setRect( cellw * column, cellh * row, cellw, cellh ); - return r; -} - -/*! Repaints cell (\a row, \a column). - - If \a erase is TRUE, Qt erases the area of the cell before the - paintCell() call; otherwise no erasing takes place. - - \sa QWidget::repaint() - */ -void QGridView::repaintCell( int row, int column, bool erase ) -{ - repaintContents( cellGeometry( row, column ), erase ); -} - -/*! Updates cell (\a row, \a column). - - \sa QWidget::update() - */ -void QGridView::updateCell( int row, int column ) -{ - updateContents( cellGeometry( row, column ) ); -} - -/*! - Ensure cell (\a row, \a column) is visible, scrolling the grid view - if necessary. - */ -void QGridView::ensureCellVisible( int row, int column ) -{ - QRect r = cellGeometry( row, column ); - ensureVisible( r.x(), r.y(), r.width(), r.height() ); -} - -/*! This function fills the \a cw pixels wide and \a ch pixels high - rectangle starting at position (\a cx, \a cy) with the - background color using the painter \a p. - - paintEmptyArea() is invoked by drawContents() to erase - or fill unused areas. -*/ - -void QGridView::paintEmptyArea( QPainter *p, int cx ,int cy, int cw, int ch) -{ - if ( gridSize().width() >= contentsWidth() && gridSize().height() >= contentsHeight() ) - return; - // Region of the rect we should draw - contentsToViewport( cx, cy, cx, cy ); - QRegion reg( QRect( cx, cy, cw, ch ) ); - // Subtract the table from it - reg = reg.subtract( QRect( contentsToViewport( QPoint( 0, 0 ) ), gridSize() ) ); - - // And draw the rectangles (transformed as needed) - QArray<QRect> r = reg.rects(); - const QBrush &brush = colorGroup().brush(QColorGroup::Background); - for ( int i = 0; i < (int)r.count(); ++i) - p->fillRect( r[ i ], brush ); -} - -/*!\reimp - */ -void QGridView::drawContents( QPainter *p, int cx, int cy, int cw, int ch ) -{ - int colfirst = columnAt( cx ); - int collast = columnAt( cx + cw ); - int rowfirst = rowAt( cy ); - int rowlast = rowAt( cy + ch ); - - if ( rowfirst == -1 || colfirst == -1 ) { - paintEmptyArea( p, cx, cy, cw, ch ); - return; - } - - if ( collast < 0 || collast >= ncols ) - collast = ncols-1; - if ( rowlast < 0 || rowlast >= nrows ) - rowlast = nrows-1; - - // Go through the rows - for ( int r = rowfirst; r <= rowlast; ++r ) { - // get row position and height - int rowp = r * cellh; - - // Go through the columns in the row r - // if we know from where to where, go through [colfirst, collast], - // else go through all of them - for ( int c = colfirst; c <= collast; ++c ) { - // get position and width of column c - int colp = c * cellw; - // Translate painter and draw the cell - p->translate( colp, rowp ); - paintCell( p, r, c ); - p->translate( -colp, -rowp ); - } - } - - // Paint empty rects - paintEmptyArea( p, cx, cy, cw, ch ); -} - -/*! - \reimp - - (Implemented to get rid of a compiler warning.) -*/ -void QGridView::drawContents( QPainter * ) -{ -} - -/*! \fn void QGridView::dimensionChange( int oldNumRows, int oldNumCols ) - - This change handler is called whenever any of the grid's dimensions - changes. \a oldNumRows and \a oldNumCols contain the old dimensions, - numRows() and numCols() contain the new dimensions. - */ -void QGridView::dimensionChange( int, int ) {} - - - -/*! \fn int QGridView::rowAt( int y ) const - - Returns the number of the row at position \a y. \a y must be given in - content coordinates. - - \sa columnAt() - */ - -/*! \fn int QGridView::columnAt( int x ) const - - Returns the number of the column at position \a x. \a x must be - given in content coordinates. - - \sa rowAt() - */ - -/*! - \fn void QGridView::paintCell( QPainter *p, int row, int col ) - - This pure virtual function is called to paint the single cell at - (\a row, \a col) using painter \a p. The painter must be open when - paintCell() is called and must remain open. - - The coordinate system is \link QPainter::translate() translated \endlink - so that the origin is at the top-left corner of the cell to be - painted, i.e. \e cell coordinates. Do not scale or shear the coordinate - system (or if you do, restore the transformation matrix before you - return). - - The painter is not clipped by default in order to get maximum - efficiency. If you want clipping, use - - \code - p->setClipRect( cellRect(), QPainter::CoordPainter ); - //... your drawing code - p->setClipping( FALSE ); - - \endcode - -*/ - -/*! \fn QRect QGridView::cellRect() const - - Returns the geometry of a cell in a cell's coordinate system. This - is a convenience function useful in paintCell(). It is equivalent to - QRect( 0, 0, cellWidth(), cellHeight() ). - - \sa cellGeometry() - - */ - -/*!\fn QSize QGridView::gridSize() const - - Returns the size of the grid in pixels. - - */ - -#endif // QT_NO_GRIDVIEW