summaryrefslogtreecommitdiffstats
path: root/src/attic/qttableview.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/attic/qttableview.h')
-rw-r--r--src/attic/qttableview.h250
1 files changed, 250 insertions, 0 deletions
diff --git a/src/attic/qttableview.h b/src/attic/qttableview.h
new file mode 100644
index 000000000..158cb661c
--- /dev/null
+++ b/src/attic/qttableview.h
@@ -0,0 +1,250 @@
+/**********************************************************************
+**
+** Definition of TQtTableView class
+**
+** Created : 941115
+**
+** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
+**
+** This file contains a class moved out of the TQt GUI Toolkit API. It
+** may be used, distributed and modified without limitation.
+**
+**********************************************************************/
+
+#ifndef TQTTABLEVIEW_H
+#define TQTTABLEVIEW_H
+
+#ifndef QT_H
+#include "qframe.h"
+#endif // QT_H
+
+#ifndef QT_NO_QTTABLEVIEW
+
+class TQScrollBar;
+class TQCornerSquare;
+
+
+class TQtTableView : public TQFrame
+{
+ Q_OBJECT
+public:
+ virtual void setBackgroundColor( const TQColor & );
+ virtual void setPalette( const TQPalette & );
+ void show();
+
+ void repaint( bool erase=TRUE );
+ void repaint( int x, int y, int w, int h, bool erase=TRUE );
+ void repaint( const TQRect &, bool erase=TRUE );
+
+protected:
+ TQtTableView( TQWidget *parent=0, const char *name=0, WFlags f=0 );
+ ~TQtTableView();
+
+ int numRows() const;
+ virtual void setNumRows( int );
+ int numCols() const;
+ virtual void setNumCols( int );
+
+ int topCell() const;
+ virtual void setTopCell( int row );
+ int leftCell() const;
+ virtual void setLeftCell( int col );
+ virtual void setTopLeftCell( int row, int col );
+
+ int xOffset() const;
+ virtual void setXOffset( int );
+ int yOffset() const;
+ virtual void setYOffset( int );
+ virtual void setOffset( int x, int y, bool updateScrBars = TRUE );
+
+ virtual int cellWidth( int col );
+ virtual int cellHeight( int row );
+ int cellWidth() const;
+ int cellHeight() const;
+ virtual void setCellWidth( int );
+ virtual void setCellHeight( int );
+
+ virtual int totalWidth();
+ virtual int totalHeight();
+
+ uint tableFlags() const;
+ bool testTableFlags( uint f ) const;
+ virtual void setTableFlags( uint f );
+ void clearTableFlags( uint f = ~0 );
+
+ bool autoUpdate() const;
+ virtual void setAutoUpdate( bool );
+
+ void updateCell( int row, int column, bool erase=TRUE );
+
+ TQRect cellUpdateRect() const;
+ TQRect viewRect() const;
+
+ int lastRowVisible() const;
+ int lastColVisible() const;
+
+ bool rowIsVisible( int row ) const;
+ bool colIsVisible( int col ) const;
+
+ TQScrollBar *verticalScrollBar() const;
+ TQScrollBar *horizontalScrollBar() const;
+
+private slots:
+ void horSbValue( int );
+ void horSbSliding( int );
+ void horSbSlidingDone();
+ void verSbValue( int );
+ void verSbSliding( int );
+ void verSbSlidingDone();
+
+protected:
+ virtual void paintCell( TQPainter *, int row, int col ) = 0;
+ virtual void setupPainter( TQPainter * );
+
+ void paintEvent( TQPaintEvent * );
+ void resizeEvent( TQResizeEvent * );
+
+ int findRow( int yPos ) const;
+ int findCol( int xPos ) const;
+
+ bool rowYPos( int row, int *yPos ) const;
+ bool colXPos( int col, int *xPos ) const;
+
+ int maxXOffset();
+ int maxYOffset();
+ int maxColOffset();
+ int maxRowOffset();
+
+ int minViewX() const;
+ int minViewY() const;
+ int maxViewX() const;
+ int maxViewY() const;
+ int viewWidth() const;
+ int viewHeight() const;
+
+ void scroll( int xPixels, int yPixels );
+ void updateScrollBars();
+ void updateTableSize();
+
+private:
+ void coverCornerSquare( bool );
+ void snapToGrid( bool horizontal, bool vertical );
+ virtual void setHorScrollBar( bool on, bool update = TRUE );
+ virtual void setVerScrollBar( bool on, bool update = TRUE );
+ void updateView();
+ int findRawRow( int yPos, int *cellMaxY, int *cellMinY = 0,
+ bool goOutsideView = FALSE ) const;
+ int findRawCol( int xPos, int *cellMaxX, int *cellMinX = 0,
+ bool goOutsideView = FALSE ) const;
+ int maxColsVisible() const;
+
+ void updateScrollBars( uint );
+ void updateFrameSize();
+
+ void doAutoScrollBars();
+ void showOrHideScrollBars();
+
+ int nRows;
+ int nCols;
+ int xOffs, yOffs;
+ int xCellOffs, yCellOffs;
+ short xCellDelta, yCellDelta;
+ short cellH, cellW;
+
+ uint eraseInPaint : 1;
+ uint verSliding : 1;
+ uint verSnappingOff : 1;
+ uint horSliding : 1;
+ uint horSnappingOff : 1;
+ uint coveringCornerSquare : 1;
+ uint sbDirty : 8;
+ uint inSbUpdate : 1;
+
+ uint tFlags;
+ TQRect cellUpdateR;
+
+ TQScrollBar *vScrollBar;
+ TQScrollBar *hScrollBar;
+ TQCornerSquare *cornerSquare;
+
+private: // Disabled copy constructor and operator=
+#if defined(Q_DISABLE_COPY)
+ TQtTableView( const TQtTableView & );
+ TQtTableView &operator=( const TQtTableView & );
+#endif
+};
+
+
+const uint Tbl_vScrollBar = 0x00000001;
+const uint Tbl_hScrollBar = 0x00000002;
+const uint Tbl_autoVScrollBar = 0x00000004;
+const uint Tbl_autoHScrollBar = 0x00000008;
+const uint Tbl_autoScrollBars = 0x0000000C;
+
+const uint Tbl_clipCellPainting = 0x00000100;
+const uint Tbl_cutCellsV = 0x00000200;
+const uint Tbl_cutCellsH = 0x00000400;
+const uint Tbl_cutCells = 0x00000600;
+
+const uint Tbl_scrollLastHCell = 0x00000800;
+const uint Tbl_scrollLastVCell = 0x00001000;
+const uint Tbl_scrollLastCell = 0x00001800;
+
+const uint Tbl_smoothHScrolling = 0x00002000;
+const uint Tbl_smoothVScrolling = 0x00004000;
+const uint Tbl_smoothScrolling = 0x00006000;
+
+const uint Tbl_snapToHGrid = 0x00008000;
+const uint Tbl_snapToVGrid = 0x00010000;
+const uint Tbl_snapToGrid = 0x00018000;
+
+
+inline int TQtTableView::numRows() const
+{ return nRows; }
+
+inline int TQtTableView::numCols() const
+{ return nCols; }
+
+inline int TQtTableView::topCell() const
+{ return yCellOffs; }
+
+inline int TQtTableView::leftCell() const
+{ return xCellOffs; }
+
+inline int TQtTableView::xOffset() const
+{ return xOffs; }
+
+inline int TQtTableView::yOffset() const
+{ return yOffs; }
+
+inline int TQtTableView::cellHeight() const
+{ return cellH; }
+
+inline int TQtTableView::cellWidth() const
+{ return cellW; }
+
+inline uint TQtTableView::tableFlags() const
+{ return tFlags; }
+
+inline bool TQtTableView::testTableFlags( uint f ) const
+{ return (tFlags & f) != 0; }
+
+inline TQRect TQtTableView::cellUpdateRect() const
+{ return cellUpdateR; }
+
+inline bool TQtTableView::autoUpdate() const
+{ return isUpdatesEnabled(); }
+
+inline void TQtTableView::repaint( bool erase )
+{ repaint( 0, 0, width(), height(), erase ); }
+
+inline void TQtTableView::repaint( const TQRect &r, bool erase )
+{ repaint( r.x(), r.y(), r.width(), r.height(), erase ); }
+
+inline void TQtTableView::updateScrollBars()
+{ updateScrollBars( 0 ); }
+
+
+#endif // QT_NO_QTTABLEVIEW
+
+#endif // TQTTABLEVIEW_H