summaryrefslogtreecommitdiffabout
path: root/korganizer/komonthview.cpp
Unidiff
Diffstat (limited to 'korganizer/komonthview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/komonthview.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index 4aeb20c..8d06040 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -73,24 +73,25 @@ protected:
73private: 73private:
74 KNoScrollListBox* _wid; 74 KNoScrollListBox* _wid;
75 75
76}; 76};
77 77
78 78
79KNoScrollListBox::KNoScrollListBox(QWidget *parent,const char *name) 79KNoScrollListBox::KNoScrollListBox(QWidget *parent,const char *name)
80 : QListBox(parent, name, WRepaintNoErase) 80 : QListBox(parent, name, WRepaintNoErase)
81{ 81{
82#ifndef DESKTOP_VERSION 82#ifndef DESKTOP_VERSION
83 QPEApplication::setStylusOperation( viewport(), QPEApplication::RightOnHold ); 83 QPEApplication::setStylusOperation( viewport(), QPEApplication::RightOnHold );
84#endif 84#endif
85 mBlockDeselect = false;
85 mWT = new KNOWhatsThis(this); 86 mWT = new KNOWhatsThis(this);
86 resetOnFocusIn = true; 87 resetOnFocusIn = true;
87 setVScrollBarMode(QScrollView::AlwaysOff); 88 setVScrollBarMode(QScrollView::AlwaysOff);
88 setHScrollBarMode(QScrollView::AlwaysOff); 89 setHScrollBarMode(QScrollView::AlwaysOff);
89} 90}
90KNoScrollListBox::~KNoScrollListBox() 91KNoScrollListBox::~KNoScrollListBox()
91{ 92{
92#if QT_VERSION >= 0x030000 93#if QT_VERSION >= 0x030000
93 94
94#else 95#else
95 delete mWT; 96 delete mWT;
96#endif 97#endif
@@ -126,32 +127,36 @@ void KNoScrollListBox::focusInEvent ( QFocusEvent * e )
126 else { 127 else {
127 setHScrollBarMode(QScrollView::Auto); 128 setHScrollBarMode(QScrollView::Auto);
128 } 129 }
129 } else { 130 } else {
130 setVScrollBarMode(QScrollView::Auto); 131 setVScrollBarMode(QScrollView::Auto);
131 setHScrollBarMode(QScrollView::Auto); 132 setHScrollBarMode(QScrollView::Auto);
132 } 133 }
133 } 134 }
134 } 135 }
135} 136}
136void KNoScrollListBox::focusOutEvent ( QFocusEvent * e ) 137void KNoScrollListBox::focusOutEvent ( QFocusEvent * e )
137{ 138{
139 if ( ! mBlockDeselect ) {
138 int i = currentItem (); 140 int i = currentItem ();
139 if ( i >= 0 ) { 141 if ( i >= 0 ) {
140 setSelected ( i, false ); 142 setSelected ( i, false );
141 } 143 }
142 QListBox::focusOutEvent ( e ); 144 QListBox::focusOutEvent ( e );
145 }
143 setVScrollBarMode(QScrollView::AlwaysOff); 146 setVScrollBarMode(QScrollView::AlwaysOff);
144 setHScrollBarMode(QScrollView::AlwaysOff); 147 setHScrollBarMode(QScrollView::AlwaysOff);
145 emit highlightIncidence( 0, (MonthViewCell*)this, 0 ); 148 if ( ! mBlockDeselect )
149 emit highlightIncidence( 0, (MonthViewCell*)this, 0 );
150 mBlockDeselect = false;
146} 151}
147 152
148QString KNoScrollListBox::getWhatsThisText(QPoint p) 153QString KNoScrollListBox::getWhatsThisText(QPoint p)
149{ 154{
150 QListBoxItem* item = itemAt ( p ); 155 QListBoxItem* item = itemAt ( p );
151 if ( ! item ) { 156 if ( ! item ) {
152 return i18n("Click in the cell\nto add an event!"); 157 return i18n("Click in the cell\nto add an event!");
153 } 158 }
154 return KIncidenceFormatter::instance()->getFormattedText(((MonthViewItem*) item)->incidence(), 159 return KIncidenceFormatter::instance()->getFormattedText(((MonthViewItem*) item)->incidence(),
155 KOPrefs::instance()->mWTshowDetails, 160 KOPrefs::instance()->mWTshowDetails,
156 KOPrefs::instance()->mWTshowCreated, 161 KOPrefs::instance()->mWTshowCreated,
157 KOPrefs::instance()->mWTshowChanged); 162 KOPrefs::instance()->mWTshowChanged);
@@ -1101,27 +1106,26 @@ void MonthViewCell::cellClicked( QListBoxItem *item )
1101void MonthViewCell::contextMenu( QListBoxItem *item ) 1106void MonthViewCell::contextMenu( QListBoxItem *item )
1102{ 1107{
1103 mMonthView->setPopupCell( this ); 1108 mMonthView->setPopupCell( this );
1104 if ( !item ) { 1109 if ( !item ) {
1105 mMonthView->showContextMenu( 0 ); 1110 mMonthView->showContextMenu( 0 );
1106 return; 1111 return;
1107 } 1112 }
1108 //selection( item ); 1113 //selection( item );
1109 //qApp->processEvents(); 1114 //qApp->processEvents();
1110 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item ); 1115 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item );
1111 Incidence *incidence = eventItem->incidence(); 1116 Incidence *incidence = eventItem->incidence();
1112 if ( incidence ) { 1117 if ( incidence ) {
1118 mBlockDeselect = true;
1113 mMonthView->showContextMenu( incidence ); 1119 mMonthView->showContextMenu( incidence );
1114 selection( item );
1115 doHighLight( incidence );
1116 } 1120 }
1117} 1121}
1118 1122
1119void MonthViewCell::selection( QListBoxItem *item ) 1123void MonthViewCell::selection( QListBoxItem *item )
1120{ 1124{
1121 if ( !item ) { 1125 if ( !item ) {
1122 emit highlightIncidence( 0 , this, 0 ); 1126 emit highlightIncidence( 0 , this, 0 );
1123 return; 1127 return;
1124 } 1128 }
1125 MonthViewItem * it = (static_cast<MonthViewItem *>( item )); 1129 MonthViewItem * it = (static_cast<MonthViewItem *>( item ));
1126 emit highlightIncidence( it->incidence(), this, it->multiDay() ); 1130 emit highlightIncidence( it->incidence(), this, it->multiDay() );
1127 mMonthView->setSelectedCell( this ); 1131 mMonthView->setSelectedCell( this );