-rw-r--r-- | core/pim/todo/tableview.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/core/pim/todo/tableview.cpp b/core/pim/todo/tableview.cpp index cec8b5e..ae27fab 100644 --- a/core/pim/todo/tableview.cpp +++ b/core/pim/todo/tableview.cpp | |||
@@ -34,116 +34,126 @@ | |||
34 | #include <qpoint.h> | 34 | #include <qpoint.h> |
35 | #include <qpopupmenu.h> | 35 | #include <qpopupmenu.h> |
36 | 36 | ||
37 | #include <qpe/config.h> | 37 | #include <qpe/config.h> |
38 | #include <qpe/resource.h> | 38 | #include <qpe/resource.h> |
39 | 39 | ||
40 | #include <opie/orecur.h> | 40 | #include <opie/orecur.h> |
41 | 41 | ||
42 | #include "mainwindow.h" | 42 | #include "mainwindow.h" |
43 | //#include "tableitems.h" | 43 | //#include "tableitems.h" |
44 | #include "tableview.h" | 44 | #include "tableview.h" |
45 | 45 | ||
46 | using namespace Todo; | 46 | using namespace Todo; |
47 | 47 | ||
48 | namespace { | 48 | namespace { |
49 | static const int BoxSize = 14; | 49 | static const int BoxSize = 14; |
50 | static const int RowHeight = 20; | 50 | static const int RowHeight = 20; |
51 | } | 51 | } |
52 | 52 | ||
53 | 53 | ||
54 | void TableView::initConfig() { | 54 | void TableView::initConfig() { |
55 | Config config( "todo" ); | 55 | Config config( "todo" ); |
56 | config.setGroup( "Options" ); | 56 | config.setGroup( "Options" ); |
57 | m_completeStrokeWidth = config.readNumEntry( "CompleteStrokeWidth", 8 ); | 57 | m_completeStrokeWidth = config.readNumEntry( "CompleteStrokeWidth", 8 ); |
58 | for (int i = 0; i < numCols(); i++ ) { | ||
59 | int width = config.readNumEntry("Width"+QString::number(i), -1 ); | ||
60 | setColumnWidth(i, width == -1 ? columnWidth(i) : width ); | ||
61 | } | ||
58 | } | 62 | } |
59 | 63 | ||
60 | TableView::TableView( MainWindow* window, QWidget* wid ) | 64 | TableView::TableView( MainWindow* window, QWidget* wid ) |
61 | : QTable( wid ), TodoView( window ) { | 65 | : QTable( wid ), TodoView( window ) { |
62 | 66 | ||
63 | // Load icons | 67 | // Load icons |
64 | // TODO - probably should be done globally somewhere else, | 68 | // TODO - probably should be done globally somewhere else, |
65 | // see also quickeditimpl.cpp/h, taskeditoroverview.cpp/h | 69 | // see also quickeditimpl.cpp/h, taskeditoroverview.cpp/h |
66 | m_pic_completed = Resource::loadPixmap( "todo/completed" ); | 70 | m_pic_completed = Resource::loadPixmap( "todo/completed" ); |
67 | QString namestr; | 71 | QString namestr; |
68 | for ( unsigned int i = 1; i < 6; i++ ) { | 72 | for ( unsigned int i = 1; i < 6; i++ ) { |
69 | namestr = "todo/priority"; | 73 | namestr = "todo/priority"; |
70 | namestr.append( QString::number( i ) ); | 74 | namestr.append( QString::number( i ) ); |
71 | m_pic_priority[ i - 1 ] = Resource::loadPixmap( namestr ); | 75 | m_pic_priority[ i - 1 ] = Resource::loadPixmap( namestr ); |
72 | } | 76 | } |
73 | 77 | ||
74 | setUpdatesEnabled( false ); | 78 | setUpdatesEnabled( false ); |
75 | viewport()->setUpdatesEnabled( false ); | 79 | viewport()->setUpdatesEnabled( false ); |
76 | m_enablePaint = false; | 80 | m_enablePaint = false; |
77 | setNumRows(0); | 81 | setNumRows(0); |
78 | setNumCols(4); | 82 | setNumCols(4); |
79 | 83 | ||
80 | horizontalHeader()->setLabel( 0, QWidget::tr("C.") ); | 84 | horizontalHeader()->setLabel( 0, QWidget::tr("C.") ); |
81 | horizontalHeader()->setLabel( 1, QWidget::tr("Priority") ); | 85 | horizontalHeader()->setLabel( 1, QWidget::tr("Priority") ); |
82 | horizontalHeader()->setLabel( 2, QWidget::tr("Description" ) ); | 86 | horizontalHeader()->setLabel( 2, QWidget::tr("Description" ) ); |
83 | horizontalHeader()->setLabel( 3, QWidget::tr("Deadline") ); | 87 | horizontalHeader()->setLabel( 3, QWidget::tr("Deadline") ); |
84 | 88 | ||
85 | setShowDeadline( todoWindow()->showDeadline() ); | 89 | setShowDeadline( todoWindow()->showDeadline() ); |
86 | 90 | ||
87 | setSorting( TRUE ); | 91 | setSorting( TRUE ); |
88 | setSelectionMode( NoSelection ); | 92 | setSelectionMode( NoSelection ); |
89 | 93 | ||
90 | setLeftMargin( 0 ); | 94 | setLeftMargin( 0 ); |
91 | verticalHeader()->hide(); | 95 | verticalHeader()->hide(); |
92 | 96 | ||
93 | connect((QTable*)this, SIGNAL( clicked( int, int, int, const QPoint& ) ), | 97 | connect((QTable*)this, SIGNAL( clicked( int, int, int, const QPoint& ) ), |
94 | this, SLOT( slotClicked(int, int, int, const QPoint& ) ) ); | 98 | this, SLOT( slotClicked(int, int, int, const QPoint& ) ) ); |
95 | connect((QTable*)this, SIGNAL( pressed( int, int, int, const QPoint& ) ), | 99 | connect((QTable*)this, SIGNAL( pressed( int, int, int, const QPoint& ) ), |
96 | this, SLOT( slotPressed(int, int, int, const QPoint& ) ) ); | 100 | this, SLOT( slotPressed(int, int, int, const QPoint& ) ) ); |
97 | connect((QTable*)this, SIGNAL(valueChanged(int, int) ), | 101 | connect((QTable*)this, SIGNAL(valueChanged(int, int) ), |
98 | this, SLOT( slotValueChanged(int, int) ) ); | 102 | this, SLOT( slotValueChanged(int, int) ) ); |
99 | connect((QTable*)this, SIGNAL(currentChanged(int, int) ), | 103 | connect((QTable*)this, SIGNAL(currentChanged(int, int) ), |
100 | this, SLOT( slotCurrentChanged(int, int) ) ); | 104 | this, SLOT( slotCurrentChanged(int, int) ) ); |
101 | 105 | ||
102 | m_menuTimer = new QTimer( this ); | 106 | m_menuTimer = new QTimer( this ); |
103 | connect( m_menuTimer, SIGNAL(timeout()), | 107 | connect( m_menuTimer, SIGNAL(timeout()), |
104 | this, SLOT(slotShowMenu()) ); | 108 | this, SLOT(slotShowMenu()) ); |
105 | 109 | ||
110 | /* now let's init the config */ | ||
111 | initConfig(); | ||
112 | |||
113 | |||
106 | m_enablePaint = true; | 114 | m_enablePaint = true; |
107 | setUpdatesEnabled( true ); | 115 | setUpdatesEnabled( true ); |
108 | viewport()->setUpdatesEnabled( true ); | 116 | viewport()->setUpdatesEnabled( true ); |
109 | viewport()->update(); | 117 | viewport()->update(); |
110 | setSortOrder( 0 ); | 118 | setSortOrder( 0 ); |
111 | setAscending( TRUE ); | 119 | setAscending( TRUE ); |
112 | m_first = true; | 120 | m_first = true; |
113 | 121 | ||
114 | /* now let's init the config */ | 122 | |
115 | initConfig(); | ||
116 | } | 123 | } |
117 | /* a new day has started | 124 | /* a new day has started |
118 | * update the day | 125 | * update the day |
119 | */ | 126 | */ |
120 | void TableView::newDay() { | 127 | void TableView::newDay() { |
121 | clear(); | 128 | clear(); |
122 | updateView(); | 129 | updateView(); |
123 | } | 130 | } |
124 | TableView::~TableView() { | 131 | TableView::~TableView() { |
125 | 132 | Config config( "todo" ); | |
133 | config.setGroup( "Options" ); | ||
134 | for (int i = 0; i < numCols(); i++ ) | ||
135 | config.writeEntry("Width"+QString::number(i), columnWidth(i) ); | ||
126 | } | 136 | } |
127 | void TableView::slotShowMenu() { | 137 | void TableView::slotShowMenu() { |
128 | QPopupMenu *menu = todoWindow()->contextMenu( current(), sorted()[currentRow()].recurrence().doesRecur() ); | 138 | QPopupMenu *menu = todoWindow()->contextMenu( current(), sorted()[currentRow()].recurrence().doesRecur() ); |
129 | menu->exec(QCursor::pos() ); | 139 | menu->exec(QCursor::pos() ); |
130 | delete menu; | 140 | delete menu; |
131 | } | 141 | } |
132 | QString TableView::type() const { | 142 | QString TableView::type() const { |
133 | return QString::fromLatin1( tr("Table View") ); | 143 | return QString::fromLatin1( tr("Table View") ); |
134 | } | 144 | } |
135 | int TableView::current() { | 145 | int TableView::current() { |
136 | int uid = sorted().uidAt(currentRow() ); | 146 | int uid = sorted().uidAt(currentRow() ); |
137 | 147 | ||
138 | return uid; | 148 | return uid; |
139 | } | 149 | } |
140 | QString TableView::currentRepresentation() { | 150 | QString TableView::currentRepresentation() { |
141 | OTodo to = sorted()[currentRow()]; | 151 | OTodo to = sorted()[currentRow()]; |
142 | return to.summary().isEmpty() ? to.description().left(20) : to.summary() ; | 152 | return to.summary().isEmpty() ? to.description().left(20) : to.summary() ; |
143 | } | 153 | } |
144 | /* show overdue */ | 154 | /* show overdue */ |
145 | void TableView::showOverDue( bool ) { | 155 | void TableView::showOverDue( bool ) { |
146 | clear(); | 156 | clear(); |
147 | updateView(); | 157 | updateView(); |
148 | } | 158 | } |
149 | 159 | ||