author | zautrix <zautrix> | 2004-08-06 15:59:14 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-08-06 15:59:14 (UTC) |
commit | f3307379ea27ad1394c9107c0129ecd3efd6bca6 (patch) (unidiff) | |
tree | fdfebbebf84b2e86812165fac2bec09f95008ee2 /korganizer | |
parent | fc862590cffbef8429bb8804dadfa61a21a52c7b (diff) | |
download | kdepimpi-f3307379ea27ad1394c9107c0129ecd3efd6bca6.zip kdepimpi-f3307379ea27ad1394c9107c0129ecd3efd6bca6.tar.gz kdepimpi-f3307379ea27ad1394c9107c0129ecd3efd6bca6.tar.bz2 |
Added qick filter selection to kopi menu
-rw-r--r-- | korganizer/calendarview.cpp | 9 | ||||
-rw-r--r-- | korganizer/calendarview.h | 3 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 47 | ||||
-rw-r--r-- | korganizer/mainwindow.h | 3 |
4 files changed, 59 insertions, 3 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 53c079c..fab4540 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp | |||
@@ -3097,145 +3097,154 @@ void CalendarView::processIncidenceSelection( Incidence *incidence ) | |||
3097 | emit groupEventsSelected(false); | 3097 | emit groupEventsSelected(false); |
3098 | } | 3098 | } |
3099 | return; | 3099 | return; |
3100 | } else { | 3100 | } else { |
3101 | if ( incidence && incidence->type() == "Todo" ) { | 3101 | if ( incidence && incidence->type() == "Todo" ) { |
3102 | emit todoSelected( true ); | 3102 | emit todoSelected( true ); |
3103 | Todo *event = static_cast<Todo *>( incidence ); | 3103 | Todo *event = static_cast<Todo *>( incidence ); |
3104 | if ( event->organizer() == KOPrefs::instance()->email() ) { | 3104 | if ( event->organizer() == KOPrefs::instance()->email() ) { |
3105 | emit organizerEventsSelected( true ); | 3105 | emit organizerEventsSelected( true ); |
3106 | } else { | 3106 | } else { |
3107 | emit organizerEventsSelected(false); | 3107 | emit organizerEventsSelected(false); |
3108 | } | 3108 | } |
3109 | if (event->attendeeByMails( KOPrefs::instance()->mAdditionalMails, | 3109 | if (event->attendeeByMails( KOPrefs::instance()->mAdditionalMails, |
3110 | KOPrefs::instance()->email() ) ) { | 3110 | KOPrefs::instance()->email() ) ) { |
3111 | emit groupEventsSelected( true ); | 3111 | emit groupEventsSelected( true ); |
3112 | } else { | 3112 | } else { |
3113 | emit groupEventsSelected(false); | 3113 | emit groupEventsSelected(false); |
3114 | } | 3114 | } |
3115 | return; | 3115 | return; |
3116 | } else { | 3116 | } else { |
3117 | emit todoSelected( false ); | 3117 | emit todoSelected( false ); |
3118 | emit organizerEventsSelected(false); | 3118 | emit organizerEventsSelected(false); |
3119 | emit groupEventsSelected(false); | 3119 | emit groupEventsSelected(false); |
3120 | } | 3120 | } |
3121 | return; | 3121 | return; |
3122 | } | 3122 | } |
3123 | 3123 | ||
3124 | /* if ( incidence && incidence->type() == "Todo" ) { | 3124 | /* if ( incidence && incidence->type() == "Todo" ) { |
3125 | emit todoSelected( true ); | 3125 | emit todoSelected( true ); |
3126 | } else { | 3126 | } else { |
3127 | emit todoSelected( false ); | 3127 | emit todoSelected( false ); |
3128 | }*/ | 3128 | }*/ |
3129 | } | 3129 | } |
3130 | 3130 | ||
3131 | 3131 | ||
3132 | void CalendarView::checkClipboard() | 3132 | void CalendarView::checkClipboard() |
3133 | { | 3133 | { |
3134 | #ifndef KORG_NODND | 3134 | #ifndef KORG_NODND |
3135 | if (ICalDrag::canDecode(QApplication::clipboard()->data())) { | 3135 | if (ICalDrag::canDecode(QApplication::clipboard()->data())) { |
3136 | emit pasteEnabled(true); | 3136 | emit pasteEnabled(true); |
3137 | } else { | 3137 | } else { |
3138 | emit pasteEnabled(false); | 3138 | emit pasteEnabled(false); |
3139 | } | 3139 | } |
3140 | #endif | 3140 | #endif |
3141 | } | 3141 | } |
3142 | 3142 | ||
3143 | void CalendarView::showDates(const DateList &selectedDates) | 3143 | void CalendarView::showDates(const DateList &selectedDates) |
3144 | { | 3144 | { |
3145 | // kdDebug() << "CalendarView::selectDates()" << endl; | 3145 | // kdDebug() << "CalendarView::selectDates()" << endl; |
3146 | 3146 | ||
3147 | if ( mViewManager->currentView() ) { | 3147 | if ( mViewManager->currentView() ) { |
3148 | updateView( selectedDates.first(), selectedDates.last() ); | 3148 | updateView( selectedDates.first(), selectedDates.last() ); |
3149 | } else { | 3149 | } else { |
3150 | mViewManager->showAgendaView(); | 3150 | mViewManager->showAgendaView(); |
3151 | } | 3151 | } |
3152 | 3152 | ||
3153 | QString selDates; | 3153 | QString selDates; |
3154 | selDates = KGlobal::locale()->formatDate( selectedDates.first(), true); | 3154 | selDates = KGlobal::locale()->formatDate( selectedDates.first(), true); |
3155 | if (selectedDates.first() < selectedDates.last() ) | 3155 | if (selectedDates.first() < selectedDates.last() ) |
3156 | selDates += " - " + KGlobal::locale()->formatDate( selectedDates.last(),true); | 3156 | selDates += " - " + KGlobal::locale()->formatDate( selectedDates.last(),true); |
3157 | topLevelWidget()->setCaption( i18n("Dates: ") + selDates ); | 3157 | topLevelWidget()->setCaption( i18n("Dates: ") + selDates ); |
3158 | 3158 | ||
3159 | } | 3159 | } |
3160 | 3160 | ||
3161 | QPtrList<CalFilter> CalendarView::filters() | ||
3162 | { | ||
3163 | return mFilters; | ||
3164 | |||
3165 | } | ||
3161 | void CalendarView::editFilters() | 3166 | void CalendarView::editFilters() |
3162 | { | 3167 | { |
3163 | // kdDebug() << "CalendarView::editFilters()" << endl; | 3168 | // kdDebug() << "CalendarView::editFilters()" << endl; |
3164 | 3169 | ||
3165 | CalFilter *filter = mFilters.first(); | 3170 | CalFilter *filter = mFilters.first(); |
3166 | while(filter) { | 3171 | while(filter) { |
3167 | kdDebug() << " Filter: " << filter->name() << endl; | 3172 | kdDebug() << " Filter: " << filter->name() << endl; |
3168 | filter = mFilters.next(); | 3173 | filter = mFilters.next(); |
3169 | } | 3174 | } |
3170 | 3175 | ||
3171 | mDialogManager->showFilterEditDialog(&mFilters); | 3176 | mDialogManager->showFilterEditDialog(&mFilters); |
3172 | } | 3177 | } |
3173 | void CalendarView::toggleFilter() | 3178 | void CalendarView::toggleFilter() |
3174 | { | 3179 | { |
3175 | showFilter(! mFilterView->isVisible()); | 3180 | showFilter(! mFilterView->isVisible()); |
3176 | } | 3181 | } |
3177 | 3182 | ||
3183 | KOFilterView *CalendarView::filterView() | ||
3184 | { | ||
3185 | return mFilterView; | ||
3186 | } | ||
3178 | void CalendarView::selectFilter( int fil ) | 3187 | void CalendarView::selectFilter( int fil ) |
3179 | { | 3188 | { |
3180 | mFilterView->setSelectedFilter( fil ); | 3189 | mFilterView->setSelectedFilter( fil ); |
3181 | } | 3190 | } |
3182 | void CalendarView::showFilter(bool visible) | 3191 | void CalendarView::showFilter(bool visible) |
3183 | { | 3192 | { |
3184 | if (visible) mFilterView->show(); | 3193 | if (visible) mFilterView->show(); |
3185 | else mFilterView->hide(); | 3194 | else mFilterView->hide(); |
3186 | } | 3195 | } |
3187 | void CalendarView::toggleFilerEnabled( ) | 3196 | void CalendarView::toggleFilerEnabled( ) |
3188 | { | 3197 | { |
3189 | mFilterView->setFiltersEnabled ( !mFilterView->filtersEnabled() ); | 3198 | mFilterView->setFiltersEnabled ( !mFilterView->filtersEnabled() ); |
3190 | if ( !mFilterView->filtersEnabled() ) | 3199 | if ( !mFilterView->filtersEnabled() ) |
3191 | topLevelWidget()->setCaption( i18n("Filter disabled ") ); | 3200 | topLevelWidget()->setCaption( i18n("Filter disabled ") ); |
3192 | 3201 | ||
3193 | } | 3202 | } |
3194 | void CalendarView::updateFilter() | 3203 | void CalendarView::updateFilter() |
3195 | { | 3204 | { |
3196 | CalFilter *filter = mFilterView->selectedFilter(); | 3205 | CalFilter *filter = mFilterView->selectedFilter(); |
3197 | if (filter) { | 3206 | if (filter) { |
3198 | if (mFilterView->filtersEnabled()) { | 3207 | if (mFilterView->filtersEnabled()) { |
3199 | topLevelWidget()->setCaption( i18n("Filter selected: ")+filter->name() ); | 3208 | topLevelWidget()->setCaption( i18n("Filter selected: ")+filter->name() ); |
3200 | filter->setEnabled(true); | 3209 | filter->setEnabled(true); |
3201 | } | 3210 | } |
3202 | else filter->setEnabled(false); | 3211 | else filter->setEnabled(false); |
3203 | mCalendar->setFilter(filter); | 3212 | mCalendar->setFilter(filter); |
3204 | updateView(); | 3213 | updateView(); |
3205 | } | 3214 | } |
3206 | } | 3215 | } |
3207 | 3216 | ||
3208 | void CalendarView::filterEdited() | 3217 | void CalendarView::filterEdited() |
3209 | { | 3218 | { |
3210 | mFilterView->updateFilters(); | 3219 | mFilterView->updateFilters(); |
3211 | updateFilter(); | 3220 | updateFilter(); |
3212 | writeSettings(); | 3221 | writeSettings(); |
3213 | } | 3222 | } |
3214 | 3223 | ||
3215 | 3224 | ||
3216 | void CalendarView::takeOverEvent() | 3225 | void CalendarView::takeOverEvent() |
3217 | { | 3226 | { |
3218 | Incidence *incidence = currentSelection(); | 3227 | Incidence *incidence = currentSelection(); |
3219 | 3228 | ||
3220 | if (!incidence) return; | 3229 | if (!incidence) return; |
3221 | 3230 | ||
3222 | incidence->setOrganizer(KOPrefs::instance()->email()); | 3231 | incidence->setOrganizer(KOPrefs::instance()->email()); |
3223 | incidence->recreate(); | 3232 | incidence->recreate(); |
3224 | incidence->setReadOnly(false); | 3233 | incidence->setReadOnly(false); |
3225 | 3234 | ||
3226 | updateView(); | 3235 | updateView(); |
3227 | } | 3236 | } |
3228 | 3237 | ||
3229 | void CalendarView::takeOverCalendar() | 3238 | void CalendarView::takeOverCalendar() |
3230 | { | 3239 | { |
3231 | // TODO: Create Calendar::allIncidences() function and use it here | 3240 | // TODO: Create Calendar::allIncidences() function and use it here |
3232 | 3241 | ||
3233 | QPtrList<Event> events = mCalendar->events(); | 3242 | QPtrList<Event> events = mCalendar->events(); |
3234 | for(uint i=0; i<events.count(); ++i) { | 3243 | for(uint i=0; i<events.count(); ++i) { |
3235 | events.at(i)->setOrganizer(KOPrefs::instance()->email()); | 3244 | events.at(i)->setOrganizer(KOPrefs::instance()->email()); |
3236 | events.at(i)->recreate(); | 3245 | events.at(i)->recreate(); |
3237 | events.at(i)->setReadOnly(false); | 3246 | events.at(i)->setReadOnly(false); |
3238 | } | 3247 | } |
3239 | 3248 | ||
3240 | QPtrList<Todo> todos = mCalendar->todos(); | 3249 | QPtrList<Todo> todos = mCalendar->todos(); |
3241 | for(uint i=0; i<todos.count(); ++i) { | 3250 | for(uint i=0; i<todos.count(); ++i) { |
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index f7a1213..d564473 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h | |||
@@ -316,134 +316,135 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser | |||
316 | void print(); | 316 | void print(); |
317 | void printSetup(); | 317 | void printSetup(); |
318 | void printPreview(); | 318 | void printPreview(); |
319 | 319 | ||
320 | /** Export as iCalendar file */ | 320 | /** Export as iCalendar file */ |
321 | void exportICalendar(); | 321 | void exportICalendar(); |
322 | 322 | ||
323 | /** Export as vCalendar file */ | 323 | /** Export as vCalendar file */ |
324 | bool exportVCalendar( QString fn); | 324 | bool exportVCalendar( QString fn); |
325 | 325 | ||
326 | /** pop up a dialog to show an existing appointment. */ | 326 | /** pop up a dialog to show an existing appointment. */ |
327 | void appointment_show(); | 327 | void appointment_show(); |
328 | /** | 328 | /** |
329 | * pop up an Appointment Dialog to edit an existing appointment.Get | 329 | * pop up an Appointment Dialog to edit an existing appointment.Get |
330 | * information on the appointment from the list of unique IDs that is | 330 | * information on the appointment from the list of unique IDs that is |
331 | * currently in the View, called currIds. | 331 | * currently in the View, called currIds. |
332 | */ | 332 | */ |
333 | void appointment_edit(); | 333 | void appointment_edit(); |
334 | /** | 334 | /** |
335 | * pop up dialog confirming deletion of currently selected event in the | 335 | * pop up dialog confirming deletion of currently selected event in the |
336 | * View. | 336 | * View. |
337 | */ | 337 | */ |
338 | void appointment_delete(); | 338 | void appointment_delete(); |
339 | 339 | ||
340 | /** mails the currently selected event to a particular user as a vCalendar | 340 | /** mails the currently selected event to a particular user as a vCalendar |
341 | attachment. */ | 341 | attachment. */ |
342 | void action_mail(); | 342 | void action_mail(); |
343 | 343 | ||
344 | /* frees a subtodo from it's relation */ | 344 | /* frees a subtodo from it's relation */ |
345 | void todo_unsub( Todo * ); | 345 | void todo_unsub( Todo * ); |
346 | 346 | ||
347 | /** Take ownership of selected event. */ | 347 | /** Take ownership of selected event. */ |
348 | void takeOverEvent(); | 348 | void takeOverEvent(); |
349 | 349 | ||
350 | /** Take ownership of all events in calendar. */ | 350 | /** Take ownership of all events in calendar. */ |
351 | void takeOverCalendar(); | 351 | void takeOverCalendar(); |
352 | 352 | ||
353 | /** query whether or not the calendar is "dirty". */ | 353 | /** query whether or not the calendar is "dirty". */ |
354 | bool isModified(); | 354 | bool isModified(); |
355 | /** set the state of calendar. Modified means "dirty", i.e. needing a save. */ | 355 | /** set the state of calendar. Modified means "dirty", i.e. needing a save. */ |
356 | void setModified(bool modified=true); | 356 | void setModified(bool modified=true); |
357 | 357 | ||
358 | /** query if the calendar is read-only. */ | 358 | /** query if the calendar is read-only. */ |
359 | bool isReadOnly(); | 359 | bool isReadOnly(); |
360 | /** set state of calendar to read-only */ | 360 | /** set state of calendar to read-only */ |
361 | void setReadOnly(bool readOnly=true); | 361 | void setReadOnly(bool readOnly=true); |
362 | 362 | ||
363 | void eventUpdated(Incidence *); | 363 | void eventUpdated(Incidence *); |
364 | 364 | ||
365 | /* iTIP scheduling actions */ | 365 | /* iTIP scheduling actions */ |
366 | void schedule_publish(Incidence *incidence = 0); | 366 | void schedule_publish(Incidence *incidence = 0); |
367 | void schedule_request(Incidence *incidence = 0); | 367 | void schedule_request(Incidence *incidence = 0); |
368 | void schedule_refresh(Incidence *incidence = 0); | 368 | void schedule_refresh(Incidence *incidence = 0); |
369 | void schedule_cancel(Incidence *incidence = 0); | 369 | void schedule_cancel(Incidence *incidence = 0); |
370 | void schedule_add(Incidence *incidence = 0); | 370 | void schedule_add(Incidence *incidence = 0); |
371 | void schedule_reply(Incidence *incidence = 0); | 371 | void schedule_reply(Incidence *incidence = 0); |
372 | void schedule_counter(Incidence *incidence = 0); | 372 | void schedule_counter(Incidence *incidence = 0); |
373 | void schedule_declinecounter(Incidence *incidence = 0); | 373 | void schedule_declinecounter(Incidence *incidence = 0); |
374 | void schedule_publish_freebusy(int daysToPublish = 30); | 374 | void schedule_publish_freebusy(int daysToPublish = 30); |
375 | 375 | ||
376 | void openAddressbook(); | 376 | void openAddressbook(); |
377 | 377 | ||
378 | void editFilters(); | 378 | void editFilters(); |
379 | void toggleFilerEnabled(); | 379 | void toggleFilerEnabled(); |
380 | 380 | QPtrList<CalFilter> filters(); | |
381 | void toggleFilter(); | 381 | void toggleFilter(); |
382 | void showFilter(bool visible); | 382 | void showFilter(bool visible); |
383 | void updateFilter(); | 383 | void updateFilter(); |
384 | void filterEdited(); | 384 | void filterEdited(); |
385 | void selectFilter( int ); | 385 | void selectFilter( int ); |
386 | KOFilterView *filterView(); | ||
386 | 387 | ||
387 | void showIntro(); | 388 | void showIntro(); |
388 | 389 | ||
389 | /** Move the curdatepient view date to today */ | 390 | /** Move the curdatepient view date to today */ |
390 | void goToday(); | 391 | void goToday(); |
391 | 392 | ||
392 | /** Move to the next date(s) in the current view */ | 393 | /** Move to the next date(s) in the current view */ |
393 | void goNext(); | 394 | void goNext(); |
394 | 395 | ||
395 | /** Move to the previous date(s) in the current view */ | 396 | /** Move to the previous date(s) in the current view */ |
396 | void goPrevious(); | 397 | void goPrevious(); |
397 | /** Move to the next date(s) in the current view */ | 398 | /** Move to the next date(s) in the current view */ |
398 | void goNextMonth(); | 399 | void goNextMonth(); |
399 | 400 | ||
400 | /** Move to the previous date(s) in the current view */ | 401 | /** Move to the previous date(s) in the current view */ |
401 | void goPreviousMonth(); | 402 | void goPreviousMonth(); |
402 | 403 | ||
403 | void toggleExpand(); | 404 | void toggleExpand(); |
404 | void toggleDateNavigatorWidget(); | 405 | void toggleDateNavigatorWidget(); |
405 | void toggleAllDaySize(); | 406 | void toggleAllDaySize(); |
406 | void dialogClosing(Incidence *); | 407 | void dialogClosing(Incidence *); |
407 | 408 | ||
408 | /** Look for new messages in the inbox */ | 409 | /** Look for new messages in the inbox */ |
409 | void lookForIncomingMessages(); | 410 | void lookForIncomingMessages(); |
410 | /** Look for new messages in the outbox */ | 411 | /** Look for new messages in the outbox */ |
411 | void lookForOutgoingMessages(); | 412 | void lookForOutgoingMessages(); |
412 | 413 | ||
413 | void processMainViewSelection( Incidence * ); | 414 | void processMainViewSelection( Incidence * ); |
414 | void processTodoListSelection( Incidence * ); | 415 | void processTodoListSelection( Incidence * ); |
415 | 416 | ||
416 | void processIncidenceSelection( Incidence * ); | 417 | void processIncidenceSelection( Incidence * ); |
417 | 418 | ||
418 | void purgeCompleted(); | 419 | void purgeCompleted(); |
419 | bool removeCompletedSubTodos( Todo* ); | 420 | bool removeCompletedSubTodos( Todo* ); |
420 | void slotCalendarChanged(); | 421 | void slotCalendarChanged(); |
421 | bool importBday(); | 422 | bool importBday(); |
422 | bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday ); | 423 | bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday ); |
423 | bool importQtopia( const QString &categoriesFile, | 424 | bool importQtopia( const QString &categoriesFile, |
424 | const QString &datebookFile, | 425 | const QString &datebookFile, |
425 | const QString &tasklistFile ); | 426 | const QString &tasklistFile ); |
426 | void syncSharp( ); | 427 | void syncSharp( ); |
427 | void slotSelectPickerDate( QDate ) ; | 428 | void slotSelectPickerDate( QDate ) ; |
428 | void showDatePicker( ) ; | 429 | void showDatePicker( ) ; |
429 | void moveIncidence(Incidence *) ; | 430 | void moveIncidence(Incidence *) ; |
430 | void beamIncidence(Incidence *) ; | 431 | void beamIncidence(Incidence *) ; |
431 | void beamCalendar() ; | 432 | void beamCalendar() ; |
432 | void beamFilteredCalendar() ; | 433 | void beamFilteredCalendar() ; |
433 | void beamIncidenceList(QPtrList<Incidence>) ; | 434 | void beamIncidenceList(QPtrList<Incidence>) ; |
434 | void manageCategories(); | 435 | void manageCategories(); |
435 | int addCategories(); | 436 | int addCategories(); |
436 | void removeCategories(); | 437 | void removeCategories(); |
437 | void setSyncDevice( QString ); | 438 | void setSyncDevice( QString ); |
438 | void setSyncName( QString ); | 439 | void setSyncName( QString ); |
439 | protected slots: | 440 | protected slots: |
440 | void timerAlarm(); | 441 | void timerAlarm(); |
441 | void suspendAlarm(); | 442 | void suspendAlarm(); |
442 | void beamDone( Ir *ir ); | 443 | void beamDone( Ir *ir ); |
443 | /** Select a view or adapt the current view to display the specified dates. */ | 444 | /** Select a view or adapt the current view to display the specified dates. */ |
444 | void showDates( const KCal::DateList & ); | 445 | void showDates( const KCal::DateList & ); |
445 | void selectWeekNum ( int ); | 446 | void selectWeekNum ( int ); |
446 | 447 | ||
447 | public: | 448 | public: |
448 | // show a standard warning | 449 | // show a standard warning |
449 | // returns KMsgBox::yesNoCancel() | 450 | // returns KMsgBox::yesNoCancel() |
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 57b299f..a93d8e5 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -1,108 +1,109 @@ | |||
1 | #include <stdlib.h> | 1 | #include <stdlib.h> |
2 | 2 | ||
3 | #include <qaction.h> | 3 | #include <qaction.h> |
4 | #include <qpopupmenu.h> | 4 | #include <qpopupmenu.h> |
5 | #include <qpainter.h> | 5 | #include <qpainter.h> |
6 | #include <qwhatsthis.h> | 6 | #include <qwhatsthis.h> |
7 | #include <qmessagebox.h> | 7 | #include <qmessagebox.h> |
8 | #include <qlineedit.h> | 8 | #include <qlineedit.h> |
9 | #include <qfile.h> | 9 | #include <qfile.h> |
10 | #include <qdir.h> | 10 | #include <qdir.h> |
11 | #include <qapp.h> | 11 | #include <qapp.h> |
12 | #include <qfileinfo.h> | 12 | #include <qfileinfo.h> |
13 | #include <qlabel.h> | 13 | #include <qlabel.h> |
14 | #include <qwmatrix.h> | 14 | #include <qwmatrix.h> |
15 | #include <qtextbrowser.h> | 15 | #include <qtextbrowser.h> |
16 | #include <qtextstream.h> | 16 | #include <qtextstream.h> |
17 | #ifndef DESKTOP_VERSION | 17 | #ifndef DESKTOP_VERSION |
18 | #include <qpe/global.h> | 18 | #include <qpe/global.h> |
19 | #include <qpe/qpemenubar.h> | 19 | #include <qpe/qpemenubar.h> |
20 | #include <qpe/qpetoolbar.h> | 20 | #include <qpe/qpetoolbar.h> |
21 | #include <qpe/resource.h> | 21 | #include <qpe/resource.h> |
22 | #include <qpe/qpeapplication.h> | 22 | #include <qpe/qpeapplication.h> |
23 | #include <qtopia/alarmserver.h> | 23 | #include <qtopia/alarmserver.h> |
24 | #include <qtopia/qcopenvelope_qws.h> | 24 | #include <qtopia/qcopenvelope_qws.h> |
25 | #else | 25 | #else |
26 | #include <qmenubar.h> | 26 | #include <qmenubar.h> |
27 | #include <qtoolbar.h> | 27 | #include <qtoolbar.h> |
28 | #include <qapplication.h> | 28 | #include <qapplication.h> |
29 | //#include <resource.h> | 29 | //#include <resource.h> |
30 | 30 | ||
31 | #endif | 31 | #endif |
32 | #include <libkcal/calendarlocal.h> | 32 | #include <libkcal/calendarlocal.h> |
33 | #include <libkcal/todo.h> | 33 | #include <libkcal/todo.h> |
34 | #include <libkdepim/ksyncprofile.h> | 34 | #include <libkdepim/ksyncprofile.h> |
35 | #include <libkdepim/kincidenceformatter.h> | 35 | #include <libkdepim/kincidenceformatter.h> |
36 | 36 | ||
37 | #include "calendarview.h" | 37 | #include "calendarview.h" |
38 | #include "koviewmanager.h" | 38 | #include "koviewmanager.h" |
39 | #include "datenavigator.h" | 39 | #include "datenavigator.h" |
40 | #include "koagendaview.h" | 40 | #include "koagendaview.h" |
41 | #include "koagenda.h" | 41 | #include "koagenda.h" |
42 | #include "kodialogmanager.h" | 42 | #include "kodialogmanager.h" |
43 | #include "kdialogbase.h" | 43 | #include "kdialogbase.h" |
44 | #include "kapplication.h" | 44 | #include "kapplication.h" |
45 | #include "kofilterview.h" | ||
45 | #include "kstandarddirs.h" | 46 | #include "kstandarddirs.h" |
46 | #include "koprefs.h" | 47 | #include "koprefs.h" |
47 | #include "kfiledialog.h" | 48 | #include "kfiledialog.h" |
48 | #include "koglobals.h" | 49 | #include "koglobals.h" |
49 | #include "kglobal.h" | 50 | #include "kglobal.h" |
50 | #include "klocale.h" | 51 | #include "klocale.h" |
51 | #include "kconfig.h" | 52 | #include "kconfig.h" |
52 | #include "simplealarmclient.h" | 53 | #include "simplealarmclient.h" |
53 | using namespace KCal; | 54 | using namespace KCal; |
54 | #ifndef _WIN32_ | 55 | #ifndef _WIN32_ |
55 | #include <unistd.h> | 56 | #include <unistd.h> |
56 | #else | 57 | #else |
57 | #include "koimportoldialog.h" | 58 | #include "koimportoldialog.h" |
58 | #endif | 59 | #endif |
59 | #include "mainwindow.h" | 60 | #include "mainwindow.h" |
60 | 61 | ||
61 | int globalFlagBlockStartup; | 62 | int globalFlagBlockStartup; |
62 | MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) : | 63 | MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) : |
63 | QMainWindow( parent, name ) | 64 | QMainWindow( parent, name ) |
64 | { | 65 | { |
65 | 66 | ||
66 | #ifdef DESKTOP_VERSION | 67 | #ifdef DESKTOP_VERSION |
67 | setFont( QFont("Arial"), 14 ); | 68 | setFont( QFont("Arial"), 14 ); |
68 | #endif | 69 | #endif |
69 | 70 | ||
70 | //QString confFile = KStandardDirs::appDir() + "config/korganizerrc"; | 71 | //QString confFile = KStandardDirs::appDir() + "config/korganizerrc"; |
71 | QString confFile = locateLocal("config","korganizerrc"); | 72 | QString confFile = locateLocal("config","korganizerrc"); |
72 | QFileInfo finf ( confFile ); | 73 | QFileInfo finf ( confFile ); |
73 | bool showWarning = !finf.exists(); | 74 | bool showWarning = !finf.exists(); |
74 | setIcon(SmallIcon( "ko24" ) ); | 75 | setIcon(SmallIcon( "ko24" ) ); |
75 | mBlockAtStartup = true; | 76 | mBlockAtStartup = true; |
76 | mFlagKeyPressed = false; | 77 | mFlagKeyPressed = false; |
77 | setCaption("KOrganizer/Pi"); | 78 | setCaption("KOrganizer/Pi"); |
78 | KOPrefs *p = KOPrefs::instance(); | 79 | KOPrefs *p = KOPrefs::instance(); |
79 | // if ( QApplication::desktop()->height() > 480 ) { | 80 | // if ( QApplication::desktop()->height() > 480 ) { |
80 | // if ( p->mHourSize == 4 ) | 81 | // if ( p->mHourSize == 4 ) |
81 | // p->mHourSize = 6; | 82 | // p->mHourSize = 6; |
82 | // } | 83 | // } |
83 | if ( p->mHourSize > 18 ) | 84 | if ( p->mHourSize > 18 ) |
84 | p->mHourSize = 18; | 85 | p->mHourSize = 18; |
85 | QMainWindow::ToolBarDock tbd; | 86 | QMainWindow::ToolBarDock tbd; |
86 | if ( p->mToolBarHor ) { | 87 | if ( p->mToolBarHor ) { |
87 | if ( p->mToolBarUp ) | 88 | if ( p->mToolBarUp ) |
88 | tbd = Bottom; | 89 | tbd = Bottom; |
89 | else | 90 | else |
90 | tbd = Top; | 91 | tbd = Top; |
91 | } | 92 | } |
92 | else { | 93 | else { |
93 | if ( p->mToolBarUp ) | 94 | if ( p->mToolBarUp ) |
94 | tbd = Right; | 95 | tbd = Right; |
95 | else | 96 | else |
96 | tbd = Left; | 97 | tbd = Left; |
97 | } | 98 | } |
98 | if ( KOPrefs::instance()->mUseAppColors ) | 99 | if ( KOPrefs::instance()->mUseAppColors ) |
99 | QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true ); | 100 | QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true ); |
100 | globalFlagBlockStartup = 1; | 101 | globalFlagBlockStartup = 1; |
101 | iconToolBar = new QPEToolBar( this ); | 102 | iconToolBar = new QPEToolBar( this ); |
102 | addToolBar (iconToolBar , tbd ); | 103 | addToolBar (iconToolBar , tbd ); |
103 | mBlockSaveFlag = false; | 104 | mBlockSaveFlag = false; |
104 | mCalendarModifiedFlag = false; | 105 | mCalendarModifiedFlag = false; |
105 | 106 | ||
106 | QLabel* splash = new QLabel(i18n("KO/Pi is starting ... "), this ); | 107 | QLabel* splash = new QLabel(i18n("KO/Pi is starting ... "), this ); |
107 | splash->setAlignment ( AlignCenter ); | 108 | splash->setAlignment ( AlignCenter ); |
108 | setCentralWidget( splash ); | 109 | setCentralWidget( splash ); |
@@ -288,159 +289,165 @@ void MainWindow::recieve( const QCString& cmsg, const QByteArray& data ) | |||
288 | mView->newTodo(); | 289 | mView->newTodo(); |
289 | 290 | ||
290 | } | 291 | } |
291 | if ( msg == "-showWN" ) { | 292 | if ( msg == "-showWN" ) { |
292 | mView->viewManager()->showWhatsNextView(); | 293 | mView->viewManager()->showWhatsNextView(); |
293 | } | 294 | } |
294 | if ( msg == "-showTodo" ) { | 295 | if ( msg == "-showTodo" ) { |
295 | mView->viewManager()->showTodoView(); | 296 | mView->viewManager()->showTodoView(); |
296 | } | 297 | } |
297 | if ( msg == "-showList" ) { | 298 | if ( msg == "-showList" ) { |
298 | mView->viewManager()->showListView(); | 299 | mView->viewManager()->showListView(); |
299 | } | 300 | } |
300 | else if ( msg == "-showDay" ) { | 301 | else if ( msg == "-showDay" ) { |
301 | mView->viewManager()->showDayView(); | 302 | mView->viewManager()->showDayView(); |
302 | } | 303 | } |
303 | else if ( msg == "-showWWeek" ) { | 304 | else if ( msg == "-showWWeek" ) { |
304 | mView->viewManager()->showWorkWeekView(); | 305 | mView->viewManager()->showWorkWeekView(); |
305 | } | 306 | } |
306 | else if ( msg == "-ringSync" ) { | 307 | else if ( msg == "-ringSync" ) { |
307 | multiSync( false ); | 308 | multiSync( false ); |
308 | } | 309 | } |
309 | else if ( msg == "-showWeek" ) { | 310 | else if ( msg == "-showWeek" ) { |
310 | mView->viewManager()->showWeekView(); | 311 | mView->viewManager()->showWeekView(); |
311 | } | 312 | } |
312 | else if ( msg == "-showTodo" ) { | 313 | else if ( msg == "-showTodo" ) { |
313 | mView->viewManager()->showTodoView(); | 314 | mView->viewManager()->showTodoView(); |
314 | } | 315 | } |
315 | else if ( msg == "-showJournal" ) { | 316 | else if ( msg == "-showJournal" ) { |
316 | mView->dateNavigator()->selectDates( 1 ); | 317 | mView->dateNavigator()->selectDates( 1 ); |
317 | mView->dateNavigator()->selectToday(); | 318 | mView->dateNavigator()->selectToday(); |
318 | mView->viewManager()->showJournalView(); | 319 | mView->viewManager()->showJournalView(); |
319 | } | 320 | } |
320 | else if ( msg == "-showKO" ) { | 321 | else if ( msg == "-showKO" ) { |
321 | mView->viewManager()->showNextXView(); | 322 | mView->viewManager()->showNextXView(); |
322 | } | 323 | } |
323 | else if ( msg == "-showWNext" || msg == "nextView()" ) { | 324 | else if ( msg == "-showWNext" || msg == "nextView()" ) { |
324 | mView->viewManager()->showWhatsNextView(); | 325 | mView->viewManager()->showWhatsNextView(); |
325 | } | 326 | } |
326 | else if ( msg == "-showNextXView" ) { | 327 | else if ( msg == "-showNextXView" ) { |
327 | mView->viewManager()->showNextXView(); | 328 | mView->viewManager()->showNextXView(); |
328 | } | 329 | } |
329 | 330 | ||
330 | 331 | ||
331 | } | 332 | } |
332 | 333 | ||
333 | showMaximized(); | 334 | showMaximized(); |
334 | raise(); | 335 | raise(); |
335 | } | 336 | } |
336 | 337 | ||
337 | QPixmap MainWindow::loadPixmap( QString name ) | 338 | QPixmap MainWindow::loadPixmap( QString name ) |
338 | { | 339 | { |
339 | return SmallIcon( name ); | 340 | return SmallIcon( name ); |
340 | 341 | ||
341 | } | 342 | } |
342 | void MainWindow::initActions() | 343 | void MainWindow::initActions() |
343 | { | 344 | { |
344 | //KOPrefs::instance()->mShowFullMenu | 345 | //KOPrefs::instance()->mShowFullMenu |
345 | iconToolBar->clear(); | 346 | iconToolBar->clear(); |
346 | KOPrefs *p = KOPrefs::instance(); | 347 | KOPrefs *p = KOPrefs::instance(); |
347 | //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar ); | 348 | //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar ); |
348 | 349 | ||
349 | QPopupMenu *viewMenu = new QPopupMenu( this ); | 350 | QPopupMenu *viewMenu = new QPopupMenu( this ); |
350 | QPopupMenu *actionMenu = new QPopupMenu( this ); | 351 | QPopupMenu *actionMenu = new QPopupMenu( this ); |
351 | QPopupMenu *importMenu = new QPopupMenu( this ); | 352 | QPopupMenu *importMenu = new QPopupMenu( this ); |
352 | 353 | selectFilterMenu = new QPopupMenu( this ); | |
354 | selectFilterMenu->setCheckable( true ); | ||
353 | syncMenu = new QPopupMenu( this ); | 355 | syncMenu = new QPopupMenu( this ); |
354 | configureAgendaMenu = new QPopupMenu( this ); | 356 | configureAgendaMenu = new QPopupMenu( this ); |
355 | configureToolBarMenu = new QPopupMenu( this ); | 357 | configureToolBarMenu = new QPopupMenu( this ); |
356 | QPopupMenu *helpMenu = new QPopupMenu( this ); | 358 | QPopupMenu *helpMenu = new QPopupMenu( this ); |
357 | if ( KOPrefs::instance()->mShowFullMenu ) { | 359 | if ( KOPrefs::instance()->mShowFullMenu ) { |
358 | QMenuBar *menuBar1; | 360 | QMenuBar *menuBar1; |
359 | menuBar1 = menuBar(); | 361 | menuBar1 = menuBar(); |
360 | menuBar1->insertItem( i18n("File"), importMenu ); | 362 | menuBar1->insertItem( i18n("File"), importMenu ); |
361 | menuBar1->insertItem( i18n("View"), viewMenu ); | 363 | menuBar1->insertItem( i18n("View"), viewMenu ); |
362 | menuBar1->insertItem( i18n("Actions"), actionMenu ); | 364 | menuBar1->insertItem( i18n("Actions"), actionMenu ); |
363 | menuBar1->insertItem( i18n("Synchronize"), syncMenu ); | 365 | menuBar1->insertItem( i18n("Synchronize"), syncMenu ); |
364 | menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu ); | 366 | menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu ); |
365 | //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu ); | 367 | //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu ); |
368 | menuBar1->insertItem( i18n("Filter"),selectFilterMenu ); | ||
366 | menuBar1->insertItem( i18n("Help"), helpMenu ); | 369 | menuBar1->insertItem( i18n("Help"), helpMenu ); |
367 | } else { | 370 | } else { |
368 | QPEMenuBar *menuBar1; | 371 | QPEMenuBar *menuBar1; |
369 | menuBar1 = new QPEMenuBar( iconToolBar ); | 372 | menuBar1 = new QPEMenuBar( iconToolBar ); |
370 | QPopupMenu *menuBar = new QPopupMenu( this ); | 373 | QPopupMenu *menuBar = new QPopupMenu( this ); |
371 | menuBar1->insertItem( i18n("ME"), menuBar); | 374 | menuBar1->insertItem( i18n("ME"), menuBar); |
372 | menuBar->insertItem( i18n("File"), importMenu ); | 375 | menuBar->insertItem( i18n("File"), importMenu ); |
373 | menuBar->insertItem( i18n("View"), viewMenu ); | 376 | menuBar->insertItem( i18n("View"), viewMenu ); |
374 | menuBar->insertItem( i18n("Actions"), actionMenu ); | 377 | menuBar->insertItem( i18n("Actions"), actionMenu ); |
375 | menuBar->insertItem( i18n("Synchronize"), syncMenu ); | 378 | menuBar->insertItem( i18n("Synchronize"), syncMenu ); |
376 | menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu ); | 379 | menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu ); |
377 | menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu ); | 380 | menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu ); |
381 | menuBar->insertItem( i18n("Filter"),selectFilterMenu ); | ||
378 | menuBar->insertItem( i18n("Help"), helpMenu ); | 382 | menuBar->insertItem( i18n("Help"), helpMenu ); |
379 | //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() ); | 383 | //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() ); |
380 | menuBar1->setMaximumSize( menuBar1->sizeHint( )); | 384 | menuBar1->setMaximumSize( menuBar1->sizeHint( )); |
381 | } | 385 | } |
382 | connect ( syncMenu, SIGNAL( activated ( int ) ), this, SLOT (slotSyncMenu( int ) ) ); | 386 | connect ( syncMenu, SIGNAL( activated ( int ) ), this, SLOT (slotSyncMenu( int ) ) ); |
387 | connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); | ||
388 | connect ( selectFilterMenu, SIGNAL( aboutToShow () ), this, SLOT (fillFilterMenu() ) ); | ||
389 | |||
383 | // ****************** | 390 | // ****************** |
384 | QAction *action; | 391 | QAction *action; |
385 | QIconSet icon; | 392 | QIconSet icon; |
386 | // QPopupMenu *configureMenu= new QPopupMenu( menuBar ); | 393 | // QPopupMenu *configureMenu= new QPopupMenu( menuBar ); |
387 | configureToolBarMenu->setCheckable( true ); | 394 | configureToolBarMenu->setCheckable( true ); |
388 | 395 | ||
389 | QString pathString = ""; | 396 | QString pathString = ""; |
390 | if ( !p->mToolBarMiniIcons ) { | 397 | if ( !p->mToolBarMiniIcons ) { |
391 | if ( QApplication::desktop()->width() < 480 ) | 398 | if ( QApplication::desktop()->width() < 480 ) |
392 | pathString += "icons16/"; | 399 | pathString += "icons16/"; |
393 | } else | 400 | } else |
394 | pathString += "iconsmini/"; | 401 | pathString += "iconsmini/"; |
395 | configureAgendaMenu->setCheckable( true ); | 402 | configureAgendaMenu->setCheckable( true ); |
396 | configureAgendaMenu->insertItem(i18n("Toggle Allday"), 1 ); | 403 | configureAgendaMenu->insertItem(i18n("Toggle Allday"), 1 ); |
397 | configureAgendaMenu->insertSeparator(); | 404 | configureAgendaMenu->insertSeparator(); |
398 | configureAgendaMenu->insertItem(i18n("Tiny"), 4 ); | 405 | configureAgendaMenu->insertItem(i18n("Tiny"), 4 ); |
399 | configureAgendaMenu->insertItem(i18n("Small"), 6 ); | 406 | configureAgendaMenu->insertItem(i18n("Small"), 6 ); |
400 | configureAgendaMenu->insertItem(i18n("Medium"), 8 ); | 407 | configureAgendaMenu->insertItem(i18n("Medium"), 8 ); |
401 | configureAgendaMenu->insertItem(i18n("Normal"), 10 ); | 408 | configureAgendaMenu->insertItem(i18n("Normal"), 10 ); |
402 | configureAgendaMenu->insertItem(i18n("Large"), 12 ); | 409 | configureAgendaMenu->insertItem(i18n("Large"), 12 ); |
403 | configureAgendaMenu->insertItem(i18n("Big"), 14 ); | 410 | configureAgendaMenu->insertItem(i18n("Big"), 14 ); |
404 | configureAgendaMenu->insertItem(i18n("Bigger"), 16 ); | 411 | configureAgendaMenu->insertItem(i18n("Bigger"), 16 ); |
405 | configureAgendaMenu->insertItem(i18n("Biggest"), 18 ); | 412 | configureAgendaMenu->insertItem(i18n("Biggest"), 18 ); |
406 | //configureMenu->insertItem( "AgendaSize",configureAgendaMenu ); | 413 | //configureMenu->insertItem( "AgendaSize",configureAgendaMenu ); |
407 | 414 | ||
408 | icon = loadPixmap( pathString + "configure" ); | 415 | icon = loadPixmap( pathString + "configure" ); |
409 | action = new QAction( i18n("Configure"),icon, i18n("Configure..."), 0, this ); | 416 | action = new QAction( i18n("Configure"),icon, i18n("Configure..."), 0, this ); |
410 | action->addTo( actionMenu ); | 417 | action->addTo( actionMenu ); |
411 | connect( action, SIGNAL( activated() ), | 418 | connect( action, SIGNAL( activated() ), |
412 | mView, SLOT( edit_options() ) ); | 419 | mView, SLOT( edit_options() ) ); |
413 | actionMenu->insertSeparator(); | 420 | actionMenu->insertSeparator(); |
414 | icon = loadPixmap( pathString + "newevent" ); | 421 | icon = loadPixmap( pathString + "newevent" ); |
415 | configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 ); | 422 | configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 ); |
416 | configureToolBarMenu->insertSeparator(); | 423 | configureToolBarMenu->insertSeparator(); |
417 | configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 ); | 424 | configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 ); |
418 | QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this ); | 425 | QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this ); |
419 | ne_action->addTo( actionMenu ); | 426 | ne_action->addTo( actionMenu ); |
420 | connect( ne_action, SIGNAL( activated() ), | 427 | connect( ne_action, SIGNAL( activated() ), |
421 | mView, SLOT( newEvent() ) ); | 428 | mView, SLOT( newEvent() ) ); |
422 | icon = loadPixmap( pathString + "newtodo" ); | 429 | icon = loadPixmap( pathString + "newtodo" ); |
423 | configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); | 430 | configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); |
424 | QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); | 431 | QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); |
425 | nt_action->addTo( actionMenu ); | 432 | nt_action->addTo( actionMenu ); |
426 | connect( nt_action, SIGNAL( activated() ), | 433 | connect( nt_action, SIGNAL( activated() ), |
427 | mView, SLOT( newTodo() ) ); | 434 | mView, SLOT( newTodo() ) ); |
428 | icon = loadPixmap( pathString + "navi" ); | 435 | icon = loadPixmap( pathString + "navi" ); |
429 | action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this ); | 436 | action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this ); |
430 | action->addTo( viewMenu ); | 437 | action->addTo( viewMenu ); |
431 | connect( action, SIGNAL( activated() ), | 438 | connect( action, SIGNAL( activated() ), |
432 | mView, SLOT( toggleDateNavigatorWidget() ) ); | 439 | mView, SLOT( toggleDateNavigatorWidget() ) ); |
433 | icon = loadPixmap( pathString + "filter" ); | 440 | icon = loadPixmap( pathString + "filter" ); |
434 | action = new QAction( i18n("Toggle FilterView"), icon, i18n("Toggle FilterView"), 0, this ); | 441 | action = new QAction( i18n("Toggle FilterView"), icon, i18n("Toggle FilterView"), 0, this ); |
435 | action->addTo( viewMenu ); | 442 | action->addTo( viewMenu ); |
436 | connect( action, SIGNAL( activated() ), | 443 | connect( action, SIGNAL( activated() ), |
437 | mView, SLOT( toggleFilter() ) ); | 444 | mView, SLOT( toggleFilter() ) ); |
438 | 445 | ||
439 | 446 | ||
440 | viewMenu->insertSeparator(); | 447 | viewMenu->insertSeparator(); |
441 | icon = loadPixmap( pathString + "picker" ); | 448 | icon = loadPixmap( pathString + "picker" ); |
442 | action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this ); | 449 | action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this ); |
443 | action->addTo( viewMenu ); | 450 | action->addTo( viewMenu ); |
444 | connect( action, SIGNAL( activated() ), | 451 | connect( action, SIGNAL( activated() ), |
445 | mView, SLOT( showDatePicker() ) ); | 452 | mView, SLOT( showDatePicker() ) ); |
446 | action->addTo( iconToolBar ); | 453 | action->addTo( iconToolBar ); |
@@ -1454,128 +1461,164 @@ void MainWindow::keyPressEvent ( QKeyEvent * e ) | |||
1454 | break; | 1461 | break; |
1455 | case Qt::Key_P: | 1462 | case Qt::Key_P: |
1456 | mView->showDatePicker( ); | 1463 | mView->showDatePicker( ); |
1457 | break; | 1464 | break; |
1458 | case Qt::Key_F: | 1465 | case Qt::Key_F: |
1459 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) | 1466 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) |
1460 | mView->editFilters(); | 1467 | mView->editFilters(); |
1461 | else | 1468 | else |
1462 | mView->toggleFilter(); | 1469 | mView->toggleFilter(); |
1463 | break; | 1470 | break; |
1464 | case Qt::Key_X: | 1471 | case Qt::Key_X: |
1465 | mView->toggleDateNavigatorWidget(); | 1472 | mView->toggleDateNavigatorWidget(); |
1466 | break; | 1473 | break; |
1467 | case Qt::Key_Space: | 1474 | case Qt::Key_Space: |
1468 | mView->toggleExpand(); | 1475 | mView->toggleExpand(); |
1469 | break; | 1476 | break; |
1470 | case Qt::Key_A: | 1477 | case Qt::Key_A: |
1471 | mView->toggleAllDaySize(); | 1478 | mView->toggleAllDaySize(); |
1472 | break; | 1479 | break; |
1473 | case Qt::Key_T: | 1480 | case Qt::Key_T: |
1474 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) | 1481 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) |
1475 | mView->newTodo(); | 1482 | mView->newTodo(); |
1476 | else { | 1483 | else { |
1477 | mView->goToday(); | 1484 | mView->goToday(); |
1478 | showSelectedDates = true; | 1485 | showSelectedDates = true; |
1479 | } | 1486 | } |
1480 | break; | 1487 | break; |
1481 | case Qt::Key_J: | 1488 | case Qt::Key_J: |
1482 | mView->viewManager()->showJournalView(); | 1489 | mView->viewManager()->showJournalView(); |
1483 | break; | 1490 | break; |
1484 | case Qt::Key_B: | 1491 | case Qt::Key_B: |
1485 | mView->editIncidenceDescription();; | 1492 | mView->editIncidenceDescription();; |
1486 | break; | 1493 | break; |
1487 | // case Qt::Key_Return: | 1494 | // case Qt::Key_Return: |
1488 | case Qt::Key_E: | 1495 | case Qt::Key_E: |
1489 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) | 1496 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) |
1490 | mView->newEvent(); | 1497 | mView->newEvent(); |
1491 | else | 1498 | else |
1492 | mView->editIncidence(); | 1499 | mView->editIncidence(); |
1493 | break; | 1500 | break; |
1494 | case Qt::Key_Plus: | 1501 | case Qt::Key_Plus: |
1495 | size = p->mHourSize +2; | 1502 | size = p->mHourSize +2; |
1496 | if ( size <= 18 ) | 1503 | if ( size <= 18 ) |
1497 | configureAgenda( size ); | 1504 | configureAgenda( size ); |
1498 | break; | 1505 | break; |
1499 | case Qt::Key_Minus: | 1506 | case Qt::Key_Minus: |
1500 | size = p->mHourSize - 2; | 1507 | size = p->mHourSize - 2; |
1501 | if ( size >= 4 ) | 1508 | if ( size >= 4 ) |
1502 | configureAgenda( size ); | 1509 | configureAgenda( size ); |
1503 | break; | 1510 | break; |
1504 | 1511 | ||
1505 | 1512 | ||
1506 | default: | 1513 | default: |
1507 | e->ignore(); | 1514 | e->ignore(); |
1508 | } | 1515 | } |
1509 | if ( pro > 0 ) { | 1516 | if ( pro > 0 ) { |
1510 | mView->selectFilter( pro-1 ); | 1517 | mView->selectFilter( pro-1 ); |
1511 | } | 1518 | } |
1512 | if ( showSelectedDates ) { | 1519 | if ( showSelectedDates ) { |
1513 | ;// setCaptionToDates(); | 1520 | ;// setCaptionToDates(); |
1514 | } | 1521 | } |
1515 | 1522 | ||
1516 | } | 1523 | } |
1517 | 1524 | ||
1525 | void MainWindow::fillFilterMenu() | ||
1526 | { | ||
1527 | selectFilterMenu->clear(); | ||
1528 | bool disable = false; | ||
1529 | if ( mView->filterView()->filtersEnabled() ) { | ||
1530 | selectFilterMenu->insertItem(i18n ( "Turn filter off" ), 0 ); | ||
1531 | } | ||
1532 | else { | ||
1533 | selectFilterMenu->insertItem(i18n ( "Turn filter on" ), 0 ); | ||
1534 | disable = true; | ||
1535 | } | ||
1536 | selectFilterMenu->insertSeparator(); | ||
1537 | QPtrList<CalFilter> fili = mView->filters(); | ||
1538 | CalFilter *curfilter = mView->filterView()->selectedFilter(); | ||
1539 | CalFilter *filter = fili.first(); | ||
1540 | int iii = 1; | ||
1541 | while(filter) { | ||
1542 | selectFilterMenu->insertItem( filter->name(), iii ); | ||
1543 | if ( filter == curfilter) | ||
1544 | selectFilterMenu->setItemChecked( iii, true ); | ||
1545 | if ( disable ) | ||
1546 | selectFilterMenu->setItemEnabled( iii, false ); | ||
1547 | filter = fili.next(); | ||
1548 | ++iii; | ||
1549 | } | ||
1550 | qDebug("rettich "); | ||
1551 | } | ||
1552 | void MainWindow::selectFilter( int fil ) | ||
1553 | { | ||
1554 | qDebug("selectFilter %d ", fil); | ||
1555 | if ( fil == 0 ) { | ||
1556 | mView->toggleFilerEnabled( ); | ||
1557 | } else { | ||
1558 | mView->selectFilter( fil-1 ); | ||
1559 | } | ||
1560 | } | ||
1518 | void MainWindow::configureToolBar( int item ) | 1561 | void MainWindow::configureToolBar( int item ) |
1519 | { | 1562 | { |
1520 | 1563 | ||
1521 | configureToolBarMenu->setItemChecked( item, !configureToolBarMenu-> isItemChecked ( item ) ); | 1564 | configureToolBarMenu->setItemChecked( item, !configureToolBarMenu-> isItemChecked ( item ) ); |
1522 | KOPrefs *p = KOPrefs::instance(); | 1565 | KOPrefs *p = KOPrefs::instance(); |
1523 | p-> mShowIconStretch= configureToolBarMenu->isItemChecked( 5 ); | 1566 | p-> mShowIconStretch= configureToolBarMenu->isItemChecked( 5 ); |
1524 | p-> mShowIconNewEvent= configureToolBarMenu->isItemChecked( 10 ); | 1567 | p-> mShowIconNewEvent= configureToolBarMenu->isItemChecked( 10 ); |
1525 | p->mShowIconNewTodo = configureToolBarMenu->isItemChecked( 20 ); | 1568 | p->mShowIconNewTodo = configureToolBarMenu->isItemChecked( 20 ); |
1526 | p-> mShowIconSearch= configureToolBarMenu->isItemChecked( 120 ); | 1569 | p-> mShowIconSearch= configureToolBarMenu->isItemChecked( 120 ); |
1527 | p-> mShowIconList= configureToolBarMenu->isItemChecked( 30 ); | 1570 | p-> mShowIconList= configureToolBarMenu->isItemChecked( 30 ); |
1528 | p-> mShowIconDay1= configureToolBarMenu->isItemChecked( 40 ); | 1571 | p-> mShowIconDay1= configureToolBarMenu->isItemChecked( 40 ); |
1529 | p-> mShowIconDay5= configureToolBarMenu->isItemChecked( 50 ); | 1572 | p-> mShowIconDay5= configureToolBarMenu->isItemChecked( 50 ); |
1530 | p-> mShowIconDay7= configureToolBarMenu->isItemChecked( 60 ); | 1573 | p-> mShowIconDay7= configureToolBarMenu->isItemChecked( 60 ); |
1531 | p-> mShowIconMonth= configureToolBarMenu->isItemChecked( 70 ); | 1574 | p-> mShowIconMonth= configureToolBarMenu->isItemChecked( 70 ); |
1532 | p-> mShowIconTodoview= configureToolBarMenu->isItemChecked( 80 ); | 1575 | p-> mShowIconTodoview= configureToolBarMenu->isItemChecked( 80 ); |
1533 | p-> mShowIconBackFast= configureToolBarMenu->isItemChecked( 200 ); | 1576 | p-> mShowIconBackFast= configureToolBarMenu->isItemChecked( 200 ); |
1534 | p-> mShowIconBack = configureToolBarMenu->isItemChecked( 210 ); | 1577 | p-> mShowIconBack = configureToolBarMenu->isItemChecked( 210 ); |
1535 | p-> mShowIconToday= configureToolBarMenu->isItemChecked( 130 ); | 1578 | p-> mShowIconToday= configureToolBarMenu->isItemChecked( 130 ); |
1536 | p-> mShowIconForward= configureToolBarMenu->isItemChecked( 220 ); | 1579 | p-> mShowIconForward= configureToolBarMenu->isItemChecked( 220 ); |
1537 | p-> mShowIconForwardFast= configureToolBarMenu->isItemChecked( 230 ); | 1580 | p-> mShowIconForwardFast= configureToolBarMenu->isItemChecked( 230 ); |
1538 | p-> mShowIconNextDays= configureToolBarMenu->isItemChecked( 100 ); | 1581 | p-> mShowIconNextDays= configureToolBarMenu->isItemChecked( 100 ); |
1539 | p-> mShowIconNext= configureToolBarMenu->isItemChecked( 110 ); | 1582 | p-> mShowIconNext= configureToolBarMenu->isItemChecked( 110 ); |
1540 | p-> mShowIconJournal= configureToolBarMenu->isItemChecked( 90 ); | 1583 | p-> mShowIconJournal= configureToolBarMenu->isItemChecked( 90 ); |
1541 | p-> mShowIconWhatsThis= configureToolBarMenu->isItemChecked( 300 ); | 1584 | p-> mShowIconWhatsThis= configureToolBarMenu->isItemChecked( 300 ); |
1542 | // initActions(); | 1585 | // initActions(); |
1543 | } | 1586 | } |
1544 | 1587 | ||
1545 | void MainWindow::setCaptionToDates() | 1588 | void MainWindow::setCaptionToDates() |
1546 | { | 1589 | { |
1547 | QString selDates; | 1590 | QString selDates; |
1548 | selDates = KGlobal::locale()->formatDate(mView->startDate(), true); | 1591 | selDates = KGlobal::locale()->formatDate(mView->startDate(), true); |
1549 | if (mView->startDate() < mView->endDate() ) | 1592 | if (mView->startDate() < mView->endDate() ) |
1550 | selDates += " - " + KGlobal::locale()->formatDate(mView->endDate(), true); | 1593 | selDates += " - " + KGlobal::locale()->formatDate(mView->endDate(), true); |
1551 | setCaption( i18n("Dates: ") + selDates ); | 1594 | setCaption( i18n("Dates: ") + selDates ); |
1552 | 1595 | ||
1553 | } | 1596 | } |
1554 | // parameter item == 0: reinit | 1597 | // parameter item == 0: reinit |
1555 | void MainWindow::configureAgenda( int item ) | 1598 | void MainWindow::configureAgenda( int item ) |
1556 | { | 1599 | { |
1557 | 1600 | ||
1558 | KOPrefs *p = KOPrefs::instance(); | 1601 | KOPrefs *p = KOPrefs::instance(); |
1559 | 1602 | ||
1560 | int i; | 1603 | int i; |
1561 | if ( item == 1 ) { | 1604 | if ( item == 1 ) { |
1562 | mView->toggleAllDaySize(); | 1605 | mView->toggleAllDaySize(); |
1563 | return; | 1606 | return; |
1564 | } | 1607 | } |
1565 | // do not allow 4 for widgets higher than 480 | 1608 | // do not allow 4 for widgets higher than 480 |
1566 | // if ( QApplication::desktop()->height() > 480 ) { | 1609 | // if ( QApplication::desktop()->height() > 480 ) { |
1567 | // if ( item == 4 ) | 1610 | // if ( item == 4 ) |
1568 | // item = 6; | 1611 | // item = 6; |
1569 | // } | 1612 | // } |
1570 | for ( i = 4; i <= 18; i= i+2 ) | 1613 | for ( i = 4; i <= 18; i= i+2 ) |
1571 | configureAgendaMenu->setItemChecked( i, false ); | 1614 | configureAgendaMenu->setItemChecked( i, false ); |
1572 | configureAgendaMenu->setItemChecked( item, true ); | 1615 | configureAgendaMenu->setItemChecked( item, true ); |
1573 | if ( p->mHourSize == item ) | 1616 | if ( p->mHourSize == item ) |
1574 | return; | 1617 | return; |
1575 | p->mHourSize=item; | 1618 | p->mHourSize=item; |
1576 | mView->viewManager()->agendaView()->updateConfig(); | 1619 | mView->viewManager()->agendaView()->updateConfig(); |
1577 | } | 1620 | } |
1578 | 1621 | ||
1579 | void MainWindow::saveCalendar() | 1622 | void MainWindow::saveCalendar() |
1580 | { | 1623 | { |
1581 | QString fn = KOPrefs::instance()->mLastSaveFile; | 1624 | QString fn = KOPrefs::instance()->mLastSaveFile; |
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index 8a3f7b3..fba8c52 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h | |||
@@ -7,111 +7,114 @@ | |||
7 | 7 | ||
8 | #include <libkcal/incidence.h> | 8 | #include <libkcal/incidence.h> |
9 | #include "simplealarmclient.h" | 9 | #include "simplealarmclient.h" |
10 | 10 | ||
11 | class QAction; | 11 | class QAction; |
12 | class CalendarView; | 12 | class CalendarView; |
13 | class KSyncProfile; | 13 | class KSyncProfile; |
14 | #ifdef DESKTOP_VERSION | 14 | #ifdef DESKTOP_VERSION |
15 | 15 | ||
16 | #define QPEToolBar QToolBar | 16 | #define QPEToolBar QToolBar |
17 | #define QPEMenuBar QMenuBar | 17 | #define QPEMenuBar QMenuBar |
18 | #endif | 18 | #endif |
19 | class QPEToolBar; | 19 | class QPEToolBar; |
20 | 20 | ||
21 | namespace KCal { | 21 | namespace KCal { |
22 | class CalendarLocal; | 22 | class CalendarLocal; |
23 | } | 23 | } |
24 | 24 | ||
25 | using namespace KCal; | 25 | using namespace KCal; |
26 | 26 | ||
27 | class MainWindow : public QMainWindow | 27 | class MainWindow : public QMainWindow |
28 | { | 28 | { |
29 | Q_OBJECT | 29 | Q_OBJECT |
30 | public: | 30 | public: |
31 | MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); | 31 | MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); |
32 | ~MainWindow(); | 32 | ~MainWindow(); |
33 | public slots: | 33 | public slots: |
34 | void configureAgenda( int ); | 34 | void configureAgenda( int ); |
35 | void recieve( const QCString& msg, const QByteArray& data ); | 35 | void recieve( const QCString& msg, const QByteArray& data ); |
36 | static QString defaultFileName(); | 36 | static QString defaultFileName(); |
37 | static QString resourcePath(); | 37 | static QString resourcePath(); |
38 | protected slots: | 38 | protected slots: |
39 | void setCaptionToDates(); | 39 | void setCaptionToDates(); |
40 | int ringSync(); | 40 | int ringSync(); |
41 | void multiSync( bool askforPrefs = false ); | 41 | void multiSync( bool askforPrefs = false ); |
42 | void about(); | 42 | void about(); |
43 | void licence(); | 43 | void licence(); |
44 | void faq(); | 44 | void faq(); |
45 | void usertrans(); | 45 | void usertrans(); |
46 | void features(); | 46 | void features(); |
47 | void synchowto(); | 47 | void synchowto(); |
48 | void whatsNew(); | 48 | void whatsNew(); |
49 | void keyBindings(); | 49 | void keyBindings(); |
50 | void aboutAutoSaving();; | 50 | void aboutAutoSaving();; |
51 | void aboutKnownBugs(); | 51 | void aboutKnownBugs(); |
52 | 52 | ||
53 | void processIncidenceSelection( Incidence * ); | 53 | void processIncidenceSelection( Incidence * ); |
54 | 54 | ||
55 | void importQtopia(); | 55 | void importQtopia(); |
56 | void importBday(); | 56 | void importBday(); |
57 | void importOL(); | 57 | void importOL(); |
58 | void importIcal(); | 58 | void importIcal(); |
59 | void importFile( QString, bool ); | 59 | void importFile( QString, bool ); |
60 | void quickImportIcal(); | 60 | void quickImportIcal(); |
61 | 61 | ||
62 | void slotModifiedChanged( bool ); | 62 | void slotModifiedChanged( bool ); |
63 | 63 | ||
64 | void save(); | 64 | void save(); |
65 | void configureToolBar( int ); | 65 | void configureToolBar( int ); |
66 | void printSel(); | 66 | void printSel(); |
67 | void printCal(); | 67 | void printCal(); |
68 | void saveCalendar(); | 68 | void saveCalendar(); |
69 | void loadCalendar(); | 69 | void loadCalendar(); |
70 | void exportVCalendar(); | 70 | void exportVCalendar(); |
71 | void fillFilterMenu(); | ||
72 | void selectFilter( int ); | ||
71 | 73 | ||
72 | void slotSyncMenu( int ); | 74 | void slotSyncMenu( int ); |
73 | void syncSSH(); | 75 | void syncSSH(); |
74 | void confSync(); | 76 | void confSync(); |
75 | void syncSharp(); | 77 | void syncSharp(); |
76 | void syncLocalFile(); | 78 | void syncLocalFile(); |
77 | bool syncWithFile( QString, bool ); | 79 | bool syncWithFile( QString, bool ); |
78 | void quickSyncLocalFile(); | 80 | void quickSyncLocalFile(); |
79 | 81 | ||
80 | 82 | ||
81 | protected: | 83 | protected: |
82 | void displayText( QString, QString); | 84 | void displayText( QString, QString); |
83 | void displayFile( QString, QString); | 85 | void displayFile( QString, QString); |
84 | 86 | ||
85 | void enableIncidenceActions( bool ); | 87 | void enableIncidenceActions( bool ); |
86 | 88 | ||
87 | private: | 89 | private: |
88 | void saveOnClose(); | 90 | void saveOnClose(); |
89 | int mCurrentSyncProfile; | 91 | int mCurrentSyncProfile; |
90 | void syncRemote( KSyncProfile* , bool ask = true); | 92 | void syncRemote( KSyncProfile* , bool ask = true); |
91 | void fillSyncMenu(); | 93 | void fillSyncMenu(); |
92 | bool mFlagKeyPressed; | 94 | bool mFlagKeyPressed; |
93 | bool mBlockAtStartup; | 95 | bool mBlockAtStartup; |
94 | QPEToolBar *iconToolBar; | 96 | QPEToolBar *iconToolBar; |
95 | void initActions(); | 97 | void initActions(); |
96 | void setDefaultPreferences(); | 98 | void setDefaultPreferences(); |
97 | void keyPressEvent ( QKeyEvent * ) ; | 99 | void keyPressEvent ( QKeyEvent * ) ; |
98 | void keyReleaseEvent ( QKeyEvent * ) ; | 100 | void keyReleaseEvent ( QKeyEvent * ) ; |
99 | QPopupMenu *configureToolBarMenu; | 101 | QPopupMenu *configureToolBarMenu; |
102 | QPopupMenu *selectFilterMenu; | ||
100 | QPopupMenu *configureAgendaMenu, *syncMenu; | 103 | QPopupMenu *configureAgendaMenu, *syncMenu; |
101 | CalendarLocal *mCalendar; | 104 | CalendarLocal *mCalendar; |
102 | CalendarView *mView; | 105 | CalendarView *mView; |
103 | QString getPassword(); | 106 | QString getPassword(); |
104 | QAction *mNewSubTodoAction; | 107 | QAction *mNewSubTodoAction; |
105 | 108 | ||
106 | QAction *mShowAction; | 109 | QAction *mShowAction; |
107 | QAction *mEditAction; | 110 | QAction *mEditAction; |
108 | QAction *mDeleteAction; | 111 | QAction *mDeleteAction; |
109 | void closeEvent( QCloseEvent* ce ); | 112 | void closeEvent( QCloseEvent* ce ); |
110 | SimpleAlarmClient mAlarmClient; | 113 | SimpleAlarmClient mAlarmClient; |
111 | QTimer mSaveTimer; | 114 | QTimer mSaveTimer; |
112 | bool mBlockSaveFlag; | 115 | bool mBlockSaveFlag; |
113 | bool mCalendarModifiedFlag; | 116 | bool mCalendarModifiedFlag; |
114 | QPixmap loadPixmap( QString ); | 117 | QPixmap loadPixmap( QString ); |
115 | }; | 118 | }; |
116 | 119 | ||
117 | #endif | 120 | #endif |