-rw-r--r-- | bin/kdepim/korganizer/featuresKOPI.txt | 39 | ||||
-rw-r--r-- | korganizer/komonthview.cpp | 11 |
2 files changed, 41 insertions, 9 deletions
diff --git a/bin/kdepim/korganizer/featuresKOPI.txt b/bin/kdepim/korganizer/featuresKOPI.txt index ab6b224..052680e 100644 --- a/bin/kdepim/korganizer/featuresKOPI.txt +++ b/bin/kdepim/korganizer/featuresKOPI.txt @@ -122,90 +122,123 @@ This alarm applet will make the Zaurus wake up, if the device is in suspend mode On the desktop (e.g. Windows) you can enable in KO/Pi the internal alarm notification, such that you are informed about an alarm, if the program is running. 12) What'sThis Help: To use the What'sThis Help, you have to enable the What'sThis icon in the toolbar. (Choose menu: ME-Toolbar or Action-Configure Toolbar ). (You have to restart to reload the changed toolbar config). Now click on the QWhat'sThis Icon in the top right corner of KO/Pi. Then click now after that on an item in the Agenda View or in the month view you will get a detailed display of the items content. ****************************************************** B) Useful features, that are not straighforward to see ****************************************************** 1) Right mouse click on Zaurus 2) Moving of items in the agenda view 3) Creating exceptions for recurring events 4) Accessing the week in agenda view from the Month view 5) Navigation in month view 6) Navigation in agenda view +7) Monthview as week view +8) Switching display mode in date edit 1) Right mouse click on Zaurus: In KO/Pi on the desktop a right mouse click will popup an menu on some items. On the Zaurus there can only the stylus be used. To simulte a right mouse click with the stylus press is and hold it down for 1-2 seconds. If you release it then, a menu pops up, if there is a menu available for this particular item. On some places the menu pops up without releasing the stylus. That bevaviour is not a bug, it is caused by the the behaviour of the single left click on the item. + 2) Moving of items in the agenda view: -In the aganda view you can move an item by clicking on it and holding +In the agenda view you can move an item by clicking on it and holding the mouse down. You have to move the mouse some distance before the items actually starts to move. That is not abug, that is a feature to prevent you to make unwanted moves of the item when you click on it(and moving the mouse only a small distance with this click) + 3) Creating exceptions for recurring events: To create an exception for a recurring event, move this event in the agenda view. This recurrence is automatically added to the list of recurrence exceptions and a non-recurring clone is created. -To cancel a recurrence, create an exception by moving it +To cancel a single recurrence, create an exception by moving it and then move it back and cancel it. + 4) Accessing the week in agenda view from the month view: In the month view there are on the left week numbers displayed. Click on a week number to see this week in the agenda view. + 5) Navigation in month view: If you select the month view with the icon in the toolbar, the selected data range in the date navigator is set automatically to the complete month. (Click on month view and then the space bar to see the selected data range in the date navigator). If you select in the data navigator (automatically by clicking on the month view or manually) a date range from the first of the month to the 28.-31. of the month (the 28.-31. is valid for every month!) then the (month-)navigation keys will select automatically the complete next month as date range. + 6) Navigation in agenda view: If you select (as an example) 4 days in the date navigator the (week-) navigation key will select the same 4 days in the next week. If you want to get the next 4 days after the selected 4 days selected, you have to switch the navigation mode to "next days mode" by clicking on the next days icons. Now the next days from today are selected, but after selecting 4 days in the day navigator the (week-) navigation key will select the next 4 days. The "next days mode" is turned off by clicking on the week view, work week view or day view button. The agenda view has "time labels" on the left, which displays the hours from 0-24. If you press the mouse on the timelabels and move it up/down you can -increase/decrease the agenda size quickly. +increase/decrease the agenda size quickly. + In the agenda view you can click on the day labels (e.g. Mon 14) +to see the selected date in single day mode. +If you click in single day mode the day label you will switch back to +the previously selected date range. +Right of the day labels is a ">" button. +If you click this button, you will go one day ahead. +Left of the day labels is the month name displayed. +If you click this button, the month view is shown. + +7) +Monthview as week view: +On the left side of the monthview are the week number labels displayed. +On top of these labels is a "W" displayed. +If you click on this button the month view mode will switch to week view mode. +To switch back, please click the button, which now displays a "M". + +8) +Switching display mode in date edit: +On several places is a date edit used. +You can scroll the dates by selecting the part of the date (month, day, year) +in the lineedit and pressing the key up/key down key. +The display mode of a date edit is initially short date mode. +(I.e. weekday names are not displayed) +If you doubleclick in the lineedit the mode switches to long date mode. +Now the weekday names are displayed for better overview. +To switch back simply doubleclick again in the line edit. diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index 9888566..6294b98 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp @@ -669,53 +669,49 @@ QDate MonthViewCell::selectedIncidenceDate() MonthViewItem *item = static_cast<MonthViewItem *>( mItemList->item( index ) ); if ( !item ) return qd; return item->incidenceDate(); } void MonthViewCell::deselect() { mItemList->clearSelection(); enableScrollBars( false ); // updateCell(); } void MonthViewCell::select() { ;// updateCell(); } void MonthViewCell::resizeEvent ( QResizeEvent * ) { if ( !mMonthView->isUpdatePossible() ) return; -#ifndef DESKTOP_VERSION - if ( !isVisible() ){ - return; - } -#endif + int size = height() - mLabel->height() - 2; if ( size > 0 ) mItemList->verticalScrollBar()->setMaximumHeight( size ); size = width() - mLabel->width() -2; if ( size > 0 ) mItemList->horizontalScrollBar()->setMaximumWidth( size ); mLabel->move( width()-mItemList->lineWidth() - mLabel->width(), height()-mItemList->lineWidth() - mLabel->height() ); //mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2); } void MonthViewCell::defaultAction( QListBoxItem *item ) { if ( !item ) return; MonthViewItem *eventItem = static_cast<MonthViewItem *>( item ); Incidence *incidence = eventItem->incidence(); if ( incidence ) mMonthView->defaultAction( incidence ); } void MonthViewCell::showDay() { emit showDaySignal( date() ); } void MonthViewCell::newEvent() { @@ -820,48 +816,50 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) connect( cell, SIGNAL( defaultAction( Incidence * ) ), SLOT( defaultAction( Incidence * ) ) ); connect( cell, SIGNAL( newEventSignal( QDateTime ) ), SIGNAL( newEventSignal( QDateTime ) ) ); connect( cell, SIGNAL( showDaySignal( QDate ) ), SIGNAL( showDaySignal( QDate ) ) ); } } connect( mWeekLabels[mNumWeeks], SIGNAL( clicked() ), SLOT( switchView() ) ); mContextMenu = eventPopup(); // updateConfig(); //useless here emit incidenceSelected( 0 ); } KOMonthView::~KOMonthView() { delete mContextMenu; } void KOMonthView::switchView() { + if ( selectedCell( ) ) + selectedCell()->deselect(); mShowWeekView = !mShowWeekView; KOPrefs::instance()->mMonthViewWeek = mShowWeekView; emit showNavigator( !mShowWeekView ); computeLayout(); updateConfig(); } int KOMonthView::maxDatesHint() { return mNumCells; } int KOMonthView::currentDateCount() { return mNumCells; } QPtrList<Incidence> KOMonthView::selectedIncidences() { QPtrList<Incidence> selected; if ( mSelectedCell ) { Incidence *incidence = mSelectedCell->selectedIncidence(); if ( incidence ) selected.append( incidence ); @@ -1138,53 +1136,54 @@ void KOMonthView::computeLayoutWeek() combinedSatSun = true; //qDebug("KOMonthView::computeLayout()------------------------------------ "); QFontMetrics fm ( mWeekLabels[0]->font() ); int weeklabelwid = fm.width( "888" ); wid -= weeklabelwid; int colWid = wid / daysToShow; int lastCol = wid - ( colWid*6 ); int dayLabelHei = mDayLabels[0]->sizeHint().height(); int cellHei = (hei - (5- daysToShow )*dayLabelHei) /(5- daysToShow ); int colModulo = wid % daysToShow; int rowModulo = (hei- (5- daysToShow )*dayLabelHei) % daysToShow-1; //qDebug("rowmod %d ", rowModulo); int i; int x,y,w,h; x= 0; y= 0; w = colWid; h = dayLabelHei ; for ( i = 0; i < 7; i++) { if ( i && !( i % daysToShow) && i < 6) { y += hei/(5-daysToShow); x = 0; + w = colWid; } if ( i == daysToShow-colModulo ) ++w; if ( i >= 5 ) { - mDayLabels[i]->setGeometry( x+weeklabelwid,y,w/2,h); + mDayLabels[i]->setGeometry( x+weeklabelwid,y,w/2+1,h); x -= w/2 ; } else mDayLabels[i]->setGeometry( x+weeklabelwid,y,w,h); x += w; } x= 0; y= dayLabelHei; w = colWid; h = cellHei; for ( i = 0; i < mCells.count(); ++i) { if ( i > 6 ) { mCells[i]->hide(); continue; } w = colWid; if ( ((i) % daysToShow) >= daysToShow-colModulo ) { ++w; } if ( i == (daysToShow-1-rowModulo)*7) ++h; if ( i >= 5 ) { |