summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/komonthview.cpp72
-rw-r--r--korganizer/komonthview.h1
2 files changed, 46 insertions, 27 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index 38cfda7..12233ee 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -754,18 +754,7 @@ void MonthViewCell::finishUpdateCell()
754 sort(); 754 sort();
755 //setMyPalette(); 755 //setMyPalette();
756 setMyPalette(); 756 setMyPalette();
757 QString text; 757
758 bool smallDisplay = QApplication::desktop()->width() < 320 && KOPrefs::instance()->mMonthViewSatSunTog;
759 if ( KOPrefs::instance()->mMonthViewWeek || KOGlobals::self()->calendarSystem()->day( mDate ) == 1 || (mDate.dayOfWeek() == 7 && !smallDisplay ) || KOPrefs::instance()->mMonthShowShort) {
760 text = KOGlobals::self()->calendarSystem()->monthName( mDate, true ) + " ";
761 mLabel->resize( mLabelBigSize );
762 text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) );
763 } else {
764 mLabel->resize( mLabelSize );
765 text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) );
766 }
767
768 mLabel->setText( text );
769 resizeEvent( 0 ); 758 resizeEvent( 0 );
770 759
771} 760}
@@ -895,6 +884,21 @@ void MonthViewCell::resizeEvent ( QResizeEvent * e )
895 return; 884 return;
896 //qDebug("++++++++++++++MonthViewCell::resizeEvent %d %d ", width(), height()); 885 //qDebug("++++++++++++++MonthViewCell::resizeEvent %d %d ", width(), height());
897 deselect(); 886 deselect();
887 mLabel->setMaximumHeight( height() - lineWidth()*2 );
888
889 QString text;
890 mLabel->setText( text );
891 bool smallDisplay = QApplication::desktop()->width() < 320 && KOPrefs::instance()->mMonthViewSatSunTog;
892 if ( KOPrefs::instance()->mMonthViewWeek || KOGlobals::self()->calendarSystem()->day( mDate ) == 1 || (mDate.dayOfWeek() == 7 && !smallDisplay ) || KOPrefs::instance()->mMonthShowShort) {
893 text = KOGlobals::self()->calendarSystem()->monthName( mDate, true ) + " ";
894 mLabel->resize( mLabelBigSize );
895 text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) );
896 } else {
897 mLabel->resize( mLabelSize );
898 text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) );
899 }
900 mLabel->setText( text );
901
898 int size = height() - mLabel->height() - lineWidth()-1; 902 int size = height() - mLabel->height() - lineWidth()-1;
899 //qDebug("LW %d ", lineWidth()); 903 //qDebug("LW %d ", lineWidth());
900 if ( size > 0 ) 904 if ( size > 0 )
@@ -1448,7 +1452,7 @@ void KOMonthView::updateView()
1448 (*cells)[i]->finishUpdateCell(); 1452 (*cells)[i]->finishUpdateCell();
1449 } 1453 }
1450 processSelectionChange(); 1454 processSelectionChange();
1451 qApp->processEvents(); 1455 //qApp->processEvents();
1452 for( i = 0; i < timeSpan+1; ++i ) { 1456 for( i = 0; i < timeSpan+1; ++i ) {
1453 (*cells)[i]->repaintfinishUpdateCell(); 1457 (*cells)[i]->repaintfinishUpdateCell();
1454 } 1458 }
@@ -1474,9 +1478,9 @@ void KOMonthView::updateView()
1474 1478
1475void KOMonthView::resizeEvent(QResizeEvent * e) 1479void KOMonthView::resizeEvent(QResizeEvent * e)
1476{ 1480{
1477 qDebug("KOMonthView::resizeEvent %d %d -- %d %d ", e->size().width(), e->size().height(), e->oldSize().width(), e->oldSize().height()); 1481 //qDebug("KOMonthView::resizeEvent %d %d -- %d %d ", e->size().width(), e->size().height(), e->oldSize().width(), e->oldSize().height());
1478 if ( isVisible() ) { 1482 if ( isVisible() ) {
1479 qDebug("KOMonthView::isVisible "); 1483 //qDebug("KOMonthView::isVisible ");
1480 slotComputeLayout(); 1484 slotComputeLayout();
1481 } else 1485 } else
1482 mComputeLayoutTimer->start( 100 ); 1486 mComputeLayoutTimer->start( 100 );
@@ -1485,7 +1489,7 @@ void KOMonthView::resizeEvent(QResizeEvent * e)
1485void KOMonthView::slotComputeLayout() 1489void KOMonthView::slotComputeLayout()
1486{ 1490{
1487 mComputeLayoutTimer->stop(); 1491 mComputeLayoutTimer->stop();
1488 qDebug("KOMonthView::Post - resizeEvent %d %d ", width(), height() ); 1492 //qDebug("KOMonthView::Post - resizeEvent %d %d ", width(), height() );
1489 computeLayout(); 1493 computeLayout();
1490 clPending = true; 1494 clPending = true;
1491 if ( mShowWeekView ) 1495 if ( mShowWeekView )
@@ -1514,7 +1518,7 @@ void KOMonthView::computeLayoutWeek()
1514 return; 1518 return;
1515 1519
1516 if ( lastWid == width() && lastHei == height() ) { 1520 if ( lastWid == width() && lastHei == height() ) {
1517 qDebug("KOListWeekView::No compute layout needed "); 1521 //qDebug("KOListWeekView::No compute layout needed ");
1518 return; 1522 return;
1519 } 1523 }
1520 lastWid = width(); 1524 lastWid = width();
@@ -1567,6 +1571,7 @@ void KOMonthView::computeLayoutWeek()
1567 y= dayLabelHei; 1571 y= dayLabelHei;
1568 w = colWid; 1572 w = colWid;
1569 h = cellHei; 1573 h = cellHei;
1574 int max = 0;
1570 for ( i = 0; i < mCellsW.count(); ++i) { 1575 for ( i = 0; i < mCellsW.count(); ++i) {
1571 if ( i > 6 ) { 1576 if ( i > 6 ) {
1572 mCellsW[i]->hide(); 1577 mCellsW[i]->hide();
@@ -1582,17 +1587,21 @@ void KOMonthView::computeLayoutWeek()
1582 1587
1583 if ( i >= 5 ) { 1588 if ( i >= 5 ) {
1584 if ( i ==5 ) { 1589 if ( i ==5 ) {
1585 mCellsW[i]->setGeometry ( x+weeklabelwid,y,w,h/2 ); 1590 max = h/2;
1591 mCellsW[i]->setGeometry ( x+weeklabelwid,y,w,max );
1586 x -= w ;y += h/2; 1592 x -= w ;y += h/2;
1587 } else { 1593 } else {
1588 if ( ((i-1) % daysToShow) >= daysToShow-colModulo ) { 1594 if ( ((i-1) % daysToShow) >= daysToShow-colModulo ) {
1589 ++w; 1595 ++w;
1590 } 1596 }
1591 mCellsW[i]->setGeometry ( x+weeklabelwid,y,w,h-h/2 ); 1597 max = h-h/2;
1598 mCellsW[i]->setGeometry ( x+weeklabelwid,y,w,max );
1592 y -= h/2; 1599 y -= h/2;
1593 } 1600 }
1594 } else 1601 } else {
1602 max = h;
1595 mCellsW[i]->setGeometry ( x+weeklabelwid,y,w,h ); 1603 mCellsW[i]->setGeometry ( x+weeklabelwid,y,w,h );
1604 }
1596 1605
1597 1606
1598 x += w; 1607 x += w;
@@ -1600,6 +1609,7 @@ void KOMonthView::computeLayoutWeek()
1600 x = 0; 1609 x = 0;
1601 y += h+dayLabelHei ; 1610 y += h+dayLabelHei ;
1602 } 1611 }
1612 //mCellsW[i]->dateLabel()->setMaximumHeight( max - mCellsW[i]->lineWidth()*2 );
1603 } 1613 }
1604 y= dayLabelHei; 1614 y= dayLabelHei;
1605 h = cellHei ; 1615 h = cellHei ;
@@ -1642,13 +1652,13 @@ void KOMonthView::computeLayout()
1642 return; 1652 return;
1643 } 1653 }
1644 if ( lastWid == width() && lastHei == height() ){ 1654 if ( lastWid == width() && lastHei == height() ){
1645 qDebug("KOMonthview::No compute layout needed "); 1655 //qDebug("KOMonthview::No compute layout needed ");
1646 return; 1656 return;
1647 } 1657 }
1648 1658
1649 lastWid = width(); 1659 lastWid = width();
1650 lastHei = height(); 1660 lastHei = height();
1651 qDebug("KOMonthView::computeLayout() MMM ------------------- "); 1661 //qDebug("KOMonthView::computeLayout() MMM ------------------- ");
1652 QFontMetrics fm ( mWeekLabels[0]->font() ); 1662 QFontMetrics fm ( mWeekLabels[0]->font() );
1653 int weeklabelwid = fm.width( "888" ); 1663 int weeklabelwid = fm.width( "888" );
1654 wid -= weeklabelwid; 1664 wid -= weeklabelwid;
@@ -1684,6 +1694,7 @@ void KOMonthView::computeLayout()
1684 y= dayLabelHei; 1694 y= dayLabelHei;
1685 w = colWid; 1695 w = colWid;
1686 h = cellHei ; 1696 h = cellHei ;
1697 int max = 0;
1687 for ( i = 0; i < mCells.count(); ++i) { 1698 for ( i = 0; i < mCells.count(); ++i) {
1688 //qDebug("iii %d ", i); 1699 //qDebug("iii %d ", i);
1689 w = colWid; 1700 w = colWid;
@@ -1695,23 +1706,30 @@ void KOMonthView::computeLayout()
1695 if ( combinedSatSun ) { 1706 if ( combinedSatSun ) {
1696 if ( (i)%7 >= daysToShow-1 ) { 1707 if ( (i)%7 >= daysToShow-1 ) {
1697 if ( (i)%7 == daysToShow-1 ) { 1708 if ( (i)%7 == daysToShow-1 ) {
1698 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h/2 ); 1709 max = h/2;
1710 mCells[i]->setGeometry ( x+weeklabelwid,y,w,max );
1699 x -= w ;y += h/2; 1711 x -= w ;y += h/2;
1700 } else { 1712 } else {
1701 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h-h/2 ); 1713 max = h-h/2;
1714 mCells[i]->setGeometry ( x+weeklabelwid,y,w,max );
1702 y -= h/2; 1715 y -= h/2;
1703 } 1716 }
1704 } else 1717 } else {
1718 max = h;
1705 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h ); 1719 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h );
1720 }
1706 1721
1707 } 1722 }
1708 else 1723 else {
1724 max = h;
1709 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h ); 1725 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h );
1726 }
1710 x += w; 1727 x += w;
1711 if ( x + w/2 > wid ) { 1728 if ( x + w/2 > wid ) {
1712 x = 0; 1729 x = 0;
1713 y += h; 1730 y += h;
1714 } 1731 }
1732 //mCells[i]->dateLabel()->setMaximumHeight( max- mCells[i]->lineWidth()*2 );
1715 } 1733 }
1716 y= dayLabelHei; 1734 y= dayLabelHei;
1717 h = cellHei ; 1735 h = cellHei ;
diff --git a/korganizer/komonthview.h b/korganizer/komonthview.h
index b997c1a..a58f6b8 100644
--- a/korganizer/komonthview.h
+++ b/korganizer/komonthview.h
@@ -159,6 +159,7 @@ class MonthViewCell : public KNoScrollListBox
159 159
160 Incidence *selectedIncidence(); 160 Incidence *selectedIncidence();
161 QDate selectedIncidenceDate(); 161 QDate selectedIncidenceDate();
162 QPushButton * dateLabel() { return mLabel; }
162 163
163 void deselect(); 164 void deselect();
164 void select(); 165 void select();