summaryrefslogtreecommitdiff
path: root/core/pim/datebook/datebook.cpp
authoreilers <eilers>2003-08-01 14:19:44 (UTC)
committer eilers <eilers>2003-08-01 14:19:44 (UTC)
commit34991bac7d96b1c17601be6a5607819342571e0c (patch) (side-by-side diff)
tree65d0bc2db22bcc1dc1b5eafdafd53b9cb08a6395 /core/pim/datebook/datebook.cpp
parent5346424fc26bde232a15aa34fbb720f86218b26f (diff)
downloadopie-34991bac7d96b1c17601be6a5607819342571e0c.zip
opie-34991bac7d96b1c17601be6a5607819342571e0c.tar.gz
opie-34991bac7d96b1c17601be6a5607819342571e0c.tar.bz2
Merging changes from BRANCH_1_0 to HEAD..
Diffstat (limited to 'core/pim/datebook/datebook.cpp') (more/less context) (show whitespace changes)
-rw-r--r--core/pim/datebook/datebook.cpp46
1 files changed, 38 insertions, 8 deletions
diff --git a/core/pim/datebook/datebook.cpp b/core/pim/datebook/datebook.cpp
index b7e89b0..10a9b59 100644
--- a/core/pim/datebook/datebook.cpp
+++ b/core/pim/datebook/datebook.cpp
@@ -225,12 +225,16 @@ void DateBook::receive( const QCString &msg, const QByteArray &data )
}
else if (msg == "editEvent(int)") {
int uid;
stream >> uid;
Event e=db->eventByUID(uid);
editEvent(e);
+ }else if (msg == "viewDefault(QDate)"){
+ QDate day;
+ stream >> day;
+ viewDefault(day);
}
}
DateBook::~DateBook()
{
}
@@ -433,15 +437,25 @@ void DateBook::duplicateEvent( const Event &e )
editDlg.showMaximized();
#endif
while (editDlg.exec() ) {
Event newEv = entry->event();
QString error = checkEvent(newEv);
if (!error.isNull()) {
- if (QMessageBox::warning(this, "error box", error, "Fix it", "Continue", 0, 0, 1) == 0)
+ if (QMessageBox::warning(this, tr("error box"), error, tr("Fix it"), tr("Continue"), 0, 0, 1) == 0)
continue;
}
+ /*
+ * The problem:
+ * DateBookDB does remove repeating events not by uid but by the time
+ * the recurrence was created
+ * so we need to update that time as well
+ */
+ Event::RepeatPattern rp = newEv.repeatPattern();
+ rp.createTime = ::time( NULL );
+ newEv.setRepeat( TRUE, rp ); // has repeat and repeatPattern...
+
db->addEvent(newEv);
emit newEvent();
break;
}
}
@@ -473,13 +487,13 @@ void DateBook::editEvent( const Event &e )
Event newEv = entry->event();
if(newEv.description().isEmpty() && newEv.notes().isEmpty() )
break;
newEv.setUid(e.uid()); // FIXME: Hack not to clear uid
QString error = checkEvent(newEv);
if (!error.isNull()) {
- if (QMessageBox::warning(this, "error box", error, "Fix it", "Continue", 0, 0, 1) == 0) continue;
+ if (QMessageBox::warning(this, tr("error box"), error, tr("Fix it"), tr("Continue"), 0, 0, 1) == 0) continue;
}
db->editEvent(e, newEv);
emit newEvent();
break;
}
}
@@ -516,14 +530,14 @@ void DateBook::showDay( int year, int month, int day )
void DateBook::initDay()
{
if ( !dayView ) {
dayView = new DateBookDay( ampm, onMonday, db, views, "day view" );
views->addWidget( dayView, DAY );
- dayView->setStartViewTime( startTime );
dayView->setJumpToCurTime( bJumpToCurTime );
+ dayView->setStartViewTime( startTime );
dayView->setRowStyle( rowStyle );
connect( this, SIGNAL( newEvent() ), dayView, SLOT( redraw() ) );
connect( dayView, SIGNAL( newEvent() ), this, SLOT( fileNew() ) );
connect( dayView, SIGNAL( removeEvent( const Event & ) ), this, SLOT( removeEvent( const Event & ) ) );
connect( dayView, SIGNAL( editEvent( const Event & ) ), this, SLOT( editEvent( const Event & ) ) );
connect( dayView, SIGNAL( duplicateEvent( const Event & ) ), this, SLOT( duplicateEvent( const Event & ) ) );
@@ -694,12 +708,13 @@ void DateBook::appMessage(const QCString& msg, const QByteArray& data)
if ( bSound )
killTimer( stopTimer );
}
}
} else if ( msg == "nextView()" ) {
+ needShow = true;
if ( !qApp-> activeWindow ( )) {
needShow = TRUE;
} else {
QWidget* cur = views->visibleWidget();
if ( cur ) {
if ( cur == dayView )
@@ -710,22 +725,37 @@ void DateBook::appMessage(const QCString& msg, const QByteArray& data)
viewMonth();
else if ( cur == monthView )
viewDay();
needShow = TRUE;
}
}
+ } else if (msg == "editEvent(int)") {
+ /* simple copy from receive */
+ QDataStream stream(data,IO_ReadOnly);
+ int uid;
+ stream >> uid;
+ Event e=db->eventByUID(uid);
+ editEvent(e);
+ } else if (msg == "viewDefault(QDate)"){
+ /* simple copy from receive */
+ QDataStream stream(data,IO_ReadOnly);
+ QDate day;
+ stream >> day;
+ viewDefault(day);
+ needShow = true;
}
+
if ( needShow ) {
#if defined(Q_WS_QWS) || defined(_WS_QWS_)
- showMaximized();
+// showMaximized();
#else
- show();
+// show();
#endif
- raise();
+// raise();
QPEApplication::setKeepRunning();
- setActiveWindow();
+// setActiveWindow();
}
}
void DateBook::reload()
{
db->reload();
@@ -914,13 +944,13 @@ void DateBook::beamDone( Ir *ir )
}
void DateBook::slotFind()
{
// move it to the day view...
viewDay();
- FindDialog frmFind( "Calendar", this );
+ FindDialog frmFind( "Calendar", this ); // no tr needed
frmFind.setUseDate( true );
frmFind.setDate( currentDate() );
QObject::connect( &frmFind,
SIGNAL(signalFindClicked(const QString&, const QDate&,
bool, bool, int)),
this,