-rw-r--r-- | korganizer/koagenda.cpp | 6 | ||||
-rw-r--r-- | korganizer/koagendaitem.cpp | 11 | ||||
-rw-r--r-- | korganizer/koagendaitem.h | 1 |
3 files changed, 15 insertions, 3 deletions
diff --git a/korganizer/koagenda.cpp b/korganizer/koagenda.cpp index 01cef35..0280c74 100644 --- a/korganizer/koagenda.cpp +++ b/korganizer/koagenda.cpp @@ -1665,10 +1665,12 @@ void KOAgenda::updateTodo( Todo * todo, int days, bool remove) itemit=oldconflictItems.next() ) { globalFlagBlockAgendaItemUpdate = 0; if ( itemit != item ) itemit->repaintMe(); - globalFlagBlockAgendaItemUpdate = 1; - itemit->repaint(); + globalFlagBlockAgendaItemUpdate = 1; + //qDebug("sigleshot "); + QTimer::singleShot( 0, itemit, SLOT ( repaintItem() )); + //itemit->repaint( false ); repaintItem() } blockSignals( false ); } if ( remove ) { diff --git a/korganizer/koagendaitem.cpp b/korganizer/koagendaitem.cpp index f855b03..8675ff6 100644 --- a/korganizer/koagendaitem.cpp +++ b/korganizer/koagendaitem.cpp @@ -491,15 +491,24 @@ QPixmap * KOAgendaItem::paintPixAllday() } return mPaintPixA ; } +void KOAgendaItem::repaintItem() +{ + globalFlagBlockAgendaItemPaint = 0; + globalFlagBlockAgenda = 0; + //qDebug("AAA "); + repaint( false ); + //qDebug("BBB "); +} void KOAgendaItem::paintEvent ( QPaintEvent *e ) { - + qDebug("CCC "); if ( globalFlagBlockAgendaItemPaint ) return; if ( globalFlagBlockAgenda > 0 && globalFlagBlockAgenda < 5 ) return; + qDebug("DDD "); int yy; if ( mAllDay ) yy = y(); else diff --git a/korganizer/koagendaitem.h b/korganizer/koagendaitem.h index 3ed68b0..99c564a 100644 --- a/korganizer/koagendaitem.h +++ b/korganizer/koagendaitem.h @@ -110,8 +110,9 @@ class KOAgendaItem : public QWidget void initColor (); public slots: bool updateIcons( QPainter *, bool ); void select(bool=true); + void repaintItem(); protected: void dragEnterEvent(QDragEnterEvent *e); void dropEvent(QDropEvent *e); |