summaryrefslogtreecommitdiffabout
path: root/korganizer
authorzautrix <zautrix>2005-07-01 20:33:17 (UTC)
committer zautrix <zautrix>2005-07-01 20:33:17 (UTC)
commit541878bcf52030d8597d5e79afb6ae1185b2ac2c (patch) (unidiff)
treec6aeb2861062f1bfcc6ba10ec6e26b058205a1cd /korganizer
parentc53efbe8f53f468d21d93f5e19b625d1a4beb242 (diff)
downloadkdepimpi-541878bcf52030d8597d5e79afb6ae1185b2ac2c.zip
kdepimpi-541878bcf52030d8597d5e79afb6ae1185b2ac2c.tar.gz
kdepimpi-541878bcf52030d8597d5e79afb6ae1185b2ac2c.tar.bz2
fixixixis
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/kolistview.cpp155
-rw-r--r--korganizer/kolistview.h7
-rw-r--r--korganizer/koprefs.cpp2
-rw-r--r--korganizer/koviewmanager.cpp2
4 files changed, 50 insertions, 116 deletions
diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp
index e5e3704..4c815d8 100644
--- a/korganizer/kolistview.cpp
+++ b/korganizer/kolistview.cpp
@@ -290,16 +290,16 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent,
290 layoutTop->addWidget(mListView); 290 layoutTop->addWidget(mListView);
291 mListView->setFont ( KOPrefs::instance()->mListViewFont ); 291 mListView->setFont ( KOPrefs::instance()->mListViewFont );
292 mPopupMenu = eventPopup(); 292 mPopupMenu = eventPopup();
293 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 293 QPopupMenu* selPopup = new QPopupMenu ( this );
294 i18n("Select all"),this, 294 mPopupMenu->insertSeparator();
295 SLOT(allSelection()),true); 295
296 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 296 selPopup->insertItem(i18n("All"),this,
297 i18n("Deselect all"),this, 297 SLOT(allSelection()));
298 SLOT(clearSelection()),true); 298 selPopup->insertItem(i18n("None"),this,
299 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 299 SLOT(clearSelection()));
300 i18n("Delete all selected"),this, 300 selPopup->insertItem(i18n("Delete selected..."),this,
301 SLOT(deleteAll()),true); 301 SLOT(deleteAll()));
302 302 mPopupMenu->insertItem(i18n("Selection"), selPopup );
303 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 303 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
304 i18n("Hide all selected"),this, 304 i18n("Hide all selected"),this,
305 SLOT(hideAll()),true); 305 SLOT(hideAll()),true);
@@ -314,12 +314,18 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent,
314 mCalPopup = new QPopupMenu ( this ); 314 mCalPopup = new QPopupMenu ( this );
315 mPopupMenu->insertItem( i18n("Set Calendar"), mCalPopup ); 315 mPopupMenu->insertItem( i18n("Set Calendar"), mCalPopup );
316 316
317 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
318 i18n("Set categories")+"...",this,
319 SLOT(setCat()),true);
320 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
321 i18n("Set alarm..."),this,
322 SLOT(setAlarm()),true);
317 QObject::connect(mCalPopup,SIGNAL(aboutToShow()),this, 323 QObject::connect(mCalPopup,SIGNAL(aboutToShow()),this,
318 SLOT( populateCalPopup() )); 324 SLOT( populateCalPopup() ));
319 QObject::connect(mCalPopup,SIGNAL(activated( int )),this, 325 QObject::connect(mCalPopup,SIGNAL(activated( int )),this,
320 SLOT( setCalendar( int ) )); 326 SLOT( setCalendar( int ) ));
321 QPopupMenu * exportPO = new QPopupMenu ( this ); 327 QPopupMenu * exportPO = new QPopupMenu ( this );
322 mPopupMenu->insertItem( i18n("Export selected"), exportPO ); 328 mPopupMenu->insertItem( i18n("Export"), exportPO );
323 exportPO->insertItem( i18n("As iCal (ics) file..."),this, 329 exportPO->insertItem( i18n("As iCal (ics) file..."),this,
324 SLOT(saveToFile())); 330 SLOT(saveToFile()));
325 exportPO->insertItem( i18n("As vCal (vcs) file..."),this, 331 exportPO->insertItem( i18n("As vCal (vcs) file..."),this,
@@ -327,23 +333,14 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent,
327 exportPO->insertItem( i18n("Journal/Details..."),this, 333 exportPO->insertItem( i18n("Journal/Details..."),this,
328 SLOT(saveDescriptionToFile())); 334 SLOT(saveDescriptionToFile()));
329 // mPopupMenu->insertSeparator(); 335 // mPopupMenu->insertSeparator();
330 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 336 // mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
331 i18n("Add Categ. to selected..."),this, 337 // i18n("Add Categ. to selected..."),this,
332 SLOT(addCat()),true); 338 // SLOT(addCat()),true);
333 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
334 i18n("Set Categ. for selected..."),this,
335 SLOT(setCat()),true);
336 //mPopupMenu->insertSeparator(); 339 //mPopupMenu->insertSeparator();
337 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
338 i18n("Set alarm for selected..."),this,
339 SLOT(setAlarm()),true);
340
341
342
343#ifndef DESKTOP_VERSION 340#ifndef DESKTOP_VERSION
344 mPopupMenu->insertSeparator(); 341 mPopupMenu->insertSeparator();
345 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 342 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
346 i18n("Beam selected via IR"),this, 343 i18n("Beam via IR"),this,
347 SLOT(beamSelected()),true); 344 SLOT(beamSelected()),true);
348#endif 345#endif
349 /* 346 /*
@@ -438,7 +435,7 @@ void KOListView::populateCalPopup()
438 mCalPopup->clear(); 435 mCalPopup->clear();
439 KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); 436 KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first();
440 while ( kkf ) { 437 while ( kkf ) {
441 int index = mCalPopup->insertItem( kkf->mName, kkf->mCalNumber); 438 int index = mCalPopup->insertItem( kkf->mName+"...", kkf->mCalNumber);
442 if ( kkf->mErrorOnLoad || kkf->isReadOnly ) 439 if ( kkf->mErrorOnLoad || kkf->isReadOnly )
443 mCalPopup->setItemEnabled( index, false ); 440 mCalPopup->setItemEnabled( index, false );
444 kkf = KOPrefs::instance()->mCalendars.next(); 441 kkf = KOPrefs::instance()->mCalendars.next();
@@ -454,13 +451,19 @@ void KOListView::clearList()
454{ 451{
455 clear (); 452 clear ();
456} 453}
457void KOListView::addCat( ) 454
458{
459 setCategories( false );
460}
461void KOListView::setCat() 455void KOListView::setCat()
462{ 456{
463 setCategories( true ); 457
458 bool set = true;
459 int result = KMessageBox::warningYesNoCancel(this,
460 i18n("Do you want to <b>add</b> categories to the selected items or <b>reset</b> the list (i.e. remove current categories)?"),
461 i18n("Set categories"),
462 i18n("Add"),
463 i18n("Reset"));
464 if (result == KMessageBox::Cancel) return;
465 if (result == KMessageBox::Yes) set = false;
466 setCategories( set );
464} 467}
465 468
466void KOListView::setAlarm() 469void KOListView::setAlarm()
@@ -468,7 +471,6 @@ void KOListView::setAlarm()
468 KOAlarmPrefs kap( this); 471 KOAlarmPrefs kap( this);
469 if ( !kap.exec() ) 472 if ( !kap.exec() )
470 return; 473 return;
471 QStringList itemList;
472 QPtrList<KOListViewItem> sel ; 474 QPtrList<KOListViewItem> sel ;
473 QListViewItem *qitem = mListView->firstChild (); 475 QListViewItem *qitem = mListView->firstChild ();
474 while ( qitem ) { 476 while ( qitem ) {
@@ -543,45 +545,20 @@ void KOListView::setCategories( bool removeOld )
543 } 545 }
544 QStringList catList = csd->selectedCategories(); 546 QStringList catList = csd->selectedCategories();
545 delete csd; 547 delete csd;
546 // if ( catList.count() == 0 ) 548 QPtrList<Incidence> delSel = getSelectedIncidences(); // all inc allowed;
547 // return; 549 Incidence* inc = delSel.first();
548 //catList.sort(); 550 while ( inc ) {
549 QString categoriesStr = catList.join(","); 551 if ( removeOld ) {
550 int i; 552 inc->setCategories( catList, false );
551 QStringList itemList; 553 } else {
552 QPtrList<KOListViewItem> sel ; 554 inc->addCategories( catList, false );
553 QListViewItem *qitem = mListView->firstChild (); 555 }
554 while ( qitem ) { 556 KOListViewItem* item = getItemForEvent(inc);
555 if ( qitem->isSelected() ) { 557 if (item) {
556 sel.append(((KOListViewItem *)qitem));
557 }
558 qitem = qitem->nextSibling();
559 }
560 KOListViewItem * item, *temp;
561 item = sel.first();
562 if( item ) {
563 Incidence* inc = item->data() ;
564 bool setSub = false;
565 if( inc->typeID() == todoID && sel.count() == 1 && inc->relations().count() > 0 ) {
566 int result = KMessageBox::warningYesNoCancel(this,
567 i18n("The todo\n%1\nhas subtodos!\nDo you want to set\nthe categories for\nall subtodos as well?").arg( inc->summary().left ( 25 ) ),
568 i18n("Todo has subtodos"),
569 i18n("Yes"),
570 i18n("No"));
571 if (result == KMessageBox::Cancel) item = 0;
572 if (result == KMessageBox::Yes) setSub = true;
573 }
574 while ( item ) {
575 inc = item->data();
576 if ( removeOld ) {
577 inc->setCategories( catList, setSub );
578 } else {
579 inc->addCategories( catList, setSub );
580 }
581 ListItemVisitor v(item, mStartDate ); 558 ListItemVisitor v(item, mStartDate );
582 inc->accept(v); 559 inc->accept(v);
583 item = sel.next();
584 } 560 }
561 inc = delSel.next();
585 } 562 }
586 QTimer::singleShot( 1, this, SLOT ( resetFocus() ) ); 563 QTimer::singleShot( 1, this, SLOT ( resetFocus() ) );
587} 564}
@@ -589,45 +566,8 @@ void KOListView::setCategories( bool removeOld )
589void KOListView::beamSelected() 566void KOListView::beamSelected()
590{ 567{
591 QPtrList<Incidence> delSel = getSelectedIncidences() ; 568 QPtrList<Incidence> delSel = getSelectedIncidences() ;
592 int icount = delSel.count(); 569 if ( delSel.count() )
593 if ( icount ) {
594 emit beamIncidenceList( delSel ); 570 emit beamIncidenceList( delSel );
595 return;
596 QString fn ;
597 fn = QDir::homeDirPath()+"/kopitempbeamfile.vcs";
598 QString mes;
599 bool createbup = true;
600 if ( createbup ) {
601 QString description = "\n";
602 CalendarLocal* cal = new CalendarLocal();
603 cal->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId);
604 Incidence *incidence = delSel.first();
605 while ( incidence ) {
606 Incidence *in = incidence->clone();
607 description += in->summary() + "\n";
608 cal->addIncidence( in );
609 incidence = delSel.next();
610 }
611 FileStorage storage( cal, fn, new VCalFormat );
612 storage.save();
613 delete cal;
614 mes = i18n("KO/Pi: Ready for beaming");
615 topLevelWidget()->setCaption(mes);
616
617#ifndef DESKTOP_VERSION
618 Ir *ir = new Ir( this );
619 connect( ir, SIGNAL( done( Ir * ) ), this, SLOT( beamDone( Ir * ) ) );
620 ir->send( fn, description, "text/x-vCalendar" );
621#endif
622 }
623 }
624}
625void KOListView::beamDone( Ir *ir )
626{
627#ifndef DESKTOP_VERSION
628 delete ir;
629#endif
630 topLevelWidget()->setCaption(i18n("KO/Pi:Beaming done"));
631} 571}
632 572
633void KOListView::saveDescriptionToFile() 573void KOListView::saveDescriptionToFile()
@@ -1106,9 +1046,8 @@ void KOListView::changeEventDisplay(Event *event, int action)
1106 case KOGlobals::EVENTEDITED: 1046 case KOGlobals::EVENTEDITED:
1107 item = getItemForEvent(event); 1047 item = getItemForEvent(event);
1108 if (item) { 1048 if (item) {
1109 mUidDict.remove( event->uid() ); 1049 ListItemVisitor v(item, mStartDate );
1110 delete item; 1050 ((Incidence*)event)->accept(v);
1111 addIncidence( event );
1112 } 1051 }
1113 break; 1052 break;
1114 case KOGlobals::EVENTDELETED: 1053 case KOGlobals::EVENTDELETED:
diff --git a/korganizer/kolistview.h b/korganizer/kolistview.h
index bcef0f0..a54b550 100644
--- a/korganizer/kolistview.h
+++ b/korganizer/kolistview.h
@@ -30,11 +30,6 @@
30 30
31#include <klistview.h> 31#include <klistview.h>
32 32
33#ifndef DESKTOP_VERSION
34#include <qtopia/ir.h>
35#else
36#define Ir char
37#endif
38#include <libkcal/incidence.h> 33#include <libkcal/incidence.h>
39 34
40#include "koeventview.h" 35#include "koeventview.h"
@@ -279,7 +274,6 @@ class KOListView : public KOEventView
279 void allSelection(); 274 void allSelection();
280 275
281 void clear(); 276 void clear();
282 void beamDone( Ir *ir );
283 void showDates(); 277 void showDates();
284 void hideDates(); 278 void hideDates();
285 void deleteAll(); 279 void deleteAll();
@@ -288,7 +282,6 @@ class KOListView : public KOEventView
288 void saveDescriptionToFile(); 282 void saveDescriptionToFile();
289 void beamSelected(); 283 void beamSelected();
290 void updateConfig(); 284 void updateConfig();
291 void addCat();
292 void setCat(); 285 void setCat();
293 void setAlarm(); 286 void setAlarm();
294 void setCategories( bool removeOld ); 287 void setCategories( bool removeOld );
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index 02d7aae..6337ca5 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -229,7 +229,7 @@ KOPrefs::KOPrefs() :
229 229
230 230
231 KPrefs::setCurrentGroup("Views"); 231 KPrefs::setCurrentGroup("Views");
232 addItemBool("Block Popup Menu",&mBlockPopupMenu,true); 232 addItemBool("Block Popup Menu",&mBlockPopupMenu,false);
233 addItemBool("Show Date Navigator",&mShowDateNavigator,true); 233 addItemBool("Show Date Navigator",&mShowDateNavigator,true);
234 addItemInt("Hour Size",&mHourSize,8); 234 addItemInt("Hour Size",&mHourSize,8);
235 addItemBool("Show Daily Recurrences",&mDailyRecur,true); 235 addItemBool("Show Daily Recurrences",&mDailyRecur,true);
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp
index bd191d8..792a7b8 100644
--- a/korganizer/koviewmanager.cpp
+++ b/korganizer/koviewmanager.cpp
@@ -455,6 +455,8 @@ void KOViewManager::showListView()
455 mMainView, SLOT ( moveIncidence( Incidence * ) ) ); 455 mMainView, SLOT ( moveIncidence( Incidence * ) ) );
456 connect( mListView, SIGNAL( beamIncidenceSignal( Incidence * ) ), 456 connect( mListView, SIGNAL( beamIncidenceSignal( Incidence * ) ),
457 mMainView, SLOT ( beamIncidence( Incidence * ) ) ); 457 mMainView, SLOT ( beamIncidence( Incidence * ) ) );
458 connect( mListView, SIGNAL( beamIncidenceList( QPtrList<Incidence> ) ),
459 mMainView, SLOT ( beamIncidenceList( QPtrList<Incidence> ) ) );
458 } 460 }
459 // bool temp = mFlagShowNextxDays; 461 // bool temp = mFlagShowNextxDays;
460 //globalFlagBlockPainting = true; 462 //globalFlagBlockPainting = true;