From 5b9e0451514d65ab576b51e0f9d3515fa6b9e4e6 Mon Sep 17 00:00:00 2001 From: zautrix Date: Mon, 21 Mar 2005 09:58:16 +0000 Subject: nf --- diff --git a/korganizer/datenavigatorcontainer.cpp b/korganizer/datenavigatorcontainer.cpp index 3358ecf..5cdaa83 100644 --- a/korganizer/datenavigatorcontainer.cpp +++ b/korganizer/datenavigatorcontainer.cpp @@ -160,7 +160,7 @@ void DateNavigatorContainer::resizeEvent( QResizeEvent * e ) kdDebug(5850) << " SIZEHINT: " << sizeHint() << endl; kdDebug(5850) << " MINIMUM SIZE: " << minimumSize() << endl; #endif - QSize minSize = mNavigatorView->yourSizeHint(); + QSize minSize = mNavigatorView->sizeHintTwoButtons(); // kdDebug(5850) << " NAVIGATORVIEW minimumSizeHint: " << minSize << endl; @@ -179,7 +179,7 @@ void DateNavigatorContainer::resizeEvent( QResizeEvent * e ) //mNavigatorView->resize( size() ); //if ( ! ok ) // return; - minSize = mNavigatorView->sizeHint(); + minSize = mNavigatorView->sizeHintTwoButtons(); verticalCount = size().height() / minSize.height(); horizontalCount = size().width() / minSize.width(); if ( horizontalCount == 0 ) diff --git a/korganizer/kdatenavigator.cpp b/korganizer/kdatenavigator.cpp index 92a0ac2..a5dbc5d 100644 --- a/korganizer/kdatenavigator.cpp +++ b/korganizer/kdatenavigator.cpp @@ -134,7 +134,7 @@ QFont KDateNavigator::yourFontHint( QSize si , bool *b) setFont( fo ); mFontChanged = true; mNavigatorBar->resetFont( fo ); - QSize sh = sizeHint(); + QSize sh = sizeHintTwoButtons(); //qDebug("fp %d %d %d %d %d", fontPoint, si.width() , sh.width() , si.height() , sh.height() ); if ( si.width() > sh.width() && si.height() > sh.height()) { *b = true; @@ -157,6 +157,18 @@ QSize KDateNavigator::sizeHint() const //qDebug("KDateNavigator+++++++++++++ %d %d", wid , hei); return QSize ( wid, hei ); } +QSize KDateNavigator::sizeHintTwoButtons() const +{ + QFontMetrics fm ( font() ); + QSize day = daymatrix->sizeHint(); + QSize nav = mNavigatorBar->sizeHintTwoButtons(); + int wid = fm.width( "30") + day.width()+3; + int hei = fm.height() +day.height()+nav.height()+2; + if ( wid < nav.width() ) + wid = nav.width() ; + //qDebug("KDateNavigator+++++++++++++ %d %d", wid , hei); + return QSize ( wid, hei ); +} void KDateNavigator::slotMonthSelected( int m ) { if ( m_MthYr.month() <= mMonthSignalOffset) diff --git a/korganizer/kdatenavigator.h b/korganizer/kdatenavigator.h index 3177687..d1f32b6 100644 --- a/korganizer/kdatenavigator.h +++ b/korganizer/kdatenavigator.h @@ -70,6 +70,7 @@ class KDateNavigator: public QFrame void unsetFontChanged() { mFontChanged = false; } KODayMatrix *dayMatrix() { return daymatrix ;} QSize sizeHint() const; + QSize sizeHintTwoButtons() const; void changeFont ( QFont fo ); public slots: void selectDates( const KCal::DateList & ); diff --git a/korganizer/navigatorbar.cpp b/korganizer/navigatorbar.cpp index e4abbf7..1b4ee52 100644 --- a/korganizer/navigatorbar.cpp +++ b/korganizer/navigatorbar.cpp @@ -173,8 +173,11 @@ QSize NavigatorBar::sizeHint() const if ( mNextYear->isVisible() ) wid += mCurrentButtonMinWid; //qDebug("ret %d %d ", wid, mCurrentHei); - int add = 2; - return QSize ( wid+add, mCurrentHei+add ); + return QSize ( wid, mCurrentHei ); +} +QSize NavigatorBar::sizeHintTwoButtons() const +{ + return QSize ( mCurrentMinWid + 2 * mCurrentButtonMinWid , mCurrentHei ); } void NavigatorBar::resetFont ( QFont fo ) { @@ -204,8 +207,8 @@ void NavigatorBar::resetFont ( QFont fo ) mNextMonth->setFixedHeight( size ); mNextWeek->setFixedHeight( size ); mNextYear->setFixedHeight ( size ); - mCurrentHei = size; - mCurrentMinWid = maxwidth; + mCurrentHei = size +2; + mCurrentMinWid = maxwidth+2; mCurrentButtonMinWid = mPrevYear->sizeHint().width()+2; } diff --git a/korganizer/navigatorbar.h b/korganizer/navigatorbar.h index 5d5aff4..bf6d173 100644 --- a/korganizer/navigatorbar.h +++ b/korganizer/navigatorbar.h @@ -41,6 +41,7 @@ class NavigatorBar: public QWidget void showButtons( bool left, bool right ); void resetFont ( QFont fo ); QSize sizeHint() const; + QSize sizeHintTwoButtons() const; public slots: void selectDates( const KCal::DateList & ); -- cgit v0.9.0.2