summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/graphics/opie-eye/gui/iconview.cpp21
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) {
258void PIconView::slotThumbInfo( const QString& _path, const QString& str ) { 264void 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 ) {
266void PIconView::slotThumbNail(const QString& _path, const QPixmap &pix) { 274void 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 }