-rw-r--r-- | korganizer/mainwindow.cpp | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 7810bf9..61c39f5 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -2030,16 +2030,33 @@ void MainWindow::weekAction() | |||
2030 | { | 2030 | { |
2031 | int month; | 2031 | int month; |
2032 | KPopupFrame* popup = new KPopupFrame(this); | 2032 | KPopupFrame* popup = new KPopupFrame(this); |
2033 | int size = 12; | 2033 | KDateInternalWeekPicker* picker = new KDateInternalWeekPicker(10, popup); |
2034 | if ( QApplication::desktop()->width() >= 480 ) | ||
2035 | size = 18; | ||
2036 | KDateInternalWeekPicker* picker = new KDateInternalWeekPicker(size, popup); | ||
2037 | // ----- | 2034 | // ----- |
2038 | picker->resize(picker->sizeHint()); | 2035 | picker->resize(picker->sizeHint()); |
2039 | popup->setMainWidget(picker); | 2036 | popup->setMainWidget(picker); |
2040 | picker->setFocus(); | 2037 | picker->setFocus(); |
2041 | connect(picker, SIGNAL(closeMe(int)), popup, SLOT(close(int))); | 2038 | connect(picker, SIGNAL(closeMe(int)), popup, SLOT(close(int))); |
2042 | if(popup->exec(iconToolBar->mapToGlobal(QPoint(0, iconToolBar->height())))) | 2039 | int x = 0; |
2040 | int y = iconToolBar->height(); | ||
2041 | int dX = 0; | ||
2042 | int dY = 0; | ||
2043 | if ( iconToolBar->orientation () == Qt:: Horizontal ) { | ||
2044 | if ( iconToolBar->y() > height()/2 ) { | ||
2045 | dY = iconToolBar->height()+picker->sizeHint().height(); | ||
2046 | y = 0; | ||
2047 | } | ||
2048 | } else { | ||
2049 | if ( iconToolBar->x() > width()/2 ) { // right side | ||
2050 | x=0; | ||
2051 | dX= iconToolBar->width()+picker->sizeHint().width(); | ||
2052 | y = 0; | ||
2053 | } else { | ||
2054 | x= iconToolBar->width(); | ||
2055 | y = 0; | ||
2056 | } | ||
2057 | } | ||
2058 | qDebug("dax %d dy %d %d %d ", dX, dY, iconToolBar->x(), iconToolBar->y() ); | ||
2059 | if(popup->exec(iconToolBar->mapToGlobal(QPoint(x,y)-QPoint( dX,dY)))) | ||
2043 | { | 2060 | { |
2044 | month = picker->getResult(); | 2061 | month = picker->getResult(); |
2045 | emit selectWeek ( month ); | 2062 | emit selectWeek ( month ); |