summaryrefslogtreecommitdiff
path: root/core/pim/todo/tableview.h
Side-by-side diff
Diffstat (limited to 'core/pim/todo/tableview.h') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/todo/tableview.h44
1 files changed, 9 insertions, 35 deletions
diff --git a/core/pim/todo/tableview.h b/core/pim/todo/tableview.h
index 1fa21b2..b608204 100644
--- a/core/pim/todo/tableview.h
+++ b/core/pim/todo/tableview.h
@@ -48,4 +48,2 @@ namespace Todo {
- void updateFromTable( const OTodo&, CheckItem* = 0 );
- OTodo find(int uid);
@@ -55,2 +53,3 @@ namespace Todo {
+ void clear();
void showOverDue( bool );
@@ -65,7 +64,13 @@ namespace Todo {
void setShowCategory(const QString& =QString::null );
- void clear();
void newDay();
- QArray<int> completed();
QWidget* widget();
void sortColumn(int, bool, bool );
+
+ /*
+ * we do our drawing ourselves
+ * because we don't want to have
+ * 40.000 QTableItems for 10.000
+ * OTodos where we only show 10 at a time!
+ */
+ void paintCell(QPainter* p, int row, int col, const QRect&, bool );
private:
@@ -73,7 +78,3 @@ namespace Todo {
void viewportPaintEvent( QPaintEvent* );
- inline void insertTodo( const OTodo&, int row );
- CheckItem* checkItem( int row );
- DueTextItem* dueItem( int row );
QTimer *m_menuTimer;
- QMap<int, CheckItem*> m_cache;
bool m_enablePaint:1;
@@ -89,29 +90,2 @@ private slots:
};
- inline void TableView::insertTodo( const OTodo& event, int row ) {
-
-
- QString sortKey = (char) ( (event.isCompleted() ? 'a' : 'A' )
- + event.priority() )
- + Qtopia::buildSortKey( event.description() );
- CheckItem *chk = new CheckItem( this, sortKey, event.uid(), event.categories() );
- chk->setChecked( event.isCompleted() );
-
- ComboItem *cmb = new ComboItem(this, QTableItem::WhenCurrent );
- cmb->setText( QString::number( event.priority() ) );
-
- QString sum = event.summary();
- QTableItem* ti = new TodoTextItem( this, sum.isEmpty() ?
- event.description().left(40).simplifyWhiteSpace() :
- sum );
- ti->setReplaceable( FALSE );
-
- DueTextItem *due = new DueTextItem(this, event );
-
- setItem( row, 0, chk );
- setItem( row, 1, cmb );
- setItem( row, 2, ti );
- setItem( row, 3, due );
-
- m_cache.insert( event.uid(), chk );
- }
};