summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp35
-rw-r--r--korganizer/calendarview.h4
-rw-r--r--korganizer/mainwindow.cpp25
-rw-r--r--korganizer/mainwindow.h6
4 files changed, 69 insertions, 1 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index b1da144..38b55f7 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -2399,6 +2399,41 @@ void CalendarView::showTodoEditor()
mTodoEditor->showMaximized();
#endif
}
+
+void CalendarView::cloneIncidence()
+{
+ Incidence *incidence = currentSelection();
+ if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
+ if ( incidence ) {
+ cloneIncidence(incidence);
+ }
+}
+void CalendarView::moveIncidence()
+{
+ Incidence *incidence = currentSelection();
+ if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
+ if ( incidence ) {
+ moveIncidence(incidence);
+ }
+}
+void CalendarView::beamIncidence()
+{
+ Incidence *incidence = currentSelection();
+ if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
+ if ( incidence ) {
+ beamIncidence(incidence);
+ }
+}
+void CalendarView::toggleCancelIncidence()
+{
+ Incidence *incidence = currentSelection();
+ if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
+ if ( incidence ) {
+ cancelIncidence(incidence);
+ }
+}
+
+
void CalendarView::cancelIncidence(Incidence * inc )
{
inc->setCancelled( ! inc->cancelled() );
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h
index cd54685..a713c91 100644
--- a/korganizer/calendarview.h
+++ b/korganizer/calendarview.h
@@ -211,6 +211,10 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser
void editIncidence();
void editIncidenceDescription();
void deleteIncidence();
+ void cloneIncidence();
+ void moveIncidence();
+ void beamIncidence();
+ void toggleCancelIncidence();
/** create an editeventwin with supplied date/time, and if bool is true,
* make the event take all day. */
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index 6a9a2f1..bd14fbf 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -637,6 +637,24 @@ void MainWindow::initActions()
connect( mDeleteAction, SIGNAL( activated() ),
mView, SLOT( deleteIncidence() ) );
+
+ 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,
@@ -1186,7 +1204,7 @@ void MainWindow::exportToPhone( int mode )
QDateTime cur = QDateTime::currentDateTime().addDays( -7 );
QDateTime end = cur.addDays( ( inFuture +1 ) *7 );
while ( incidence ) {
- if ( incidence->type() != "journal" ) {
+ if ( incidence->type() != "Journal" ) {
bool add = true;
if ( inFuture ) {
QDateTime dt;
@@ -1498,6 +1516,11 @@ void MainWindow::enableIncidenceActions( bool enabled )
mShowAction->setEnabled( enabled );
mEditAction->setEnabled( enabled );
mDeleteAction->setEnabled( enabled );
+
+ mCloneAction->setEnabled( enabled );
+ mMoveAction->setEnabled( enabled );
+ mBeamAction->setEnabled( enabled );
+ mCancelAction->setEnabled( enabled );
}
void MainWindow::importOL()
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h
index 74c7f45..4f89e03 100644
--- a/korganizer/mainwindow.h
+++ b/korganizer/mainwindow.h
@@ -197,6 +197,12 @@ class MainWindow : public QMainWindow
QAction *mShowAction;
QAction *mEditAction;
QAction *mDeleteAction;
+ QAction *mCloneAction;
+ QAction *mMoveAction;
+ QAction *mBeamAction;
+ QAction *mCancelAction;
+
+
void closeEvent( QCloseEvent* ce );
SimpleAlarmClient mAlarmClient;
QTimer mSaveTimer;