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.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/core/pim/todo/tableview.h b/core/pim/todo/tableview.h
index 689c496..528ddc9 100644
--- a/core/pim/todo/tableview.h
+++ b/core/pim/todo/tableview.h
@@ -29,84 +29,102 @@
#ifndef OPIE_TABLE_VIEW_H
#define OPIE_TABLE_VIEW_H
#include <qtable.h>
#include <qmap.h>
#include <qpixmap.h>
#include "todoview.h"
class QTimer;
namespace Todo {
class CheckItem;
class DueTextItem;
class TableView : public QTable, public TodoView {
Q_OBJECT
public:
TableView( MainWindow*, QWidget* parent );
~TableView();
QString type()const;
int current();
QString currentRepresentation();
+ int next();
+ int prev();
void clear();
void showOverDue( bool );
void updateView();
void setTodo( int uid, const OTodo& );
void addEvent( const OTodo& event );
void replaceEvent( const OTodo& );
void removeEvent( int uid );
void setShowCompleted( bool );
void setShowDeadline( bool );
void setShowCategory(const QString& =QString::null );
void newDay();
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:
/* reimplented for internal reasons */
void viewportPaintEvent( QPaintEvent* );
QTimer *m_menuTimer;
bool m_enablePaint:1;
QString m_oleCat;
bool m_first : 1;
QPixmap m_pic_completed;
QPixmap m_pic_priority[ 5 ];
protected:
void keyPressEvent( QKeyEvent* );
void contentsMouseReleaseEvent( QMouseEvent* );
void contentsMouseMoveEvent( QMouseEvent* );
void timerEvent( QTimerEvent* e );
QWidget* createEditor(int row, int col, bool initFromCell )const;
void setCellContentFromEditor( int row, int col );
+ /**
+ * for inline editing on single click and to work around some
+ * bug in qt2.3.5
+ */
+ struct EditorWidget {
+ EditorWidget();
+ void setCellWidget(QWidget*, int row, int col );
+ void releaseCellWidget();
+ QWidget* cellWidget()const;
+ int cellRow()const;
+ int cellCol()const;
+ private:
+ QWidget* m_wid;
+ int m_row, m_col;
+ };
+ EditorWidget m_editorWidget;
private slots:
void slotShowMenu();
void slotClicked(int, int, int,
const QPoint& );
void slotPressed(int, int, int,
const QPoint& );
void slotValueChanged(int, int);
void slotCurrentChanged(int, int );
void slotPriority();
private:
void initConfig();
int m_completeStrokeWidth;
bool m_row : 1;
QPoint m_prevP;
};
};
#endif