summaryrefslogtreecommitdiffabout
path: root/korganizer/komonthview.cpp
Side-by-side diff
Diffstat (limited to 'korganizer/komonthview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/komonthview.cpp52
1 files changed, 42 insertions, 10 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index dfa89e2..df5e060 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -100,23 +100,23 @@ void KNoScrollListBox::keyPressEvent(QKeyEvent *e)
switch(e->key()) {
case Key_Right:
- // if ( e->state() == Qt::ControlButton )
+ if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton )
{
e->ignore();
return;
}
- scrollBy(4,0);
+ scrollBy(10,0);
break;
case Key_Left:
- // if ( e->state() == Qt::ControlButton )
+ if (e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton )
{
e->ignore();
return;
}
- scrollBy(-4,0);
+ scrollBy(-10,0);
break;
case Key_Up:
- if(count() < 2) {
+ if( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton) {
e->ignore();
break;
}
@@ -130,7 +130,7 @@ void KNoScrollListBox::keyPressEvent(QKeyEvent *e)
}
break;
case Key_Down:
- if(count() < 2) {
+ if(e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton) {
e->ignore();
break;
}
@@ -143,6 +143,10 @@ void KNoScrollListBox::keyPressEvent(QKeyEvent *e)
}
}
break;
+ case Key_I:
+ QTimer::singleShot( 11, this, SLOT ( oneDown() ) );
+ e->ignore();
+ break;
case Key_Shift:
emit shiftDown();
break;
@@ -152,6 +156,17 @@ void KNoScrollListBox::keyPressEvent(QKeyEvent *e)
}
}
+void KNoScrollListBox::oneDown()
+{
+ setCurrentItem((currentItem()+1)%count());
+ if(!itemVisible(currentItem())) {
+ if(currentItem() == 0) {
+ setTopItem(0);
+ } else {
+ setTopItem(topItem()+1);
+ }
+ }
+}
void KNoScrollListBox::keyReleaseEvent(QKeyEvent *e)
{
switch(e->key()) {
@@ -282,6 +297,7 @@ MonthViewCell::MonthViewCell( KOMonthView *parent,QWidget* par )
//mLabel->setLineWidth( 1 );
//mLabel->setAlignment( AlignCenter );
mLabel->setFlat( true );
+ mLabel->setFocusPolicy(NoFocus);
mItemList = new KNoScrollListBox( this );
mItemList->setMinimumSize( 10, 10 );
mItemList->setFrameStyle( QFrame::Panel | QFrame::Plain );
@@ -401,8 +417,10 @@ void MonthViewCell::clear()
void MonthViewCell::startUpdateCell()
{
+ mItemList->setFocusPolicy(NoFocus);
if ( !mMonthView->isUpdatePossible() )
return;
+
/*
if ( !isVisible() ){
return;
@@ -433,6 +451,8 @@ void MonthViewCell::startUpdateCell()
void MonthViewCell::insertEvent(Event *event)
{
+
+ mItemList->setFocusPolicy(WheelFocus);
if ( !(event->doesRecur() == Recurrence::rNone) ) {
if ( !KOPrefs::instance()->mMonthDailyRecur && event->doesRecur() == Recurrence::rDaily )
return;
@@ -538,7 +558,7 @@ void MonthViewCell::insertTodo(Todo *todo)
text += " ";
}
}
- text += i18n("To-Do: %1").arg(todo->summary());
+ text += i18n("Td: %1").arg(todo->summary());
MonthViewItem *item = new MonthViewItem( todo, mDate, text );
//item->setPalette( mStandardPalette );
@@ -826,6 +846,7 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name)
mWeekLabelsW.resize( 2 );
for( i = 0; i < mNumWeeks+1; i++ ) {
KOWeekButton *label = new KOWeekButton( mMonthView );
+ label->setFocusPolicy(NoFocus);
label->setFont(bfont);
connect( label, SIGNAL( selectWeekNum ( int )),this, SLOT( selectInternalWeekNum ( int )) );
label->setFlat(true);
@@ -840,6 +861,7 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name)
for( i = 0; i < 1+1; i++ ) {
KOWeekButton *label = new KOWeekButton( mWeekView );
+ label->setFocusPolicy(NoFocus);
label->setFont(bfont);
connect( label, SIGNAL( selectWeekNum ( int )),this, SLOT( selectInternalWeekNum ( int )) );
label->setFlat(true);
@@ -903,16 +925,19 @@ KOMonthView::~KOMonthView()
{
delete mContextMenu;
}
-void KOMonthView::selectDateWeekNum ( int )
-{
-}
void KOMonthView::selectInternalWeekNum ( int n )
{
switchView();
emit selectWeekNum ( n );
}
+int KOMonthView::currentWeek()
+{
+ if ( mShowWeekView )
+ return mWeekLabelsW[0]->getWeekNum();
+ return mWeekLabels[0]->getWeekNum();
+}
void KOMonthView::switchView()
{
@@ -1539,6 +1564,13 @@ void KOMonthView::keyPressEvent ( QKeyEvent * e )
}
e->accept();
break;
+ case Key_Return:
+ case Key_Enter:
+ {
+ selectInternalWeekNum ( currentWeek() );
+ }
+ e->accept();
+ break;
default:
e->ignore();
break;