Diffstat (limited to 'korganizer/datenavigatorcontainer.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | korganizer/datenavigatorcontainer.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/korganizer/datenavigatorcontainer.cpp b/korganizer/datenavigatorcontainer.cpp index b147427..ab0dd50 100644 --- a/korganizer/datenavigatorcontainer.cpp +++ b/korganizer/datenavigatorcontainer.cpp | |||
@@ -32,32 +32,33 @@ | |||
32 | 32 | ||
33 | #include <kcalendarsystem.h> | 33 | #include <kcalendarsystem.h> |
34 | 34 | ||
35 | #include "datenavigatorcontainer.h" | 35 | #include "datenavigatorcontainer.h" |
36 | #include "koprefs.h" | 36 | #include "koprefs.h" |
37 | 37 | ||
38 | DateNavigatorContainer::DateNavigatorContainer( QWidget *parent, | 38 | DateNavigatorContainer::DateNavigatorContainer( QWidget *parent, |
39 | const char *name ) | 39 | const char *name ) |
40 | : QWidget( parent, name ), mCalendar( 0 ), | 40 | : QWidget( parent, name ), mCalendar( 0 ), |
41 | mHorizontalCount( 1 ), mVerticalCount( 1 ) | 41 | mHorizontalCount( 1 ), mVerticalCount( 1 ) |
42 | { | 42 | { |
43 | mExtraViews.setAutoDelete( true ); | 43 | mExtraViews.setAutoDelete( true ); |
44 | 44 | ||
45 | mNavigatorView = new KDateNavigator( this, name ); | 45 | mNavigatorView = new KDateNavigator( this, name ); |
46 | 46 | ||
47 | connectNavigatorView( mNavigatorView ); | 47 | connectNavigatorView( mNavigatorView ); |
48 | //setSizePolicy( QSizePolicy (QSizePolicy::Expanding,QSizePolicy::Expanding) ); | ||
48 | } | 49 | } |
49 | 50 | ||
50 | DateNavigatorContainer::~DateNavigatorContainer() | 51 | DateNavigatorContainer::~DateNavigatorContainer() |
51 | { | 52 | { |
52 | } | 53 | } |
53 | 54 | ||
54 | void DateNavigatorContainer::connectNavigatorView( KDateNavigator *v ) | 55 | void DateNavigatorContainer::connectNavigatorView( KDateNavigator *v ) |
55 | { | 56 | { |
56 | connect( v, SIGNAL( datesSelected( const KCal::DateList & ) ), | 57 | connect( v, SIGNAL( datesSelected( const KCal::DateList & ) ), |
57 | SIGNAL( datesSelected( const KCal::DateList & ) ) ); | 58 | SIGNAL( datesSelected( const KCal::DateList & ) ) ); |
58 | #if 0 | 59 | #if 0 |
59 | connect( v, SIGNAL( incidenceDropped( Incidence *, const QDate & ) ), | 60 | connect( v, SIGNAL( incidenceDropped( Incidence *, const QDate & ) ), |
60 | SIGNAL( incidenceDropped( Incidence *, const QDate & ) ) ); | 61 | SIGNAL( incidenceDropped( Incidence *, const QDate & ) ) ); |
61 | connect( v, SIGNAL( incidenceDroppedMove( Incidence *, const QDate & ) ), | 62 | connect( v, SIGNAL( incidenceDroppedMove( Incidence *, const QDate & ) ), |
62 | SIGNAL( incidenceDroppedMove( Incidence *, const QDate & ) ) ); | 63 | SIGNAL( incidenceDroppedMove( Incidence *, const QDate & ) ) ); |
63 | #endif | 64 | #endif |
@@ -162,43 +163,50 @@ void DateNavigatorContainer::resizeEvent( QResizeEvent * e ) | |||
162 | kdDebug(5850) << "DateNavigatorContainer::resizeEvent()" << endl; | 163 | kdDebug(5850) << "DateNavigatorContainer::resizeEvent()" << endl; |
163 | kdDebug(5850) << " CURRENT SIZE: " << size() << endl; | 164 | kdDebug(5850) << " CURRENT SIZE: " << size() << endl; |
164 | kdDebug(5850) << " MINIMUM SIZEHINT: " << minimumSizeHint() << endl; | 165 | kdDebug(5850) << " MINIMUM SIZEHINT: " << minimumSizeHint() << endl; |
165 | kdDebug(5850) << " SIZEHINT: " << sizeHint() << endl; | 166 | kdDebug(5850) << " SIZEHINT: " << sizeHint() << endl; |
166 | kdDebug(5850) << " MINIMUM SIZE: " << minimumSize() << endl; | 167 | kdDebug(5850) << " MINIMUM SIZE: " << minimumSize() << endl; |
167 | #endif | 168 | #endif |
168 | //QSize minSize = mNavigatorView->sizeHintTwoButtons(); | 169 | //QSize minSize = mNavigatorView->sizeHintTwoButtons(); |
169 | QSize minSize = mNavigatorView->yourSizeHint(); | 170 | QSize minSize = mNavigatorView->yourSizeHint(); |
170 | 171 | ||
171 | // kdDebug(5850) << " NAVIGATORVIEW minimumSizeHint: " << minSize << endl; | 172 | // kdDebug(5850) << " NAVIGATORVIEW minimumSizeHint: " << minSize << endl; |
172 | 173 | ||
173 | int verticalCount = size().height() / minSize.height(); | 174 | int verticalCount = size().height() / minSize.height(); |
174 | int horizontalCount = size().width() / minSize.width(); | 175 | int horizontalCount = size().width() / minSize.width(); |
175 | //qDebug(" wattdatt %d new %d %d ", size().width() ,e->size().width() , minSize.width() ); | 176 | //qDebug(" wattdatt %d new %d %d ", size().width() ,e->size().width() , minSize.width() ); |
176 | //qDebug("COUNT %d %d %d %d ", verticalCount, horizontalCount , mVerticalCount, mHorizontalCount ); | 177 | //qDebug("COUNT %d %d %d %d ", verticalCount, horizontalCount , mVerticalCount, mHorizontalCount ); |
177 | bool fontchange = false; | 178 | bool fontchange = false; |
179 | if ( horizontalCount == 1) | ||
180 | horizontalCount = size().width() / mNavigatorView->yourFullSizeHint().width(); | ||
178 | QFont fo; | 181 | QFont fo; |
179 | if ( horizontalCount != mHorizontalCount || | 182 | if ( horizontalCount != mHorizontalCount || |
180 | verticalCount != mVerticalCount ) { | 183 | verticalCount != mVerticalCount ) { |
181 | uint count = horizontalCount * verticalCount; | 184 | uint count = horizontalCount * verticalCount; |
182 | if ( count == 0 ) { | 185 | if ( count == 0 ) { |
183 | bool ok; | 186 | bool ok; |
184 | fo = mNavigatorView->yourFontHint( size() , &ok); | 187 | fo = mNavigatorView->yourFontHint( size() , &ok ); |
185 | //mNavigatorView->resize( size() ); | 188 | //mNavigatorView->resize( size() ); |
186 | //if ( ! ok ) | 189 | //if ( ! ok ) |
187 | // return; | 190 | // return; |
188 | minSize = mNavigatorView->sizeHintTwoButtons(); | 191 | int butt = 2; |
192 | horizontalCount = size().width() / mNavigatorView->sizeHintTwoButtons( ).width(); | ||
193 | if ( horizontalCount <= 1 ) | ||
194 | minSize = mNavigatorView->sizeHintTwoButtons( 4 ); | ||
195 | else | ||
196 | minSize = mNavigatorView->sizeHintTwoButtons(); | ||
189 | verticalCount = size().height() / minSize.height(); | 197 | verticalCount = size().height() / minSize.height(); |
190 | horizontalCount = size().width() / minSize.width(); | 198 | horizontalCount = size().width() / minSize.width(); |
191 | if ( horizontalCount == 0 ) | 199 | if ( horizontalCount == 0 ) |
192 | horizontalCount = 1; | 200 | horizontalCount = 1; |
193 | if ( verticalCount == 0 ) | 201 | if ( verticalCount == 0 ) |
194 | verticalCount = 1; | 202 | verticalCount = 1; |
195 | fontchange = true; | 203 | fontchange = true; |
196 | count = horizontalCount * verticalCount; | 204 | count = horizontalCount * verticalCount; |
197 | } else { | 205 | } else { |
198 | if ( mNavigatorView->fontChanged() ) { | 206 | if ( mNavigatorView->fontChanged() ) { |
199 | fontchange = true; | 207 | fontchange = true; |
200 | fo = KOPrefs::instance()->mDateNavigatorFont; | 208 | fo = KOPrefs::instance()->mDateNavigatorFont; |
201 | mNavigatorView->changeFont( fo ); | 209 | mNavigatorView->changeFont( fo ); |
202 | mNavigatorView->unsetFontChanged(); | 210 | mNavigatorView->unsetFontChanged(); |
203 | } | 211 | } |
204 | } | 212 | } |
@@ -218,32 +226,33 @@ void DateNavigatorContainer::resizeEvent( QResizeEvent * e ) | |||
218 | mExtraViews.at( iii )->show(); | 226 | mExtraViews.at( iii )->show(); |
219 | else | 227 | else |
220 | mExtraViews.at( iii )->hide(); | 228 | mExtraViews.at( iii )->hide(); |
221 | ++iii; | 229 | ++iii; |
222 | } | 230 | } |
223 | if ( fontchange ) { | 231 | if ( fontchange ) { |
224 | //mNavigatorView->changeFont( fo ); | 232 | //mNavigatorView->changeFont( fo ); |
225 | uint i; | 233 | uint i; |
226 | for( i = 0; i < mExtraViews.count(); ++i ) { | 234 | for( i = 0; i < mExtraViews.count(); ++i ) { |
227 | KDateNavigator *view = mExtraViews.at( i ); | 235 | KDateNavigator *view = mExtraViews.at( i ); |
228 | view->changeFont( fo ); | 236 | view->changeFont( fo ); |
229 | } | 237 | } |
230 | } | 238 | } |
231 | mHorizontalCount = horizontalCount; | 239 | mHorizontalCount = horizontalCount; |
232 | mVerticalCount = verticalCount; | 240 | mVerticalCount = verticalCount; |
233 | } | 241 | } |
242 | //qDebug("COUNT %d ", mExtraViews.count()); | ||
234 | int height = size().height() / verticalCount; | 243 | int height = size().height() / verticalCount; |
235 | int width = size().width() / horizontalCount; | 244 | int width = size().width() / horizontalCount; |
236 | 245 | ||
237 | NavigatorBar *bar = mNavigatorView->navigatorBar(); | 246 | NavigatorBar *bar = mNavigatorView->navigatorBar(); |
238 | if ( horizontalCount > 1 ) bar->showButtons( true, false ); | 247 | if ( horizontalCount > 1 ) bar->showButtons( true, false ); |
239 | else bar->showButtons( true, true ); | 248 | else bar->showButtons( true, true ); |
240 | 249 | ||
241 | mNavigatorView->setGeometry(0, | 250 | mNavigatorView->setGeometry(0, |
242 | 0, width, height ); | 251 | 0, width, height ); |
243 | for( uint i = 0; i < mExtraViews.count(); ++i ) { | 252 | for( uint i = 0; i < mExtraViews.count(); ++i ) { |
244 | int x = ( i + 1 ) % horizontalCount; | 253 | int x = ( i + 1 ) % horizontalCount; |
245 | int y = ( i + 1 ) / horizontalCount; | 254 | int y = ( i + 1 ) / horizontalCount; |
246 | 255 | ||
247 | KDateNavigator *view = mExtraViews.at( i ); | 256 | KDateNavigator *view = mExtraViews.at( i ); |
248 | bar = view->navigatorBar(); | 257 | bar = view->navigatorBar(); |
249 | if ( y > 0 ) bar->showButtons( false, false ); | 258 | if ( y > 0 ) bar->showButtons( false, false ); |