author | zautrix <zautrix> | 2005-02-07 13:03:38 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-02-07 13:03:38 (UTC) |
commit | 7de846e9f01ce27b622541493e6a02e26e37bf2c (patch) (unidiff) | |
tree | df59c7803b1e171b08d3c387f49b1239d1adc3b5 /korganizer/komonthview.cpp | |
parent | afc19166fcdc09d3d5b757a84abfeb0b2746f35f (diff) | |
download | kdepimpi-7de846e9f01ce27b622541493e6a02e26e37bf2c.zip kdepimpi-7de846e9f01ce27b622541493e6a02e26e37bf2c.tar.gz kdepimpi-7de846e9f01ce27b622541493e6a02e26e37bf2c.tar.bz2 |
fixxxx
-rw-r--r-- | korganizer/komonthview.cpp | 55 |
1 files changed, 28 insertions, 27 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index 234375b..7ba0b2f 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp | |||
@@ -790,29 +790,32 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) | |||
790 | : KOEventView( calendar, parent, name ), | 790 | : KOEventView( calendar, parent, name ), |
791 | mDaysPerWeek( 7 ), mNumWeeks( 6 ), mNumCells( mDaysPerWeek * mNumWeeks ), | 791 | mDaysPerWeek( 7 ), mNumWeeks( 6 ), mNumCells( mDaysPerWeek * mNumWeeks ), |
792 | mShortDayLabels( false ), mWidthLongDayLabel( 0 ), mSelectedCell( 0 ) | 792 | mShortDayLabels( false ), mWidthLongDayLabel( 0 ), mSelectedCell( 0 ) |
793 | { | 793 | { |
794 | skipResize = false; | 794 | skipResize = false; |
795 | clPending = true; | 795 | clPending = true; |
796 | mNavigatorBar = new NavigatorBar( QDate::currentDate(), this, "useBigPixmaps" ); | ||
796 | mWidStack = new QWidgetStack( this ); | 797 | mWidStack = new QWidgetStack( this ); |
797 | QHBoxLayout* hb = new QHBoxLayout( this ); | 798 | QVBoxLayout* hb = new QVBoxLayout( this ); |
798 | mMonthView = new QWidget( mWidStack ); | 799 | mMonthView = new QWidget( mWidStack ); |
799 | mWeekView = new QWidget( mWidStack ); | 800 | mWeekView = new QWidget( mWidStack ); |
800 | #if QT_VERSION >= 0x030000 | 801 | #if QT_VERSION >= 0x030000 |
801 | mWidStack->addWidget(mMonthView ); | 802 | mWidStack->addWidget(mMonthView ); |
802 | mWidStack->addWidget(mWeekView ); | 803 | mWidStack->addWidget(mWeekView ); |
803 | #else | 804 | #else |
804 | mWidStack->addWidget( mMonthView, 1 ); | 805 | mWidStack->addWidget( mMonthView, 1 ); |
805 | mWidStack->addWidget( mWeekView , 1 ); | 806 | mWidStack->addWidget( mWeekView , 1 ); |
806 | #endif | 807 | #endif |
808 | hb->addWidget( mNavigatorBar ); | ||
807 | hb->addWidget( mWidStack ); | 809 | hb->addWidget( mWidStack ); |
808 | mWeekStartsMonday = KGlobal::locale()->weekStartsMonday(); | 810 | mWeekStartsMonday = KGlobal::locale()->weekStartsMonday(); |
809 | mShowWeekView = KOPrefs::instance()->mMonthViewWeek; | 811 | mShowWeekView = KOPrefs::instance()->mMonthViewWeek; |
810 | if ( mShowWeekView ) | 812 | if ( mShowWeekView ) |
811 | mWeekStartsMonday = true; | 813 | mWeekStartsMonday = true; |
812 | updatePossible = false; | 814 | updatePossible = false; |
815 | //updatePossible = true; | ||
813 | mCells.setAutoDelete( true ); | 816 | mCells.setAutoDelete( true ); |
814 | mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ; | 817 | mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ; |
815 | mDayLabels.resize( mDaysPerWeek ); | 818 | mDayLabels.resize( mDaysPerWeek ); |
816 | mDayLabelsW.resize( mDaysPerWeek ); | 819 | mDayLabelsW.resize( mDaysPerWeek ); |
817 | QFont bfont = font(); | 820 | QFont bfont = font(); |
818 | if ( QApplication::desktop()->width() < 650 ) { | 821 | if ( QApplication::desktop()->width() < 650 ) { |
@@ -914,12 +917,16 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) | |||
914 | if ( mShowWeekView ) | 917 | if ( mShowWeekView ) |
915 | mWidStack->raiseWidget( mWeekView ); | 918 | mWidStack->raiseWidget( mWeekView ); |
916 | else | 919 | else |
917 | mWidStack->raiseWidget( mMonthView ); | 920 | mWidStack->raiseWidget( mMonthView ); |
918 | 921 | ||
919 | emit incidenceSelected( 0 ); | 922 | emit incidenceSelected( 0 ); |
923 | #ifndef DESKTOP_VERSION | ||
924 | resize( QApplication::desktop()->size() ); | ||
925 | computeLayout(); | ||
926 | #endif | ||
920 | } | 927 | } |
921 | 928 | ||
922 | KOMonthView::~KOMonthView() | 929 | KOMonthView::~KOMonthView() |
923 | { | 930 | { |
924 | delete mContextMenu; | 931 | delete mContextMenu; |
925 | } | 932 | } |
@@ -940,13 +947,12 @@ void KOMonthView::switchView() | |||
940 | { | 947 | { |
941 | 948 | ||
942 | if ( selectedCell( ) ) | 949 | if ( selectedCell( ) ) |
943 | selectedCell()->deselect(); | 950 | selectedCell()->deselect(); |
944 | mShowWeekView = !mShowWeekView; | 951 | mShowWeekView = !mShowWeekView; |
945 | KOPrefs::instance()->mMonthViewWeek = mShowWeekView; | 952 | KOPrefs::instance()->mMonthViewWeek = mShowWeekView; |
946 | //emit showNavigator( !mShowWeekView ); | ||
947 | if ( clPending ) { | 953 | if ( clPending ) { |
948 | computeLayout(); | 954 | computeLayout(); |
949 | updateConfig(); | 955 | updateConfig(); |
950 | } | 956 | } |
951 | if ( mShowWeekView ) | 957 | if ( mShowWeekView ) |
952 | mWidStack->raiseWidget( mWeekView ); | 958 | mWidStack->raiseWidget( mWeekView ); |
@@ -1257,18 +1263,13 @@ void KOMonthView::updateView() | |||
1257 | 1263 | ||
1258 | //qDebug("update time %d ", ti.elapsed()); | 1264 | //qDebug("update time %d ", ti.elapsed()); |
1259 | } | 1265 | } |
1260 | 1266 | ||
1261 | void KOMonthView::resizeEvent(QResizeEvent * e) | 1267 | void KOMonthView::resizeEvent(QResizeEvent * e) |
1262 | { | 1268 | { |
1263 | qDebug("KOMonthView::resizeEvent %d %d -- %d %d ", e->size().width(), e->size().height(), e->oldSize().width(), e->oldSize().height()); | 1269 | //qDebug("KOMonthView::resizeEvent %d %d -- %d %d ", e->size().width(), e->size().height(), e->oldSize().width(), e->oldSize().height()); |
1264 | if ( skipResize ) { | ||
1265 | skipResize = false; | ||
1266 | qDebug("skipResize "); | ||
1267 | return; | ||
1268 | } | ||
1269 | computeLayout(); | 1270 | computeLayout(); |
1270 | clPending = true; | 1271 | clPending = true; |
1271 | if ( mShowWeekView ) | 1272 | if ( mShowWeekView ) |
1272 | mCellsW[0]->setFocus(); | 1273 | mCellsW[0]->setFocus(); |
1273 | else | 1274 | else |
1274 | mCells[0]->setFocus(); | 1275 | mCells[0]->setFocus(); |
@@ -1283,33 +1284,32 @@ void KOMonthView::computeLayoutWeek() | |||
1283 | daysToShow = 6; | 1284 | daysToShow = 6; |
1284 | combinedSatSun = true; | 1285 | combinedSatSun = true; |
1285 | } | 1286 | } |
1286 | int tWid = topLevelWidget()->size().width(); | 1287 | int tWid = topLevelWidget()->size().width(); |
1287 | int tHei = topLevelWidget()->size().height(); | 1288 | int tHei = topLevelWidget()->size().height(); |
1288 | 1289 | ||
1289 | int wid = size().width();//e | 1290 | int wid = width();//e |
1290 | int hei = size().height()-1; | 1291 | int hei = height()-1-mNavigatorBar->height(); |
1291 | 1292 | ||
1292 | if ( ((wid *3)/2) < tWid && (( hei *3) /2) < tHei ) | 1293 | if ( ((wid *3)/2) < tWid && (( hei *3) /2) < tHei ) |
1293 | return; | 1294 | return; |
1294 | 1295 | ||
1295 | 1296 | if ( lastWid == width() && lastHei == height() ) | |
1296 | if ( lastWid == width() && lastHei ==height() ) | ||
1297 | return; | 1297 | return; |
1298 | lastWid =width(); | 1298 | lastWid = width(); |
1299 | lastHei = height(); | 1299 | lastHei = height(); |
1300 | 1300 | ||
1301 | 1301 | ||
1302 | if ( wid < hei ) | 1302 | if ( wid < hei ) |
1303 | daysToShow = 2; | 1303 | daysToShow = 2; |
1304 | else | 1304 | else |
1305 | daysToShow = 3; | 1305 | daysToShow = 3; |
1306 | mShowSatSunComp = true; | 1306 | mShowSatSunComp = true; |
1307 | combinedSatSun = true; | 1307 | combinedSatSun = true; |
1308 | 1308 | ||
1309 | qDebug("KOMonthView::computeLayout() WWW ------------------------------------ "); | 1309 | //qDebug("KOMonthView::computeLayout() WWW ------------------------------------ "); |
1310 | QFontMetrics fm ( mWeekLabels[0]->font() ); | 1310 | QFontMetrics fm ( mWeekLabels[0]->font() ); |
1311 | int weeklabelwid = fm.width( "888" ); | 1311 | int weeklabelwid = fm.width( "888" ); |
1312 | wid -= weeklabelwid; | 1312 | wid -= weeklabelwid; |
1313 | 1313 | ||
1314 | int colWid = wid / daysToShow; | 1314 | int colWid = wid / daysToShow; |
1315 | int lastCol = wid - ( colWid*6 ); | 1315 | int lastCol = wid - ( colWid*6 ); |
@@ -1384,17 +1384,17 @@ void KOMonthView::computeLayoutWeek() | |||
1384 | mWeekLabelsW[0]->setGeometry( 0,y,weeklabelwid,hei-dayLabelHei); | 1384 | mWeekLabelsW[0]->setGeometry( 0,y,weeklabelwid,hei-dayLabelHei); |
1385 | mWeekLabelsW[1]->setGeometry( 0,0,weeklabelwid,dayLabelHei); | 1385 | mWeekLabelsW[1]->setGeometry( 0,0,weeklabelwid,dayLabelHei); |
1386 | // qDebug("RRRRRRRRRRRRR %d %d old %d %d", e->size().width(),e->size().height() , e->oldSize().width(),e->oldSize().height()); | 1386 | // qDebug("RRRRRRRRRRRRR %d %d old %d %d", e->size().width(),e->size().height() , e->oldSize().width(),e->oldSize().height()); |
1387 | //qDebug("parent %d %d ", topLevelWidget()->size().width(), topLevelWidget()->size().height()); | 1387 | //qDebug("parent %d %d ", topLevelWidget()->size().width(), topLevelWidget()->size().height()); |
1388 | mShortDayLabels = mDayLabelsW[0]->width() < mWidthLongDayLabel ; | 1388 | mShortDayLabels = mDayLabelsW[0]->width() < mWidthLongDayLabel ; |
1389 | updateDayLabels(); | 1389 | updateDayLabels(); |
1390 | bool forceUpdate = !updatePossible; | 1390 | //bool forceUpdate = !updatePossible; |
1391 | updatePossible = true; | 1391 | updatePossible = true; |
1392 | //mWeekLabels[mNumWeeks]->setText( i18n("M")); | 1392 | //mWeekLabels[mNumWeeks]->setText( i18n("M")); |
1393 | if ( forceUpdate ) | 1393 | //if ( forceUpdate ) |
1394 | updateView(); | 1394 | // updateView(); |
1395 | } | 1395 | } |
1396 | void KOMonthView::computeLayout() | 1396 | void KOMonthView::computeLayout() |
1397 | { | 1397 | { |
1398 | 1398 | ||
1399 | 1399 | ||
1400 | static int lastWid = 0; | 1400 | static int lastWid = 0; |
@@ -1410,22 +1410,25 @@ void KOMonthView::computeLayout() | |||
1410 | daysToShow = 6; | 1410 | daysToShow = 6; |
1411 | combinedSatSun = true; | 1411 | combinedSatSun = true; |
1412 | } | 1412 | } |
1413 | int tWid = topLevelWidget()->size().width(); | 1413 | int tWid = topLevelWidget()->size().width(); |
1414 | int tHei = topLevelWidget()->size().height(); | 1414 | int tHei = topLevelWidget()->size().height(); |
1415 | 1415 | ||
1416 | int wid = size().width();//e | 1416 | int wid = width();//e |
1417 | int hei = size().height()-1; | 1417 | int hei = height()-1-mNavigatorBar->height(); |
1418 | 1418 | ||
1419 | if ( ((wid *3)/2) < tWid && (( hei *3) /2) < tHei ) | 1419 | if ( ((wid *3)/2) < tWid && (( hei *3) /2) < tHei ) { |
1420 | return; | 1420 | return; |
1421 | if ( lastWid == width() && lastHei ==height() ) | 1421 | } |
1422 | if ( lastWid == width() && lastHei == height() ){ | ||
1422 | return; | 1423 | return; |
1423 | lastWid =width(); | 1424 | } |
1424 | lastHei = height(); | 1425 | |
1425 | qDebug("KOMonthView::computeLayout() MMM ------------------------------------ "); | 1426 | lastWid = width(); |
1427 | lastHei = height(); | ||
1428 | //qDebug("KOMonthView::computeLayout() MMM ------------------------------------ "); | ||
1426 | QFontMetrics fm ( mWeekLabels[0]->font() ); | 1429 | QFontMetrics fm ( mWeekLabels[0]->font() ); |
1427 | int weeklabelwid = fm.width( "888" ); | 1430 | int weeklabelwid = fm.width( "888" ); |
1428 | wid -= weeklabelwid; | 1431 | wid -= weeklabelwid; |
1429 | 1432 | ||
1430 | int colWid = wid / daysToShow; | 1433 | int colWid = wid / daysToShow; |
1431 | int lastCol = wid - ( colWid*6 ); | 1434 | int lastCol = wid - ( colWid*6 ); |
@@ -1497,17 +1500,15 @@ void KOMonthView::computeLayout() | |||
1497 | } | 1500 | } |
1498 | mWeekLabels[6]->setGeometry( 0,0,weeklabelwid,dayLabelHei); | 1501 | mWeekLabels[6]->setGeometry( 0,0,weeklabelwid,dayLabelHei); |
1499 | // qDebug("RRRRRRRRRRRRR %d %d old %d %d", e->size().width(),e->size().height() , e->oldSize().width(),e->oldSize().height()); | 1502 | // qDebug("RRRRRRRRRRRRR %d %d old %d %d", e->size().width(),e->size().height() , e->oldSize().width(),e->oldSize().height()); |
1500 | //qDebug("parent %d %d ", topLevelWidget()->size().width(), topLevelWidget()->size().height()); | 1503 | //qDebug("parent %d %d ", topLevelWidget()->size().width(), topLevelWidget()->size().height()); |
1501 | mShortDayLabels = mDayLabels[0]->width() < mWidthLongDayLabel ; | 1504 | mShortDayLabels = mDayLabels[0]->width() < mWidthLongDayLabel ; |
1502 | updateDayLabels(); | 1505 | updateDayLabels(); |
1503 | bool forceUpdate = !updatePossible; | 1506 | //bool forceUpdate = !updatePossible; |
1504 | updatePossible = true; | 1507 | updatePossible = true; |
1505 | //mWeekLabels[mNumWeeks]->setText( i18n("W")); | 1508 | //mWeekLabels[mNumWeeks]->setText( i18n("W")); |
1506 | if ( forceUpdate ) | ||
1507 | updateView(); | ||
1508 | } | 1509 | } |
1509 | 1510 | ||
1510 | void KOMonthView::showContextMenu( Incidence *incidence ) | 1511 | void KOMonthView::showContextMenu( Incidence *incidence ) |
1511 | { | 1512 | { |
1512 | mContextMenu->showIncidencePopup(incidence); | 1513 | mContextMenu->showIncidencePopup(incidence); |
1513 | /* | 1514 | /* |