-rw-r--r-- | korganizer/koagendaview.cpp | 45 | ||||
-rw-r--r-- | korganizer/koagendaview.h | 33 |
2 files changed, 50 insertions, 28 deletions
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp index d3db89a..c8cef44 100644 --- a/korganizer/koagendaview.cpp +++ b/korganizer/koagendaview.cpp | |||
@@ -78,2 +78,4 @@ using namespace KOrg; | |||
78 | 78 | ||
79 | |||
80 | |||
79 | TimeLabels::TimeLabels(int rows,QWidget *parent,const char *name,WFlags f) : | 81 | TimeLabels::TimeLabels(int rows,QWidget *parent,const char *name,WFlags f) : |
@@ -611,14 +613,13 @@ void KOAgendaView::resizeEvent( QResizeEvent* e ) | |||
611 | } | 613 | } |
612 | void KOAgendaView::slotDaylabelClicked() | 614 | void KOAgendaView::slotDaylabelClicked( int num ) |
613 | { | 615 | { |
614 | QString cap = ((QPushButton*) sender() )->caption(); | 616 | |
615 | |||
616 | QDate firstDate = mSelectedDates.first(); | 617 | QDate firstDate = mSelectedDates.first(); |
617 | if ( cap == "0" ) | 618 | if ( num == -1 ) |
618 | emit showDateView( 6, firstDate ); | 619 | emit showDateView( 6, firstDate ); |
619 | else if ( cap != "last" ) { | 620 | else if (num >= 0 ) { |
620 | if ( mSelectedDates.count() == 1) | 621 | if ( mSelectedDates.count() == 1) |
621 | emit showDateView( 9, firstDate.addDays( cap.toInt()-1 ) ); | 622 | emit showDateView( 9, firstDate.addDays( num ) ); |
622 | else | 623 | else |
623 | emit showDateView( 3, firstDate.addDays( cap.toInt()-1 ) ); | 624 | emit showDateView( 3, firstDate.addDays( num ) ); |
624 | } | 625 | } |
@@ -628,13 +629,9 @@ void KOAgendaView::slotDaylabelClicked() | |||
628 | 629 | ||
629 | QPushButton* KOAgendaView::getNewDaylabel() | 630 | KOAgendaButton* KOAgendaView::getNewDaylabel() |
630 | { | 631 | { |
631 | 632 | ||
632 | QPushButton * dayLabel = new QPushButton(mDayLabels); | 633 | KOAgendaButton * dayLabel = new KOAgendaButton(mDayLabels); |
633 | dayLabel->setFlat( true ); | 634 | connect( dayLabel, SIGNAL( numClicked(int) ), this, SLOT ( slotDaylabelClicked(int) ) ); |
634 | connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) ); | ||
635 | dayLabel->setFocusPolicy(NoFocus); | ||
636 | dayLabel->setSizePolicy(QSizePolicy( QSizePolicy::Expanding ,QSizePolicy::Expanding )); | ||
637 | mDayLabelsList.append( dayLabel ); | 635 | mDayLabelsList.append( dayLabel ); |
638 | mLayoutDayLabels->addWidget(dayLabel); | 636 | mLayoutDayLabels->addWidget(dayLabel); |
639 | //mLayoutDayLabels->setStretchFactor(dayLabel, 100); | ||
640 | return dayLabel ; | 637 | return dayLabel ; |
@@ -664,3 +661,3 @@ void KOAgendaView::createDayLabels() | |||
664 | int selCount = mSelectedDates.count(); | 661 | int selCount = mSelectedDates.count(); |
665 | QString dayTest = "Won 20"; | 662 | QString dayTest = "Mon 20"; |
666 | //QString dayTest = "Mon 20"; | 663 | //QString dayTest = "Mon 20"; |
@@ -668,3 +665,3 @@ void KOAgendaView::createDayLabels() | |||
668 | //maxWid -= ( selCount * 3 ); //working for QLabels | 665 | //maxWid -= ( selCount * 3 ); //working for QLabels |
669 | maxWid -= ( selCount * 5 ); //working for QPushButton | 666 | maxWid -= ( selCount * 3 ); //working for QPushButton |
670 | if ( maxWid < 0 ) | 667 | if ( maxWid < 0 ) |
@@ -677,3 +674,3 @@ void KOAgendaView::createDayLabels() | |||
677 | dayTest = dayTest.left( dayTest.length() - 1 ); | 674 | dayTest = dayTest.left( dayTest.length() - 1 ); |
678 | wid = fm.width( dayTest )+1; | 675 | wid = fm.width( dayTest ); |
679 | needWid = wid * selCount; | 676 | needWid = wid * selCount; |
@@ -688,3 +685,3 @@ void KOAgendaView::createDayLabels() | |||
688 | QFontMetrics f( dlf ); | 685 | QFontMetrics f( dlf ); |
689 | wid = f.width( "30" )+3; | 686 | wid = f.width( "30" ); |
690 | needWid = wid * selCount; | 687 | needWid = wid * selCount; |
@@ -705,3 +702,3 @@ void KOAgendaView::createDayLabels() | |||
705 | bool appendLabels = false; | 702 | bool appendLabels = false; |
706 | QPushButton *dayLabel; | 703 | KOAgendaButton *dayLabel; |
707 | dayLabel = mDayLabelsList.first(); | 704 | dayLabel = mDayLabelsList.first(); |
@@ -713,3 +710,3 @@ void KOAgendaView::createDayLabels() | |||
713 | dayLabel->setFont( dlf ); | 710 | dayLabel->setFont( dlf ); |
714 | dayLabel->setCaption("0"); | 711 | dayLabel->setNum( -1 ); |
715 | //dayLabel->setAlignment(QLabel::AlignHCenter); | 712 | //dayLabel->setAlignment(QLabel::AlignHCenter); |
@@ -719,3 +716,3 @@ void KOAgendaView::createDayLabels() | |||
719 | bool oneday = (mSelectedDates.first() == mSelectedDates.last() ); | 716 | bool oneday = (mSelectedDates.first() == mSelectedDates.last() ); |
720 | int counter = 0; | 717 | int counter = -1; |
721 | for( dit = mSelectedDates.begin(); dit != mSelectedDates.end(); ++dit ) { | 718 | for( dit = mSelectedDates.begin(); dit != mSelectedDates.end(); ++dit ) { |
@@ -733,6 +730,6 @@ void KOAgendaView::createDayLabels() | |||
733 | dayLabel->setMinimumWidth( 1 ); | 730 | dayLabel->setMinimumWidth( 1 ); |
734 | dayLabel->setMaximumWidth( 2048 ); | 731 | dayLabel->setMaximumWidth( 1024 ); |
735 | dayLabel->setFont( dlf ); | 732 | dayLabel->setFont( dlf ); |
736 | dayLabel->show(); | 733 | dayLabel->show(); |
737 | dayLabel->setCaption(QString::number( counter )); | 734 | dayLabel->setNum( counter ); |
738 | QString str; | 735 | QString str; |
@@ -826,3 +823,3 @@ void KOAgendaView::createDayLabels() | |||
826 | dayLabel->show(); | 823 | dayLabel->show(); |
827 | dayLabel->setCaption("last"); | 824 | dayLabel->setNum( -2 ); |
828 | dayLabel->setFixedWidth( mAgenda->verticalScrollBar()->width()+ offset ); | 825 | dayLabel->setFixedWidth( mAgenda->verticalScrollBar()->width()+ offset ); |
diff --git a/korganizer/koagendaview.h b/korganizer/koagendaview.h index cbe86b6..e9e85cc 100644 --- a/korganizer/koagendaview.h +++ b/korganizer/koagendaview.h | |||
@@ -27,2 +27,3 @@ | |||
27 | #include <qdatetime.h> | 27 | #include <qdatetime.h> |
28 | #include <qpushbutton.h> | ||
28 | #include <qlayout.h> | 29 | #include <qlayout.h> |
@@ -37,3 +38,2 @@ | |||
37 | 38 | ||
38 | |||
39 | class QHBox; | 39 | class QHBox; |
@@ -47,2 +47,27 @@ class KConfig; | |||
47 | class KDGanttMinimizeSplitter; | 47 | class KDGanttMinimizeSplitter; |
48 | |||
49 | class KOAgendaButton : public QPushButton | ||
50 | { | ||
51 | Q_OBJECT | ||
52 | public: | ||
53 | KOAgendaButton( QWidget *parent=0, const char *name=0 ) : | ||
54 | QPushButton( parent, name ) | ||
55 | { | ||
56 | mNum = -3; | ||
57 | setFlat( true ); | ||
58 | setFocusPolicy(NoFocus); | ||
59 | setSizePolicy(QSizePolicy( QSizePolicy::Expanding ,QSizePolicy::Expanding )); | ||
60 | connect( this, SIGNAL( clicked() ), this, SLOT ( bClicked() ) ); | ||
61 | }; | ||
62 | |||
63 | QSize sizeHint () const { return QSize( 5,5) ;} | ||
64 | void setNum( int n) { mNum = n; } | ||
65 | private slots: | ||
66 | void bClicked() {emit numClicked( mNum);} | ||
67 | signals: | ||
68 | void numClicked( int ); | ||
69 | private: | ||
70 | int mNum; | ||
71 | }; | ||
72 | |||
48 | class TimeLabels : public QScrollView { | 73 | class TimeLabels : public QScrollView { |
@@ -192,3 +217,3 @@ class KOAgendaView : public KOEventView { | |||
192 | protected: | 217 | protected: |
193 | QPushButton* getNewDaylabel(); | 218 | KOAgendaButton* getNewDaylabel(); |
194 | bool mBlockUpdating; | 219 | bool mBlockUpdating; |
@@ -210,3 +235,3 @@ class KOAgendaView : public KOEventView { | |||
210 | protected slots: | 235 | protected slots: |
211 | void slotDaylabelClicked(); | 236 | void slotDaylabelClicked( int ); |
212 | /** Update event belonging to agenda item */ | 237 | /** Update event belonging to agenda item */ |
@@ -256,3 +281,3 @@ class KOAgendaView : public KOEventView { | |||
256 | QPixmap mNotExpandedPixmap; | 281 | QPixmap mNotExpandedPixmap; |
257 | QPtrList<QPushButton> mDayLabelsList; | 282 | QPtrList<KOAgendaButton> mDayLabelsList; |
258 | QDateTime mTimeSpanBegin; | 283 | QDateTime mTimeSpanBegin; |