author | alwin <alwin> | 2004-04-21 23:15:47 (UTC) |
---|---|---|
committer | alwin <alwin> | 2004-04-21 23:15:47 (UTC) |
commit | 9230c9dd6bef33603cef1727be95dafc8065f66c (patch) (unidiff) | |
tree | 076da2786297367a15e8929784933d8e9bd02576 | |
parent | 15abdc3ac4e7406d15a8a59f43b3ae669099074a (diff) | |
download | opie-9230c9dd6bef33603cef1727be95dafc8065f66c.zip opie-9230c9dd6bef33603cef1727be95dafc8065f66c.tar.gz opie-9230c9dd6bef33603cef1727be95dafc8065f66c.tar.bz2 |
saves the last view used.
-rw-r--r-- | noncore/graphics/opie-eye/gui/iconview.cpp | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/noncore/graphics/opie-eye/gui/iconview.cpp b/noncore/graphics/opie-eye/gui/iconview.cpp index 77597d2..6c5f5ea 100644 --- a/noncore/graphics/opie-eye/gui/iconview.cpp +++ b/noncore/graphics/opie-eye/gui/iconview.cpp | |||
@@ -155,39 +155,51 @@ PIconView::PIconView( QWidget* wid, Opie::Core::OConfig* cfg ) | |||
155 | m_path = QDir::homeDirPath(); | 155 | m_path = QDir::homeDirPath(); |
156 | m_mode = 0; | 156 | m_mode = 0; |
157 | 157 | ||
158 | QHBox *hbox = new QHBox( this ); | 158 | QHBox *hbox = new QHBox( this ); |
159 | QLabel* lbl = new QLabel( hbox ); | 159 | QLabel* lbl = new QLabel( hbox ); |
160 | lbl->setText( tr("View as" ) ); | 160 | lbl->setText( tr("View as" ) ); |
161 | 161 | ||
162 | m_views = new QComboBox( hbox, "View As" ); | 162 | m_views = new QComboBox( hbox, "View As" ); |
163 | connect( m_views, SIGNAL(activated(int)), | ||
164 | this, SLOT(slotViewChanged(int)) ); | ||
165 | 163 | ||
166 | m_view= new QIconView( this ); | 164 | m_view= new QIconView( this ); |
167 | connect(m_view, SIGNAL(clicked(QIconViewItem*) ), | 165 | connect(m_view, SIGNAL(clicked(QIconViewItem*) ), |
168 | this, SLOT(slotClicked(QIconViewItem*)) ); | 166 | this, SLOT(slotClicked(QIconViewItem*)) ); |
169 | connect(m_view, SIGNAL(returnPressed(QIconViewItem*)), | 167 | connect(m_view, SIGNAL(returnPressed(QIconViewItem*)), |
170 | this, SLOT(slotClicked(QIconViewItem*)) ); | 168 | this, SLOT(slotClicked(QIconViewItem*)) ); |
171 | 169 | ||
172 | m_view->setArrangement( QIconView::LeftToRight ); | 170 | m_view->setArrangement( QIconView::LeftToRight ); |
173 | 171 | ||
174 | m_mode = cfg->readNumEntry("ListViewMode", 1); | 172 | m_mode = m_cfg->readNumEntry("ListViewMode", 1); |
173 | QString lastView = m_cfg->readEntry("LastView",""); | ||
175 | 174 | ||
176 | if (m_mode < 1 || m_mode>3) m_mode = 1; | 175 | if (m_mode < 1 || m_mode>3) m_mode = 1; |
177 | 176 | ||
178 | m_view->setItemTextPos( QIconView::Right ); | 177 | m_view->setItemTextPos( QIconView::Right ); |
179 | 178 | ||
180 | calculateGrid(); | 179 | calculateGrid(); |
181 | 180 | ||
182 | initKeys(); | 181 | initKeys(); |
183 | 182 | ||
184 | loadViews(); | 183 | loadViews(); |
185 | slotViewChanged( m_views->currentItem() ); | 184 | int cc=0; |
185 | for (; cc<m_views->count();++cc) { | ||
186 | if (m_views->text(cc)==lastView) { | ||
187 | break; | ||
188 | } | ||
189 | } | ||
190 | if (cc<m_views->count()) { | ||
191 | m_views->setCurrentItem(cc); | ||
192 | slotViewChanged(cc); | ||
193 | } else { | ||
194 | slotViewChanged(m_views->currentItem()); | ||
195 | } | ||
196 | connect( m_views, SIGNAL(activated(int)), | ||
197 | this, SLOT(slotViewChanged(int)) ); | ||
186 | } | 198 | } |
187 | 199 | ||
188 | /* | 200 | /* |
189 | * Unref the slave and save the keyboard manager | 201 | * Unref the slave and save the keyboard manager |
190 | */ | 202 | */ |
191 | PIconView::~PIconView() { | 203 | PIconView::~PIconView() { |
192 | { | 204 | { |
193 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refDown()" ); | 205 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refDown()" ); |
@@ -367,16 +379,18 @@ void PIconView::slotViewChanged( int i) { | |||
367 | if (cur) delete cur; | 379 | if (cur) delete cur; |
368 | QString str = m_views->text(i); | 380 | QString str = m_views->text(i); |
369 | ViewMap* map = viewMap(); | 381 | ViewMap* map = viewMap(); |
370 | if (!map) {setCurrentView(0l); return;} | 382 | if (!map) {setCurrentView(0l); return;} |
371 | if (map->find(str) == map->end()) { | 383 | if (map->find(str) == map->end()) { |
372 | owarn << "Key not found" << oendl; | 384 | owarn << "Key not found" << oendl; |
373 | setCurrentView(0l); return; | 385 | setCurrentView(0l); return; |
374 | } | 386 | } |
387 | m_cfg->writeEntry("LastView",str); | ||
388 | m_cfg->write(); | ||
375 | cur = (*(*map)[str])(*m_cfg); | 389 | cur = (*(*map)[str])(*m_cfg); |
376 | setCurrentView( cur ); | 390 | setCurrentView( cur ); |
377 | 391 | ||
378 | /* connect to the signals of the lister */ | 392 | /* connect to the signals of the lister */ |
379 | PDirLister* lis = cur->dirLister(); | 393 | PDirLister* lis = cur->dirLister(); |
380 | connect(lis, SIGNAL(sig_thumbInfo(const QString&, const QString& )), | 394 | connect(lis, SIGNAL(sig_thumbInfo(const QString&, const QString& )), |
381 | this, SLOT( slotThumbInfo(const QString&, const QString&))); | 395 | this, SLOT( slotThumbInfo(const QString&, const QString&))); |
382 | connect(lis, SIGNAL( sig_thumbNail(const QString&, const QPixmap&)), | 396 | connect(lis, SIGNAL( sig_thumbNail(const QString&, const QPixmap&)), |