-rw-r--r-- | noncore/graphics/opie-eye/gui/iconview.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/noncore/graphics/opie-eye/gui/iconview.cpp b/noncore/graphics/opie-eye/gui/iconview.cpp index 729b64f..aeaa3c6 100644 --- a/noncore/graphics/opie-eye/gui/iconview.cpp +++ b/noncore/graphics/opie-eye/gui/iconview.cpp | |||
@@ -38,6 +38,7 @@ namespace { | |||
38 | QString path()const { return m_path; } | 38 | QString path()const { return m_path; } |
39 | bool isDir()const { return m_isDir; } | 39 | bool isDir()const { return m_isDir; } |
40 | void setText( const QString& ); | 40 | void setText( const QString& ); |
41 | void reCalc(); | ||
41 | private: | 42 | private: |
42 | mutable QPixmap* m_pix; | 43 | mutable QPixmap* m_pix; |
43 | QString m_path; | 44 | QString m_path; |
@@ -86,6 +87,11 @@ namespace { | |||
86 | m_noInfo = true; | 87 | m_noInfo = true; |
87 | QIconViewItem::setText( text ); | 88 | QIconViewItem::setText( text ); |
88 | } | 89 | } |
90 | |||
91 | inline void IconViewItem::reCalc() | ||
92 | { | ||
93 | calcRect(); | ||
94 | } | ||
89 | } | 95 | } |
90 | 96 | ||
91 | 97 | ||
@@ -111,7 +117,7 @@ PIconView::PIconView( QWidget* wid, Config* cfg ) | |||
111 | 117 | ||
112 | m_view->setArrangement( QIconView::LeftToRight ); | 118 | m_view->setArrangement( QIconView::LeftToRight ); |
113 | m_view->setItemTextPos( QIconView::Right ); | 119 | m_view->setItemTextPos( QIconView::Right ); |
114 | 120 | m_view->setResizeMode(QIconView::Adjust); | |
115 | 121 | ||
116 | int dw = QApplication::desktop()->width(); | 122 | int dw = QApplication::desktop()->width(); |
117 | int viewerWidth = dw-style().scrollBarExtent().width(); | 123 | int viewerWidth = dw-style().scrollBarExtent().width(); |
@@ -258,7 +264,9 @@ void PIconView::slotClicked(QIconViewItem* _it) { | |||
258 | void PIconView::slotThumbInfo( const QString& _path, const QString& str ) { | 264 | void PIconView::slotThumbInfo( const QString& _path, const QString& str ) { |
259 | if ( g_stringInf.contains( _path ) ) { | 265 | if ( g_stringInf.contains( _path ) ) { |
260 | IconViewItem* item = g_stringInf[_path]; | 266 | IconViewItem* item = g_stringInf[_path]; |
261 | item->setText( str ); | 267 | /* if set the view shows nonsens! |
268 | I dont know how to fix the format of displayed text :(*/ | ||
269 | //item->setText( str ); | ||
262 | item->repaint(); | 270 | item->repaint(); |
263 | g_stringInf.remove( _path ); | 271 | g_stringInf.remove( _path ); |
264 | } | 272 | } |
@@ -266,7 +274,14 @@ void PIconView::slotThumbInfo( const QString& _path, const QString& str ) { | |||
266 | void PIconView::slotThumbNail(const QString& _path, const QPixmap &pix) { | 274 | void PIconView::slotThumbNail(const QString& _path, const QPixmap &pix) { |
267 | if ( g_stringPix.contains( _path ) ) { | 275 | if ( g_stringPix.contains( _path ) ) { |
268 | IconViewItem* item = g_stringPix[_path]; | 276 | IconViewItem* item = g_stringPix[_path]; |
269 | PPixmapCache::self()->insertImage( _path, pix, 64, 64 ); | 277 | |
278 | if (pix.width()>0) { | ||
279 | PPixmapCache::self()->insertImage( _path, pix, 64, 64 ); | ||
280 | /* required for a recalculated rectangle. otherwise the view show nonsense! */ | ||
281 | item->reCalc(); | ||
282 | } else { | ||
283 | PPixmapCache::self()->insertImage(_path,Resource::loadPixmap( "UnknownDocument" ),64,64 ); | ||
284 | } | ||
270 | item->repaint(); | 285 | item->repaint(); |
271 | g_stringPix.remove( _path ); | 286 | g_stringPix.remove( _path ); |
272 | } | 287 | } |