summaryrefslogtreecommitdiff
path: root/noncore/apps/oxygen/dataTable.cpp
authorcniehaus <cniehaus>2002-09-17 11:26:33 (UTC)
committer cniehaus <cniehaus>2002-09-17 11:26:33 (UTC)
commitbb15715567b88dd01f074092c1c4c3b7e0702693 (patch) (side-by-side diff)
tree01bbe60177230f5e9b5b482c4e436e454b5c933e /noncore/apps/oxygen/dataTable.cpp
parent92b88813ad8d6352fbf74964fc56dfc1a2aada8c (diff)
downloadopie-bb15715567b88dd01f074092c1c4c3b7e0702693.zip
opie-bb15715567b88dd01f074092c1c4c3b7e0702693.tar.gz
opie-bb15715567b88dd01f074092c1c4c3b7e0702693.tar.bz2
first attempt of a reimplementation of paintCell
Diffstat (limited to 'noncore/apps/oxygen/dataTable.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/oxygen/dataTable.cpp29
1 files changed, 26 insertions, 3 deletions
diff --git a/noncore/apps/oxygen/dataTable.cpp b/noncore/apps/oxygen/dataTable.cpp
index 80c0311..f03e973 100644
--- a/noncore/apps/oxygen/dataTable.cpp
+++ b/noncore/apps/oxygen/dataTable.cpp
@@ -11,14 +11,37 @@
#include "dataTable.h"
#include <qtable.h>
-dataTable::dataTable() : QTable()
+OxydataTable::OxydataTable(int numRows, int numCols, QWidget *parent,
+ const char *name) : QTable(numRows, numRows, parent, name)
{
}
-void dataTable::paintCell( QPainter *p, int, int, const QRect &cr, bool )
+
+void OxydataTable::paintCell( QPainter *p, int row, int col, const QRect &cr, bool selected)
{
- if ( currentRow()%2) qDebug("foo" );
+ if ( cr.width() == 0 || cr.height() == 0 )
+ return;
+ if ( selected &&
+ row == currentRow() &&
+ col == currentColumn() )
+ selected = FALSE;
+
+ int w = cr.width();
+ int h = cr.height();
+
+ QTableItem *itm = item( row, col );
+ if ( itm ) {
+ p->save();
+ itm->paint( p, colorGroup(), cr, selected );
+ p->restore();
+ } else {
+ if ( currentRow()%2 ) //every even row
+ p->fillRect( 0, 0, w, h, selected ? colorGroup().brush( QColorGroup::Highlight ) : colorGroup().brush( QColorGroup::Base ) );
+ else //every odd row
+ p->fillRect( 0, 0, w, h, selected ? colorGroup().brush( QColorGroup::Highlight ) : colorGroup().brush( QColorGroup::Base ) );
+ }
}
+