summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--korganizer/calendarview.cpp4
-rw-r--r--korganizer/koagendaview.cpp37
-rw-r--r--korganizer/koagendaview.h7
-rw-r--r--korganizer/kodialogmanager.cpp7
4 files changed, 51 insertions, 4 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index 06454c2..1d5a57e 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -2510,30 +2510,30 @@ void CalendarView::showEventEditor()
#else
if ( mEventEditor->width() < QApplication::desktop()->width() -60 || mEventEditor->width() > QApplication::desktop()->width() ) {
topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") );
qDebug("KO: CalendarView: recreate mEventEditor %d %d", mEventEditor->width(), QApplication::desktop()->width() );
delete mEventEditor;
mEventEditor = mDialogManager->getEventEditor();
+ topLevelWidget()->setCaption( i18n("") );
}
mEventEditor->showMaximized();
- topLevelWidget()->setCaption( i18n("") );
#endif
}
void CalendarView::showTodoEditor()
{
#ifdef DESKTOP_VERSION
mTodoEditor->show();
#else
if ( mTodoEditor->width() < QApplication::desktop()->width() -60|| mTodoEditor->width() > QApplication::desktop()->width() ) {
topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") );
qDebug("KO: CalendarView: recreate mTodoEditor %d %d ", mTodoEditor->width() ,QApplication::desktop()->width() );
delete mTodoEditor;
mTodoEditor = mDialogManager->getTodoEditor();
+ topLevelWidget()->setCaption( i18n("") );
}
mTodoEditor->showMaximized();
- topLevelWidget()->setCaption( i18n("") );
#endif
}
void CalendarView::cloneIncidence()
{
Incidence *incidence = currentSelection();
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp
index 6428757..b5596d9 100644
--- a/korganizer/koagendaview.cpp
+++ b/korganizer/koagendaview.cpp
@@ -199,12 +199,47 @@ void TimeLabels::positionChanged()
/** */
void TimeLabels::setAgenda(KOAgenda* agenda)
{
mAgenda = agenda;
}
+void TimeLabels::contentsMousePressEvent ( QMouseEvent * e)
+{
+ mMouseDownY = e->pos().y();
+}
+
+void TimeLabels::contentsMouseMoveEvent ( QMouseEvent * e )
+{
+ int diff = mMouseDownY - e->pos().y();
+ if ( diff < 10 && diff > -10 )
+ return;
+ int tSize = KOPrefs::instance()->mHourSize + (diff/10) ;
+ if ( tSize < 4 )
+ tSize = 4;
+ if ( tSize > 18 )
+ tSize = 18;
+ tSize = (tSize-2)/2;
+ topLevelWidget()->setCaption(i18n("New Agendasize: %1").arg(tSize));
+
+}
+void TimeLabels::contentsMouseReleaseEvent ( QMouseEvent * e )
+{
+ int diff = mMouseDownY - e->pos().y();
+ if ( diff < 10 && diff > -10 )
+ return;
+ int tSize = KOPrefs::instance()->mHourSize + (diff/10);
+ if ( tSize < 4 )
+ tSize = 4;
+ if ( tSize > 18 )
+ tSize = 18;
+ tSize = (tSize/2)*2;
+ if ( tSize == KOPrefs::instance()->mHourSize )
+ return;
+ KOPrefs::instance()->mHourSize = tSize;
+ emit scaleChanged();
+}
/** This is called in response to repaint() */
void TimeLabels::paintEvent(QPaintEvent*)
{
// kdDebug() << "paintevent..." << endl;
@@ -407,12 +442,14 @@ KOAgendaView::KOAgendaView(Calendar *cal,QWidget *parent,const char *name) :
QWidget *dummyAgendaRight = new QWidget(agendaFrame);
agendaLayout->addWidget(dummyAgendaRight,0,2);
// Create time labels
mTimeLabels = new TimeLabels(24,agendaFrame);
agendaLayout->addWidget(mTimeLabels,1,0);
+ connect(mTimeLabels,SIGNAL( scaleChanged()),
+ this,SLOT(updateConfig()));
// Create agenda
mAgenda = new KOAgenda(1,96,KOPrefs::instance()->mHourSize,agendaFrame);
agendaLayout->addMultiCellWidget(mAgenda,1,1,1,2);
agendaLayout->setColStretch(1,1);
mAgenda->setFocusPolicy(NoFocus);
diff --git a/korganizer/koagendaview.h b/korganizer/koagendaview.h
index 0079253..221b0ea 100644
--- a/korganizer/koagendaview.h
+++ b/korganizer/koagendaview.h
@@ -60,21 +60,26 @@ class TimeLabels : public QScrollView {
/** */
void setAgenda(KOAgenda* agenda);
/** */
virtual void paintEvent(QPaintEvent* e);
+ void contentsMousePressEvent ( QMouseEvent * ) ;
+ void contentsMouseReleaseEvent ( QMouseEvent * );
+ void contentsMouseMoveEvent ( QMouseEvent * );
public slots:
/** update time label positions */
void positionChanged();
-
+ signals:
+ void scaleChanged();
protected:
void drawContents(QPainter *p,int cx, int cy, int cw, int ch);
private:
+ int mMouseDownY;
int mRows;
int mCellHeight;
/** */
KOAgenda* mAgenda;
};
diff --git a/korganizer/kodialogmanager.cpp b/korganizer/kodialogmanager.cpp
index c99c0cb..41a4dc1 100644
--- a/korganizer/kodialogmanager.cpp
+++ b/korganizer/kodialogmanager.cpp
@@ -290,12 +290,15 @@ KOEventEditor *KODialogManager::getEventEditor()
// mCategoryEditDialog,SLOT(show()));
connect(eventEditor,SIGNAL(dialogClose(Incidence*)),
mMainView,SLOT(dialogClosing(Incidence*)));
//connect(mMainView,SIGNAL(closingDown()),eventEditor,SLOT(reject()));
+#ifndef DESKTOP_VERSION
+ eventEditor->resize( QApplication::desktop()->width() -20, 100 );
+#endif
return eventEditor;
}
KOTodoEditor *KODialogManager::getTodoEditor()
{
KOTodoEditor *todoEditor = new KOTodoEditor( mMainView->calendar(),
@@ -317,13 +320,15 @@ KOTodoEditor *KODialogManager::getTodoEditor()
mMainView->dateNavigator(), SLOT( selectWeek( const QDate & ) ) );
connect( todoEditor, SIGNAL( showAgendaView( bool)),
mMainView->viewManager(), SLOT( showAgendaView( bool) ) );
// connect(todoEditor,SIGNAL(deleteAttendee(Incidence *)),
// mMainView,SLOT(schedule_cancel(Incidence *)));
//connect(mMainView,SIGNAL(closingDown()),todoEditor,SLOT(reject()));
-
+#ifndef DESKTOP_VERSION
+ todoEditor->resize( QApplication::desktop()->width() -20, 100 );
+#endif
return todoEditor;
}
void KODialogManager::updateSearchDialog()
{
if (mSearchDialog) mSearchDialog->updateView();