author | drw <drw> | 2005-03-07 16:52:17 (UTC) |
---|---|---|
committer | drw <drw> | 2005-03-07 16:52:17 (UTC) |
commit | 5ab00b78b199b1a03d3f27faa8b1dcffd9a86ff7 (patch) (unidiff) | |
tree | bebec7df2d48f82b79a1ff3a98e05791dc444556 /core/pim/datebook/datebookweeklst.cpp | |
parent | 61b9d5f646faa5bd84391318f6440bee6cbefcd8 (diff) | |
download | opie-5ab00b78b199b1a03d3f27faa8b1dcffd9a86ff7.zip opie-5ab00b78b199b1a03d3f27faa8b1dcffd9a86ff7.tar.gz opie-5ab00b78b199b1a03d3f27faa8b1dcffd9a86ff7.tar.bz2 |
Use popup menu for edit, duplicate, delete and beam in week list view - patch courtesy of Thomas Schnetzer
Diffstat (limited to 'core/pim/datebook/datebookweeklst.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | core/pim/datebook/datebookweeklst.cpp | 43 |
1 files changed, 41 insertions, 2 deletions
diff --git a/core/pim/datebook/datebookweeklst.cpp b/core/pim/datebook/datebookweeklst.cpp index fe2ab51..771aa00 100644 --- a/core/pim/datebook/datebookweeklst.cpp +++ b/core/pim/datebook/datebookweeklst.cpp | |||
@@ -4,12 +4,13 @@ | |||
4 | #include "datebook.h" | 4 | #include "datebook.h" |
5 | 5 | ||
6 | #include <opie2/odebug.h> | 6 | #include <opie2/odebug.h> |
7 | 7 | ||
8 | #include <qpe/datebookmonth.h> | 8 | #include <qpe/datebookmonth.h> |
9 | #include <qpe/config.h> | 9 | #include <qpe/config.h> |
10 | #include <qpe/ir.h> | ||
10 | #include <qpe/resource.h> | 11 | #include <qpe/resource.h> |
11 | 12 | ||
12 | #include <qlayout.h> | 13 | #include <qlayout.h> |
13 | #include <qtoolbutton.h> | 14 | #include <qtoolbutton.h> |
14 | #include <qtl.h> | 15 | #include <qtl.h> |
15 | 16 | ||
@@ -189,19 +190,41 @@ DateBookWeekLstEvent::DateBookWeekLstEvent(const EffectiveEvent &ev, | |||
189 | s=middle; | 190 | s=middle; |
190 | } | 191 | } |
191 | } else { | 192 | } else { |
192 | s=""; | 193 | s=""; |
193 | } | 194 | } |
194 | setText(QString(s) + " " + ev.description()); | 195 | setText(QString(s) + " " + ev.description()); |
195 | connect(this, SIGNAL(clicked()), this, SLOT(editMe())); | 196 | //connect(this, SIGNAL(clicked()), this, SLOT(editMe())); |
196 | setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); | 197 | setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); |
197 | } | 198 | } |
198 | void DateBookWeekLstEvent::editMe() { | 199 | void DateBookWeekLstEvent::editMe() { |
199 | emit editEvent(event.event()); | 200 | emit editEvent(event.event()); |
200 | } | 201 | } |
201 | 202 | void DateBookWeekLstEvent::duplicateMe() | |
203 | { | ||
204 | emit duplicateEvent(event.event()); | ||
205 | } | ||
206 | void DateBookWeekLstEvent::deleteMe() | ||
207 | { | ||
208 | emit removeEvent(event.event()); | ||
209 | emit redraw(); | ||
210 | } | ||
211 | void DateBookWeekLstEvent::beamMe() | ||
212 | { | ||
213 | emit beamEvent( event.event() ); | ||
214 | } | ||
215 | void DateBookWeekLstEvent::mousePressEvent( QMouseEvent *e ) | ||
216 | { | ||
217 | popmenue = new QPopupMenu; | ||
218 | popmenue->insertItem( tr( "Edit" ), this, SLOT(editMe())); | ||
219 | popmenue->insertItem( tr( "Duplicate" ), this, SLOT(duplicateMe())); | ||
220 | popmenue->insertItem( tr( "Delete" ), this, SLOT(deleteMe())); | ||
221 | if(Ir::supported()) | ||
222 | popmenue->insertItem( tr( "Beam" ), this, SLOT(beamMe())); | ||
223 | popmenue->popup( mapToGlobal( e->pos() )); | ||
224 | } | ||
202 | 225 | ||
203 | DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev, | 226 | DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev, |
204 | const QDate &d, bool onM, | 227 | const QDate &d, bool onM, |
205 | QWidget* parent, | 228 | QWidget* parent, |
206 | const char* name, WFlags fl) | 229 | const char* name, WFlags fl) |
207 | : QWidget( parent, name, fl ) | 230 | : QWidget( parent, name, fl ) |
@@ -245,12 +268,16 @@ DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev, | |||
245 | // Events | 268 | // Events |
246 | while ( (*it).date().dayOfWeek() == dayOrder[i] && it!=ev.end() ) { | 269 | while ( (*it).date().dayOfWeek() == dayOrder[i] && it!=ev.end() ) { |
247 | if(!(((*it).end().hour()==0) && ((*it).end().minute()==0) && ((*it).startDate()!=(*it).date()))) {// Skip events ending at 00:00 starting at another day. | 270 | if(!(((*it).end().hour()==0) && ((*it).end().minute()==0) && ((*it).startDate()!=(*it).date()))) {// Skip events ending at 00:00 starting at another day. |
248 | DateBookWeekLstEvent *l=new DateBookWeekLstEvent(*it,weeklistviewconfig,this); | 271 | DateBookWeekLstEvent *l=new DateBookWeekLstEvent(*it,weeklistviewconfig,this); |
249 | layout->addWidget(l); | 272 | layout->addWidget(l); |
250 | connect (l, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); | 273 | connect (l, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); |
274 | connect (l, SIGNAL(duplicateEvent(const Event &)), this, SIGNAL(duplicateEvent(const Event &))); | ||
275 | connect (l, SIGNAL(removeEvent(const Event &)), this, SIGNAL(removeEvent(const Event &))); | ||
276 | connect (l, SIGNAL(beamEvent(const Event &)), this, SIGNAL(beamEvent(const Event &))); | ||
277 | connect (l, SIGNAL(redraw()), this, SIGNAL(redraw())); | ||
251 | } | 278 | } |
252 | it++; | 279 | it++; |
253 | } | 280 | } |
254 | layout->addItem(new QSpacerItem(1,1, QSizePolicy::Minimum, QSizePolicy::Expanding)); | 281 | layout->addItem(new QSpacerItem(1,1, QSizePolicy::Minimum, QSizePolicy::Expanding)); |
255 | } | 282 | } |
256 | } | 283 | } |
@@ -266,20 +293,28 @@ DateBookWeekLstDblView::DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, | |||
266 | { | 293 | { |
267 | QHBoxLayout *layout = new QHBoxLayout( this ); | 294 | QHBoxLayout *layout = new QHBoxLayout( this ); |
268 | 295 | ||
269 | DateBookWeekLstView *w=new DateBookWeekLstView(ev1,d,onM,this); | 296 | DateBookWeekLstView *w=new DateBookWeekLstView(ev1,d,onM,this); |
270 | layout->addWidget(w); | 297 | layout->addWidget(w); |
271 | connect (w, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); | 298 | connect (w, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); |
299 | connect (w, SIGNAL(duplicateEvent(const Event &)), this, SIGNAL(duplicateEvent(const Event &))); | ||
300 | connect (w, SIGNAL(removeEvent(const Event &)), this, SIGNAL(removeEvent(const Event &))); | ||
301 | connect (w, SIGNAL(beamEvent(const Event &)), this, SIGNAL(beamEvent(const Event &))); | ||
302 | connect (w, SIGNAL(redraw()), this, SIGNAL(redraw())); | ||
272 | connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); | 303 | connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); |
273 | connect (w, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&)), | 304 | connect (w, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&)), |
274 | this, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&))); | 305 | this, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&))); |
275 | 306 | ||
276 | 307 | ||
277 | w=new DateBookWeekLstView(ev2,d.addDays(7),onM,this); | 308 | w=new DateBookWeekLstView(ev2,d.addDays(7),onM,this); |
278 | layout->addWidget(w); | 309 | layout->addWidget(w); |
279 | connect (w, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); | 310 | connect (w, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); |
311 | connect (w, SIGNAL(duplicateEvent(const Event &)), this, SIGNAL(duplicateEvent(const Event &))); | ||
312 | connect (w, SIGNAL(removeEvent(const Event &)), this, SIGNAL(removeEvent(const Event &))); | ||
313 | connect (w, SIGNAL(beamEvent(const Event &)), this, SIGNAL(beamEvent(const Event &))); | ||
314 | connect (w, SIGNAL(redraw()), this, SIGNAL(redraw())); | ||
280 | connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); | 315 | connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); |
281 | connect (w, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&)), | 316 | connect (w, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&)), |
282 | this, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&))); | 317 | this, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&))); |
283 | } | 318 | } |
284 | 319 | ||
285 | DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB, | 320 | DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB, |
@@ -359,12 +394,16 @@ void DateBookWeekLst::getEvents() { | |||
359 | view=new DateBookWeekLstDblView(el,el2,start,bStartOnMonday,scroll); | 394 | view=new DateBookWeekLstDblView(el,el2,start,bStartOnMonday,scroll); |
360 | } else { | 395 | } else { |
361 | view=new DateBookWeekLstView(el,start,bStartOnMonday,scroll); | 396 | view=new DateBookWeekLstView(el,start,bStartOnMonday,scroll); |
362 | } | 397 | } |
363 | 398 | ||
364 | connect (view, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); | 399 | connect (view, SIGNAL(editEvent(const Event&)), this, SIGNAL(editEvent(const Event&))); |
400 | connect (view, SIGNAL(duplicateEvent(const Event &)), this, SIGNAL(duplicateEvent(const Event &))); | ||
401 | connect (view, SIGNAL(removeEvent(const Event &)), this, SIGNAL(removeEvent(const Event &))); | ||
402 | connect (view, SIGNAL(beamEvent(const Event &)), this, SIGNAL(beamEvent(const Event &))); | ||
403 | connect (view, SIGNAL(redraw()), this, SLOT(redraw())); | ||
365 | connect (view, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); | 404 | connect (view, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); |
366 | connect (view, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&)), | 405 | connect (view, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&)), |
367 | this, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&))); | 406 | this, SIGNAL(addEvent(const QDateTime&,const QDateTime&,const QString&,const QString&))); |
368 | 407 | ||
369 | scroll->addChild(view); | 408 | scroll->addChild(view); |
370 | view->show(); | 409 | view->show(); |