SVN commit 1210510 by pino: Q3IntDict -> QHash M +9 -8 kpager.cpp M +2 -3 kpager.h --- trunk/extragear/utils/kpager/kpager.cpp #1210509:1210510 @@ -195,8 +195,6 @@ { setObjectName( name ); - m_windows.setAutoDelete(true); // delete windows info after removal - QPalette pal = palette(); pal.setColor( backgroundRole(), Qt::black ); setPalette( pal ); @@ -248,6 +246,7 @@ KPager::~KPager() { + qDeleteAll(m_windows); } @@ -394,7 +393,7 @@ KWindowInfo* KPager::info( WId win ) { - KWindowInfo* info = m_windows[win]; + KWindowInfo* info = m_windows.value(win); if (!info ) { info = new KWindowInfo( KWindowSystem::windowInfo( win, @@ -405,7 +404,7 @@ delete info; return NULL; // window no longer valid } - m_windows.insert( (long) win, info ); + m_windows.insert( win, info ); } return info; } @@ -444,18 +443,19 @@ void KPager::slotWindowRemoved( WId win ) { - KWindowInfo* inf = m_windows[win]; + KWindowInfo* inf = m_windows.value(win); if (inf) { bool onAllDesktops = inf->onAllDesktops(); int desktop = inf->desktop(); - m_windows.remove( (long)win ); + m_windows.remove( win ); Desktop::removeCachedPixmap(win); for (int i = 1; i <= (int) m_desktops.count(); ++i) { if (onAllDesktops || desktop == i) m_desktops[i-1]->update(); } + delete inf; } } @@ -463,7 +463,7 @@ { bool repaint=false; - KWindowInfo* inf = m_windows[win]; + KWindowInfo* inf = m_windows.value(win); if (!inf) { inf=info(win); @@ -477,7 +477,8 @@ if (prop) { - m_windows.remove( (long) win ); + delete m_windows[win]; + m_windows.remove( win ); inf = info( win ); } --- trunk/extragear/utils/kpager/kpager.h #1210509:1210510 @@ -26,12 +26,11 @@ #define __KPAGER_H #include -#include -//Added by qt3to4: #include #include #include #include +#include #include #include @@ -117,7 +116,7 @@ protected: QList m_desktops; - Q3IntDict m_windows; + QHash m_windows; WId m_activeWin; const QString lWidth();