summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-03-30 13:46:29 (UTC)
committer zautrix <zautrix>2005-03-30 13:46:29 (UTC)
commit8c160d7aeeab1d22382ced11440712f6541a6db7 (patch) (unidiff)
tree83fd0df6d30db6bbb05d82dc400d6f51823f5b3a
parent056f171723a9301aea5a65340dffeda34e078abf (diff)
downloadkdepimpi-8c160d7aeeab1d22382ced11440712f6541a6db7.zip
kdepimpi-8c160d7aeeab1d22382ced11440712f6541a6db7.tar.gz
kdepimpi-8c160d7aeeab1d22382ced11440712f6541a6db7.tar.bz2
fixes
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--korganizer/datenavigatorcontainer.cpp26
1 files changed, 18 insertions, 8 deletions
diff --git a/korganizer/datenavigatorcontainer.cpp b/korganizer/datenavigatorcontainer.cpp
index f6f62a4..92abae6 100644
--- a/korganizer/datenavigatorcontainer.cpp
+++ b/korganizer/datenavigatorcontainer.cpp
@@ -184,76 +184,86 @@ void DateNavigatorContainer::checkUpdateDayMatrixDates()
184 QFont fo; 184 QFont fo;
185 if ( horizontalCount != mHorizontalCount || 185 if ( horizontalCount != mHorizontalCount ||
186 verticalCount != mVerticalCount ) { 186 verticalCount != mVerticalCount ) {
187 uint count = horizontalCount * verticalCount; 187 uint count = horizontalCount * verticalCount;
188 if ( count == 0 ) { 188 if ( count == 0 ) {
189 bool ok; 189 bool ok;
190 fo = mNavigatorView->yourFontHint( size() , &ok ); 190 fo = mNavigatorView->yourFontHint( size() , &ok );
191 //mNavigatorView->resize( size() ); 191 //mNavigatorView->resize( size() );
192 //if ( ! ok ) 192 //if ( ! ok )
193 // return; 193 // return;
194 int butt = 2; 194 int butt = 2;
195 horizontalCount = size().width() / mNavigatorView->sizeHintTwoButtons( ).width(); 195 horizontalCount = size().width() / mNavigatorView->sizeHintTwoButtons( ).width();
196 if ( horizontalCount <= 1 ) 196 if ( horizontalCount <= 1 )
197 minSize = mNavigatorView->sizeHintTwoButtons( 4 ); 197 minSize = mNavigatorView->sizeHintTwoButtons( 4 );
198 else 198 else
199 minSize = mNavigatorView->sizeHintTwoButtons(); 199 minSize = mNavigatorView->sizeHintTwoButtons();
200 verticalCount = size().height() / minSize.height(); 200 verticalCount = size().height() / minSize.height();
201 horizontalCount = size().width() / minSize.width(); 201 horizontalCount = size().width() / minSize.width();
202 if ( horizontalCount == 0 ) 202 if ( horizontalCount == 0 )
203 horizontalCount = 1; 203 horizontalCount = 1;
204 if ( verticalCount == 0 ) 204 if ( verticalCount == 0 )
205 verticalCount = 1; 205 verticalCount = 1;
206 fontchange = true; 206 fontchange = true;
207 count = horizontalCount * verticalCount; 207 count = horizontalCount * verticalCount;
208 } else {
209 if ( mNavigatorView->fontChanged() ) {
210 fontchange = true;
211 fo = KOPrefs::instance()->mDateNavigatorFont;
212 mNavigatorView->changeFont( fo );
213 mNavigatorView->unsetFontChanged();
214 }
208 } 215 }
209
210 mLastDisplayedDN = horizontalCount*verticalCount-1; 216 mLastDisplayedDN = horizontalCount*verticalCount-1;
211 while ( count > ( mExtraViews.count() + 1 ) ) { 217 while ( count > ( mExtraViews.count() + 1 ) ) {
212 KDateNavigator *n = new KDateNavigator( this ); 218 KDateNavigator *n = new KDateNavigator( this );
213 n->setMonthSignalOffset ( mExtraViews.count()+1 ); 219 n->setMonthSignalOffset ( mExtraViews.count()+1 );
214 mExtraViews.append( n ); 220 mExtraViews.append( n );
215 n->setCalendar( mCalendar ); 221 n->setCalendar( mCalendar );
216 connectNavigatorView( n ); 222 connectNavigatorView( n );
217 // n->show(); 223 // n->show();
218 } 224 }
219 225
220 setBaseDates(); 226 setBaseDates();
227 if ( fontchange ) {
228 //mNavigatorView->changeFont( fo );
229 uint i;
230 for( i = 0; i < mExtraViews.count(); ++i ) {
231 KDateNavigator *view = mExtraViews.at( i );
232 view->changeFont( fo );
233 }
234 }
221 mHorizontalCount = horizontalCount; 235 mHorizontalCount = horizontalCount;
222 mVerticalCount = verticalCount; 236 mVerticalCount = verticalCount;
223 237
224 } 238 }
225 if ( !fontchange ) { 239 if ( mNavigatorView->fontChanged() && ! fontchange ) {
226 if ( mNavigatorView->fontChanged() ) { 240 qDebug("KDNC: Resetting all fonts ");
227 fontchange = true;
228 fo = KOPrefs::instance()->mDateNavigatorFont; 241 fo = KOPrefs::instance()->mDateNavigatorFont;
229 mNavigatorView->changeFont( fo ); 242 mNavigatorView->changeFont( fo );
230 mNavigatorView->unsetFontChanged(); 243 mNavigatorView->unsetFontChanged();
231 }
232 }
233 if ( fontchange ) {
234 uint i; 244 uint i;
235 for( i = 0; i < mLastDisplayedDN; ++i ) { 245 for( i = 0; i < mExtraViews.count(); ++i ) {
236 KDateNavigator *view = mExtraViews.at( i ); 246 KDateNavigator *view = mExtraViews.at( i );
237 view->changeFont( fo ); 247 view->changeFont( fo );
238 } 248 }
239 } 249 }
240 int theight = height() / mVerticalCount; 250 int theight = height() / mVerticalCount;
241 int twidth = width() / mHorizontalCount; 251 int twidth = width() / mHorizontalCount;
242 252
243 NavigatorBar *bar = mNavigatorView->navigatorBar(); 253 NavigatorBar *bar = mNavigatorView->navigatorBar();
244 if ( mHorizontalCount > 1 ) bar->showButtons( true, false ); 254 if ( mHorizontalCount > 1 ) bar->showButtons( true, false );
245 else bar->showButtons( true, true ); 255 else bar->showButtons( true, true );
246 256
247 mNavigatorView->setGeometry(0, 257 mNavigatorView->setGeometry(0,
248 0, twidth, theight ); 258 0, twidth, theight );
249 for( uint i = 0; i < mLastDisplayedDN; ++i ) { 259 for( uint i = 0; i < mLastDisplayedDN; ++i ) {
250 int x = ( i + 1 ) % mHorizontalCount; 260 int x = ( i + 1 ) % mHorizontalCount;
251 int y = ( i + 1 ) / mHorizontalCount; 261 int y = ( i + 1 ) / mHorizontalCount;
252 262
253 KDateNavigator *view = mExtraViews.at( i ); 263 KDateNavigator *view = mExtraViews.at( i );
254 bar = view->navigatorBar(); 264 bar = view->navigatorBar();
255 if ( y > 0 ) bar->showButtons( false, false ); 265 if ( y > 0 ) bar->showButtons( false, false );
256 else { 266 else {
257 if ( x + 1 == mHorizontalCount ) bar->showButtons( false, true ); 267 if ( x + 1 == mHorizontalCount ) bar->showButtons( false, true );
258 else bar->showButtons( false, false ); 268 else bar->showButtons( false, false );
259 } 269 }