From 2add0a39efab1af658ab3515090b31fba30df0d5 Mon Sep 17 00:00:00 2001 From: alwin Date: Mon, 19 Apr 2004 11:39:36 +0000 Subject: last iconview mode will be saved and restored --- (limited to 'noncore/graphics/opie-eye/gui') diff --git a/noncore/graphics/opie-eye/gui/iconview.cpp b/noncore/graphics/opie-eye/gui/iconview.cpp index d546b64..660c4fa 100644 --- a/noncore/graphics/opie-eye/gui/iconview.cpp +++ b/noncore/graphics/opie-eye/gui/iconview.cpp @@ -170,13 +170,14 @@ PIconView::PIconView( QWidget* wid, Opie::Core::OConfig* cfg ) this, SLOT(slotClicked(QIconViewItem*)) ); m_view->setArrangement( QIconView::LeftToRight ); - m_view->setItemTextPos( QIconView::Right ); - int dw = QApplication::desktop()->width(); - int viewerWidth = dw-style().scrollBarExtent().width(); - m_view->setGridX( viewerWidth-3*m_view->spacing()); - m_view->setGridY( fontMetrics().height()*2+40 ); + m_mode = cfg->readNumEntry("ListViewMode", 1); + if (m_mode < 1 || m_mode>3) m_mode = 1; + + m_view->setItemTextPos( QIconView::Right ); + + calculateGrid(); initKeys(); @@ -565,19 +566,7 @@ void PIconView::slotChangeMode( int mode ) { if ( mode >= 1 && mode <= 3 ) m_mode = mode; - QIconView::ItemTextPos pos; - switch( m_mode ) { - case 2: - pos = QIconView::Bottom; - break; - case 3: - case 1: - default: - pos = QIconView::Right; - break; - } - m_view->setItemTextPos( pos ); - + m_cfg->writeEntry("ListViewMode", m_mode); calculateGrid(); slotReloadDir(); } @@ -592,7 +581,21 @@ void PIconView::resizeEvent( QResizeEvent* re ) { void PIconView::calculateGrid() { odebug << "Calc grid: x=" << m_view->gridX() << " y=" << m_view->gridY() << oendl; odebug << "Size of view: " << m_view->size() << oendl; + int dw = QApplication::desktop()->width(); + int viewerWidth = dw-style().scrollBarExtent().width(); + QIconView::ItemTextPos pos; + switch( m_mode ) { + case 2: + pos = QIconView::Bottom; + break; + case 3: + case 1: + default: + pos = QIconView::Right; + break; + } + m_view->setItemTextPos( pos ); switch (m_mode) { case 2: m_view->setGridX(50); @@ -600,14 +603,14 @@ void PIconView::calculateGrid() { PPixmapCache::self()->setMaxImages(40); break; case 3: - m_view->setGridX(m_view->width()); + m_view->setGridX( fontMetrics().width("testimage.jpg")+20); m_view->setGridY(8); PPixmapCache::self()->setMaxImages(2); break; case 1: default: - m_view->setGridX(m_view->width()); - m_view->setGridY(80); + m_view->setGridX( viewerWidth-3*m_view->spacing()); + m_view->setGridY( fontMetrics().height()*2+40 ); PPixmapCache::self()->setMaxImages(20); break; } diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp index ef6e6df..a90231b 100644 --- a/noncore/graphics/opie-eye/gui/mainwindow.cpp +++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp @@ -91,7 +91,9 @@ PMainWindow::PMainWindow(QWidget* wid, const char* name, WFlags style) m_view, SLOT(slotTrash() ) ); - viewModeButton = new ViewModeButton( bar ); + int mode = m_cfg->readNumEntry("ListViewMode", 1); + if (mode < 1 || mode>3) mode = 1; + viewModeButton = new ViewModeButton( bar,mode ); connect( viewModeButton, SIGNAL(changeMode(int)), m_view, SLOT(slotChangeMode(int))); diff --git a/noncore/graphics/opie-eye/gui/viewmodebutton.cpp b/noncore/graphics/opie-eye/gui/viewmodebutton.cpp index 0e4a7cb..36e5dcf 100644 --- a/noncore/graphics/opie-eye/gui/viewmodebutton.cpp +++ b/noncore/graphics/opie-eye/gui/viewmodebutton.cpp @@ -5,10 +5,10 @@ #include #include -ViewModeButton::ViewModeButton( QToolBar* bar ) +ViewModeButton::ViewModeButton( QToolBar* bar,int def ) : QToolButton( bar ) { - slotChange( 1 ); + slotChange( def ); QPopupMenu *pop= new QPopupMenu( this ); pop->setCheckable( true ); pop->insertItem( tr("Thumbnail and Imageinfo"), 1 ); diff --git a/noncore/graphics/opie-eye/gui/viewmodebutton.h b/noncore/graphics/opie-eye/gui/viewmodebutton.h index 3247114..48f0e67 100644 --- a/noncore/graphics/opie-eye/gui/viewmodebutton.h +++ b/noncore/graphics/opie-eye/gui/viewmodebutton.h @@ -13,7 +13,7 @@ class ViewModeButton : public QToolButton { Q_OBJECT public: - ViewModeButton( QToolBar* ); + ViewModeButton( QToolBar*,int def=1 ); ~ViewModeButton(); signals: -- cgit v0.9.0.2