-rw-r--r-- | korganizer/calendarview.cpp | 11 | ||||
-rw-r--r-- | korganizer/calendarview.h | 1 | ||||
-rw-r--r-- | korganizer/kolistview.cpp | 3 | ||||
-rw-r--r-- | korganizer/kotodoview.cpp | 4 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 167 | ||||
-rw-r--r-- | korganizer/mainwindow.h | 1 |
6 files changed, 112 insertions, 75 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index d0de233..c0f3be7 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -113,12 +113,13 @@ #include "kotodoview.h" #include "datenavigator.h" #include "resourceview.h" #include "navigatorbar.h" #include "searchdialog.h" #include "mainwindow.h" +#include "categoryeditdialog.h" #include "calendarview.h" #ifndef DESKTOP_VERSION #include <qtopia/alarmserver.h> #endif #ifndef _WIN32_ @@ -310,21 +311,21 @@ class KOCatPrefs : public QDialog QDialog( parent, name, true ) { setCaption( i18n("Manage new Categories") ); QVBoxLayout* lay = new QVBoxLayout( this ); lay->setSpacing( 3 ); lay->setMargin( 3 ); - QLabel * lab = new QLabel( i18n("After importing/loading/syncing\nthere may be new categories in\nevents or todos\nwhich are not in the category list.\nPlease choose what to do:\n "), this ); + QLabel * lab = new QLabel( i18n("After importing/loading/syncing there may be new categories in events or todos which are not added automatically to the category list. Please choose what to do <b>now</b>:"), this ); lay->addWidget( lab ); QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("New categories not in list:"), this ); lay->addWidget( format ); format->setExclusive ( true ) ; addCatBut = new QRadioButton(i18n("Add to category list"), format ); new QRadioButton(i18n("Remove from Events/Todos"), format ); addCatBut->setChecked( true ); - QPushButton * ok = new QPushButton( i18n("OK"), this ); + QPushButton * ok = new QPushButton( i18n("Change category list now!"), this ); lay->addWidget( ok ); QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); lay->addWidget( cancel ); connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); resize( 200, 200 ); @@ -2815,12 +2816,18 @@ int CalendarView::addCategories() } catList.sort(); KOPrefs::instance()->mCustomCategories = catList; return count; } +void CalendarView::editCategories() +{ + qDebug("CalendarView::editCategories() "); + KPIM::CategoryEditDialog ced (KOPrefs::instance(),this ); + ced.exec(); +} void CalendarView::manageCategories() { KOCatPrefs* cp = new KOCatPrefs(); cp->show(); int w =cp->sizeHint().width() ; int h = cp->sizeHint().height() ; diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index f7e5366..3323a98 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h @@ -482,12 +482,13 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser void moveIncidence(Incidence *) ; void beamIncidence(Incidence *) ; void beamCalendar() ; void beamFilteredCalendar() ; void beamIncidenceList(QPtrList<Incidence>) ; void manageCategories(); + void editCategories(); int addCategories(); void removeCategories(); void setSyncDevice( QString ); void setSyncName( QString ); void showDay( QDate ); void undo_delete(); diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp index 43e1113..517677c 100644 --- a/korganizer/kolistview.cpp +++ b/korganizer/kolistview.cpp @@ -435,13 +435,14 @@ void KOListView::setCalendar( int c ) } void KOListView::populateCalPopup() { mCalPopup->clear(); KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); while ( kkf ) { - mCalPopup->insertItem( kkf->mName, kkf->mCalNumber); + int index = mCalPopup->insertItem( kkf->mName, kkf->mCalNumber); + mCalPopup->setItemEnabled( index, !kkf->isReadOnly ); kkf = KOPrefs::instance()->mCalendars.next(); } } void KOListView::updateList() { // qDebug(" KOListView::updateList() "); diff --git a/korganizer/kotodoview.cpp b/korganizer/kotodoview.cpp index 873a776..8d354c8 100644 --- a/korganizer/kotodoview.cpp +++ b/korganizer/kotodoview.cpp @@ -598,26 +598,26 @@ KOTodoView::KOTodoView(Calendar *calendar,QWidget* parent,const char* name) : mItemPopupMenu->insertItem(i18n("Unparent Todo"), this, SLOT (unparentTodo()),0,21); mItemPopupMenu->insertItem(i18n("Reparent Todo"), this, SLOT (reparentTodo()),0,22); mItemPopupMenu->insertSeparator(); #if 0 - mItemPopupMenu->insertItem(i18n("Delete completed To-Dos","Purge Completed"), + mItemPopupMenu->insertItem(i18n("Delete completed To-Dos","Purge Completed..."), this, SLOT( purgeCompleted() ) ); mItemPopupMenu->insertItem(i18n("toggle completed To-Dos","Show Completed"), this, SLOT( toggleCompleted() ),0, 33 ); mItemPopupMenu->insertItem(i18n("toggle quick todo","Show Quick Todo"), this, SLOT( toggleQuickTodo() ),0, 34 ); mItemPopupMenu->insertItem(i18n("toggle running todo","Hide not Running"), this, SLOT( toggleRunning() ),0, 35 ); #endif mPopupMenu = new QPopupMenu(this); mPopupMenu->insertItem(SmallIconSet("todo"), i18n("New Todo..."), this, SLOT (newTodo()),0,1); - mPopupMenu->insertItem(i18n("delete completed To-Dos","Purge Completed"), + mPopupMenu->insertItem(i18n("delete completed To-Dos","Purge Completed..."), this, SLOT(purgeCompleted()),0,2); mPopupMenu->insertItem(i18n("Show Completed"), this, SLOT( toggleCompleted() ),0,3 ); mPopupMenu->insertItem(i18n("toggle running todo","Hide not Running"), this, SLOT( toggleRunning() ),0,5 ); mPopupMenu->insertItem(i18n(" set all open","Display all opened"), diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 23537a6..a5d8824 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp @@ -651,12 +651,17 @@ void MainWindow::initActions() iconToolBar->clear(); KOPrefs *p = KOPrefs::instance(); //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar ); QPopupMenu *viewMenu = new QPopupMenu( this ); QPopupMenu *actionMenu = new QPopupMenu( this ); +#ifdef DESKTOP_VERSION + mCurrentItemMenu = actionMenu; +#else + mCurrentItemMenu = new QPopupMenu ( this ); +#endif QPopupMenu *importMenu = new QPopupMenu( this ); QPopupMenu *importMenu_X = new QPopupMenu( this ); QPopupMenu *exportMenu_X = new QPopupMenu( this ); QPopupMenu *beamMenu_X = new QPopupMenu( this ); selectFilterMenu = new QPopupMenu( this ); selectFilterMenu->setCheckable( true ); @@ -762,56 +767,100 @@ void MainWindow::initActions() configureAgendaMenu->insertItem(i18n("Size %1").arg(iii), (iii+1)*2 ); } //configureMenu->insertItem( "AgendaSize",configureAgendaMenu ); connect( configureAgendaMenu, SIGNAL( aboutToShow()), this, SLOT( showConfigureAgenda( ) ) ); + icon = loadPixmap( pathString + "today" ); + QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this ); + today_action->addTo( actionMenu ); + connect( today_action, SIGNAL( activated() ), + mView, SLOT( goToday() ) ); + + icon = loadPixmap( pathString + "picker" ); + QAction* dPickerAction = new QAction( i18n("Select Date..."), icon, i18n("Select Date..."), 0, this ); + dPickerAction->addTo( actionMenu ); + connect( dPickerAction, SIGNAL( activated() ), + mView, SLOT( showDatePicker() ) ); + + icon = loadPixmap( pathString + "search" ); + QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); + search_action->addTo( actionMenu ); + connect( search_action, SIGNAL( activated() ), + mView->dialogManager(), SLOT( showSearchDialog() ) ); - icon = loadPixmap( pathString + "configure" ); - action = new QAction( i18n("Configure"),icon, i18n("Configure KO/Pi..."), 0, this ); - action->addTo( actionMenu ); - connect( action, SIGNAL( activated() ), - mView, SLOT( edit_options() ) ); - icon = loadPixmap( pathString + "configure" ); - action = new QAction( i18n("Configure"),icon, i18n("Global Settings..."), 0, this ); - action->addTo( actionMenu ); - connect( action, SIGNAL( activated() ), - mView, SLOT( edit_global_options() ) ); actionMenu->insertSeparator(); + + action = new QAction( i18n("Undo Delete"), i18n("Undo Delete..."), 0, this ); action->addTo( actionMenu ); connect( action, SIGNAL( activated() ), mView, SLOT( undo_delete() ) ); - actionMenu->insertSeparator(); icon = loadPixmap( pathString + "newevent" ); configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 ); configureToolBarMenu->insertItem(i18n("Only one toolbar"), 6 ); configureToolBarMenu->insertSeparator(); configureToolBarMenu->insertItem(i18n("Filtermenu"), 7 ); configureToolBarMenu->insertSeparator(); configureToolBarMenu->insertItem(i18n("Week Number"), 400); configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 ); + +#ifndef DESKTOP_VERSION + actionMenu->insertItem ( i18n("Selected Item"), mCurrentItemMenu); +#endif + mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); + mShowAction->addTo( mCurrentItemMenu ); + connect( mShowAction, SIGNAL( activated() ), + mView, SLOT( showIncidence() ) ); + + mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); + mEditAction->addTo( mCurrentItemMenu ); + connect( mEditAction, SIGNAL( activated() ), + mView, SLOT( editIncidence() ) ); + + mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); + mDeleteAction->addTo( mCurrentItemMenu ); + connect( mDeleteAction, SIGNAL( activated() ), + mView, SLOT( deleteIncidence() ) ); + + + mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); + mCloneAction->addTo( mCurrentItemMenu ); + connect( mCloneAction, SIGNAL( activated() ), + mView, SLOT( cloneIncidence() ) ); + mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); + mMoveAction->addTo( mCurrentItemMenu ); + connect( mMoveAction, SIGNAL( activated() ), + mView, SLOT( moveIncidence() ) ); + mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); + mBeamAction->addTo(mCurrentItemMenu ); + connect( mBeamAction, SIGNAL( activated() ), + mView, SLOT( beamIncidence() ) ); + mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); + mCancelAction->addTo( mCurrentItemMenu ); + connect( mCancelAction, SIGNAL( activated() ), + mView, SLOT( toggleCancelIncidence() ) ); +#ifdef DESKTOP_VERSION + actionMenu->insertSeparator(); +#endif + + QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this ); ne_action->addTo( actionMenu ); connect( ne_action, SIGNAL( activated() ), mView, SLOT( newEvent() ) ); icon = loadPixmap( pathString + "newtodo" ); configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); nt_action->addTo( actionMenu ); connect( nt_action, SIGNAL( activated() ), mView, SLOT( newTodo() ) ); - icon = loadPixmap( pathString + "today" ); - QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this ); - today_action->addTo( viewMenu ); - connect( today_action, SIGNAL( activated() ), - mView, SLOT( goToday() ) ); - viewMenu->insertSeparator(); + // *********************** if ( KOPrefs::instance()->mVerticalScreen ) { icon = SmallIcon( "1updownarrow" ); } else { icon = SmallIcon("1leftrightarrow" ); @@ -852,19 +901,14 @@ void MainWindow::initActions() // mToggleFilter, SLOT( setEnabled ( bool ) ) ); connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), mToggleAllday, SLOT( setEnabled ( bool ) ) ); // connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), // configureAgendaMenu, SLOT( setEnabled ( bool ) ) ); - viewMenu->insertSeparator(); - icon = loadPixmap( pathString + "picker" ); - action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this ); - action->addTo( viewMenu ); - connect( action, SIGNAL( activated() ), - mView, SLOT( showDatePicker() ) ); - action->addTo( iconToolBar ); + + dPickerAction->addTo( iconToolBar ); viewMenu->insertSeparator(); if ( p-> mShowIconToggleFull ) FSaction->addTo( iconToolBar ); if ( p->mShowIconNavigator ) mToggleNav ->addTo( iconToolBar ); @@ -957,65 +1001,46 @@ void MainWindow::initActions() mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, this ); mNewSubTodoAction->addTo( actionMenu ); connect( mNewSubTodoAction, SIGNAL( activated() ), mView, SLOT( newSubTodo() ) ); - actionMenu->insertSeparator(); - - mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); - mShowAction->addTo( actionMenu ); - connect( mShowAction, SIGNAL( activated() ), - mView, SLOT( showIncidence() ) ); + action = new QAction( "purge_completed", i18n("Purge Completed..."), 0, + this ); + action->addTo( actionMenu ); + connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); - mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); - mEditAction->addTo( actionMenu ); - connect( mEditAction, SIGNAL( activated() ), - mView, SLOT( editIncidence() ) ); - mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); - mDeleteAction->addTo( actionMenu ); - connect( mDeleteAction, SIGNAL( activated() ), - mView, SLOT( deleteIncidence() ) ); + configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5); - mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); - mCloneAction->addTo( actionMenu ); - connect( mCloneAction, SIGNAL( activated() ), - mView, SLOT( cloneIncidence() ) ); - mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); - mMoveAction->addTo( actionMenu ); - connect( mMoveAction, SIGNAL( activated() ), - mView, SLOT( moveIncidence() ) ); - mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); - mBeamAction->addTo( actionMenu ); - connect( mBeamAction, SIGNAL( activated() ), - mView, SLOT( beamIncidence() ) ); - mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); - mCancelAction->addTo( actionMenu ); - connect( mCancelAction, SIGNAL( activated() ), - mView, SLOT( toggleCancelIncidence() ) ); actionMenu->insertSeparator(); - - action = new QAction( "purge_completed", i18n("Purge Completed"), 0, + action = new QAction( "manage cat", i18n("Edit category list..."), 0, this ); action->addTo( actionMenu ); - connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); - - icon = loadPixmap( pathString + "search" ); - QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); - configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5); - search_action->addTo( actionMenu ); - connect( search_action, SIGNAL( activated() ), - mView->dialogManager(), SLOT( showSearchDialog() ) ); + connect( action, SIGNAL( activated() ), mView, SLOT( editCategories() ) ); + action = new QAction( "manage cat", i18n("Manage new categories..."), 0, + this ); + action->addTo( actionMenu ); + connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); - if ( KOPrefs::instance()->mShowFullMenu ) { actionMenu->insertSeparator(); + icon = loadPixmap( pathString + "configure" ); + action = new QAction( i18n("Configure"),icon, i18n("Configure KO/Pi..."), 0, this ); + action->addTo( actionMenu ); + connect( action, SIGNAL( activated() ), + mView, SLOT( edit_options() ) ); + icon = loadPixmap( pathString + "configure" ); + action = new QAction( i18n("Configure"),icon, i18n("Global Settings..."), 0, this ); + action->addTo( actionMenu ); + connect( action, SIGNAL( activated() ), + mView, SLOT( edit_global_options() ) ); + if ( KOPrefs::instance()->mShowFullMenu ) { actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); } // actionMenu->insertSeparator(); action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, this ); @@ -1121,17 +1146,13 @@ void MainWindow::initActions() action->addTo( beamMenu_X ); connect( action, SIGNAL( activated() ), mView, SLOT( slotprintSelInc() ) ); importMenu->insertItem( i18n("Print"), beamMenu_X ); #endif - importMenu->insertSeparator(); - action = new QAction( "manage cat", i18n("Manage new categories..."), 0, - this ); - action->addTo( importMenu ); - connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); + importMenu->insertSeparator(); action = new QAction( "beam all", i18n("Save"), 0, this ); action->addTo( importMenu ); connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); action = new QAction( "beam all", i18n("Exit (+save)"), 0, @@ -1711,20 +1732,25 @@ void MainWindow::processIncidenceSelection( Incidence *incidence ) mNewSubTodoAction->setEnabled( false ); } } void MainWindow::enableIncidenceActions( bool enabled ) { + +#ifndef DESKTOP_VERSION + mCurrentItemMenu->setEnabled( enabled ); +#else mShowAction->setEnabled( enabled ); mEditAction->setEnabled( enabled ); mDeleteAction->setEnabled( enabled ); mCloneAction->setEnabled( enabled ); mMoveAction->setEnabled( enabled ); mBeamAction->setEnabled( enabled ); mCancelAction->setEnabled( enabled ); +#endif } void MainWindow::importOL() { #ifdef _OL_IMPORT_ mView->clearAllViews(); @@ -2271,12 +2297,13 @@ void MainWindow::configureToolBar( int item ) p-> mShowIconNextDays= configureToolBarMenu->isItemChecked( 100 ); p-> mShowIconNext= configureToolBarMenu->isItemChecked( 110 ); p-> mShowIconJournal= configureToolBarMenu->isItemChecked( 90 ); p-> mShowIconWhatsThis= configureToolBarMenu->isItemChecked( 300 ); p-> mShowIconWeekNum= configureToolBarMenu->isItemChecked( 400 ); // initActions(); + setCaption ( i18n("Toolbar changes needs a restart!") ); } void MainWindow::setCaption ( const QString & c ) { QString cap = c; cap.replace( QRegExp("\n"), " " ); cap = cap.stripWhiteSpace(); diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index a4d0523..953774f 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h @@ -126,12 +126,13 @@ class MainWindow : public QMainWindow QPEToolBar *iconToolBar; QPEToolBar *viewToolBar; QPEToolBar *navigatorToolBar; QPEToolBar *filterToolBar; QMenuBar *filterMenubar; QPopupMenu * filterPopupMenu; + QPopupMenu * mCurrentItemMenu; void initActions(); void setDefaultPreferences(); void resizeEvent( QResizeEvent* e); void keyPressEvent ( QKeyEvent * ) ; void keyReleaseEvent ( QKeyEvent * ) ; QPopupMenu *configureToolBarMenu; |