-rw-r--r-- | noncore/graphics/opie-eye/gui/iconview.cpp | 5 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/imageinfoui.cpp | 6 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/imageview.cpp | 4 |
3 files changed, 0 insertions, 15 deletions
diff --git a/noncore/graphics/opie-eye/gui/iconview.cpp b/noncore/graphics/opie-eye/gui/iconview.cpp index 9365932..ca5746d 100644 --- a/noncore/graphics/opie-eye/gui/iconview.cpp +++ b/noncore/graphics/opie-eye/gui/iconview.cpp | |||
@@ -136,261 +136,256 @@ namespace { | |||
136 | int offy = (m_iconsize-_unkPix->height())/2; | 136 | int offy = (m_iconsize-_unkPix->height())/2; |
137 | if (offy<0) offy=0; | 137 | if (offy<0) offy=0; |
138 | pa.drawPixmap(offset,offy,*_unkPix); | 138 | pa.drawPixmap(offset,offy,*_unkPix); |
139 | pa.end(); | 139 | pa.end(); |
140 | } | 140 | } |
141 | } | 141 | } |
142 | } | 142 | } |
143 | 143 | ||
144 | inline void IconViewItem::setPixmap( const QPixmap & , bool, bool ) | 144 | inline void IconViewItem::setPixmap( const QPixmap & , bool, bool ) |
145 | { | 145 | { |
146 | m_Pixset = true; | 146 | m_Pixset = true; |
147 | calcRect(text()); | 147 | calcRect(text()); |
148 | } | 148 | } |
149 | inline void IconViewItem::setPixmap( const QPixmap & ) | 149 | inline void IconViewItem::setPixmap( const QPixmap & ) |
150 | { | 150 | { |
151 | m_Pixset = true; | 151 | m_Pixset = true; |
152 | calcRect(text()); | 152 | calcRect(text()); |
153 | } | 153 | } |
154 | 154 | ||
155 | inline QPixmap* IconViewItem::pixmap()const { | 155 | inline QPixmap* IconViewItem::pixmap()const { |
156 | // owarn << "Name is " << m_path.right( 15 ) << " rect is " << rect().x() << " " << rect().y() | 156 | // owarn << "Name is " << m_path.right( 15 ) << " rect is " << rect().x() << " " << rect().y() |
157 | // << " " << rect().width() << " " << rect().height() << " | " << iconView()->contentsX() | 157 | // << " " << rect().width() << " " << rect().height() << " | " << iconView()->contentsX() |
158 | // << " " << iconView()->contentsY() << oendl; | 158 | // << " " << iconView()->contentsY() << oendl; |
159 | 159 | ||
160 | if (textOnly()&&!m_isDir) { | 160 | if (textOnly()&&!m_isDir) { |
161 | if (!_emptyPix) _emptyPix = new QPixmap(0,0,1); | 161 | if (!_emptyPix) _emptyPix = new QPixmap(0,0,1); |
162 | return _emptyPix; | 162 | return _emptyPix; |
163 | } | 163 | } |
164 | if ( m_isDir ) | 164 | if ( m_isDir ) |
165 | return _dirPix; | 165 | return _dirPix; |
166 | else{ | 166 | else{ |
167 | if (!m_noInfo && !g_stringInf.contains( m_path ) ) { | 167 | if (!m_noInfo && !g_stringInf.contains( m_path ) ) { |
168 | g_stringInf.insert( m_path, const_cast<IconViewItem*>(this)); | 168 | g_stringInf.insert( m_path, const_cast<IconViewItem*>(this)); |
169 | currentView()->dirLister()->imageInfo( m_path ); | 169 | currentView()->dirLister()->imageInfo( m_path ); |
170 | } | 170 | } |
171 | 171 | ||
172 | m_pix = PPixmapCache::self()->cachedImage( m_path, m_iconsize, m_iconsize ); | 172 | m_pix = PPixmapCache::self()->cachedImage( m_path, m_iconsize, m_iconsize ); |
173 | if (!m_pix && !g_stringPix.contains( m_path )) { | 173 | if (!m_pix && !g_stringPix.contains( m_path )) { |
174 | check_pix(); | 174 | check_pix(); |
175 | g_stringPix.insert( m_path, const_cast<IconViewItem*>(this)); | 175 | g_stringPix.insert( m_path, const_cast<IconViewItem*>(this)); |
176 | currentView()->dirLister()->thumbNail( m_path, m_iconsize, m_iconsize); | 176 | currentView()->dirLister()->thumbNail( m_path, m_iconsize, m_iconsize); |
177 | } | 177 | } |
178 | return m_pix ? m_pix : _cpyPix; | 178 | return m_pix ? m_pix : _cpyPix; |
179 | } | 179 | } |
180 | } | 180 | } |
181 | inline void IconViewItem::setText( const QString& str ) { | 181 | inline void IconViewItem::setText( const QString& str ) { |
182 | QString text = QIconViewItem::text()+"\n"+str; | 182 | QString text = QIconViewItem::text()+"\n"+str; |
183 | m_noInfo = true; | 183 | m_noInfo = true; |
184 | QIconViewItem::setText( text ); | 184 | QIconViewItem::setText( text ); |
185 | } | 185 | } |
186 | } | 186 | } |
187 | 187 | ||
188 | 188 | ||
189 | /* | 189 | /* |
190 | * Set up the GUI.. initialize the slave set up gui | 190 | * Set up the GUI.. initialize the slave set up gui |
191 | * and also load a dir | 191 | * and also load a dir |
192 | */ | 192 | */ |
193 | PIconView::PIconView( QWidget* wid, Opie::Core::OConfig* cfg ) | 193 | PIconView::PIconView( QWidget* wid, Opie::Core::OConfig* cfg ) |
194 | : QVBox( wid ), m_cfg( cfg ), m_updatet( false ) | 194 | : QVBox( wid ), m_cfg( cfg ), m_updatet( false ) |
195 | { | 195 | { |
196 | { | 196 | { |
197 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refUp()" ); | 197 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refUp()" ); |
198 | } | 198 | } |
199 | m_path = QDir::homeDirPath(); | 199 | m_path = QDir::homeDirPath(); |
200 | m_mode = 0; | 200 | m_mode = 0; |
201 | m_iconsize = 32; | 201 | m_iconsize = 32; |
202 | m_internalReset = false; | 202 | m_internalReset = false; |
203 | m_customWidget = 0; | 203 | m_customWidget = 0; |
204 | m_setDocCalled = false; | 204 | m_setDocCalled = false; |
205 | 205 | ||
206 | m_hbox = new QHBox( this ); | 206 | m_hbox = new QHBox( this ); |
207 | QLabel* lbl = new QLabel( m_hbox ); | 207 | QLabel* lbl = new QLabel( m_hbox ); |
208 | lbl->setText( tr("View as" ) ); | 208 | lbl->setText( tr("View as" ) ); |
209 | 209 | ||
210 | m_views = new QComboBox( m_hbox, "View As" ); | 210 | m_views = new QComboBox( m_hbox, "View As" ); |
211 | 211 | ||
212 | m_view= new QIconView( this ); | 212 | m_view= new QIconView( this ); |
213 | connect(m_view, SIGNAL(clicked(QIconViewItem*) ), | 213 | connect(m_view, SIGNAL(clicked(QIconViewItem*) ), |
214 | this, SLOT(slotClicked(QIconViewItem*)) ); | 214 | this, SLOT(slotClicked(QIconViewItem*)) ); |
215 | connect(m_view, SIGNAL(returnPressed(QIconViewItem*)), | 215 | connect(m_view, SIGNAL(returnPressed(QIconViewItem*)), |
216 | this, SLOT(slotClicked(QIconViewItem*)) ); | 216 | this, SLOT(slotClicked(QIconViewItem*)) ); |
217 | 217 | ||
218 | m_view->setArrangement( QIconView::LeftToRight ); | 218 | m_view->setArrangement( QIconView::LeftToRight ); |
219 | 219 | ||
220 | m_mode = m_cfg->readNumEntry("ListViewMode", 1); | 220 | m_mode = m_cfg->readNumEntry("ListViewMode", 1); |
221 | if (m_mode < 1 || m_mode>3) m_mode = 1; | 221 | if (m_mode < 1 || m_mode>3) m_mode = 1; |
222 | m_view->setItemTextPos( QIconView::Right ); | 222 | m_view->setItemTextPos( QIconView::Right ); |
223 | if (m_mode >1) { | 223 | if (m_mode >1) { |
224 | m_view->setResizeMode(QIconView::Adjust); | 224 | m_view->setResizeMode(QIconView::Adjust); |
225 | } else { | 225 | } else { |
226 | m_view->setResizeMode(QIconView::Fixed); | 226 | m_view->setResizeMode(QIconView::Fixed); |
227 | } | 227 | } |
228 | m_iconsize = m_cfg->readNumEntry("iconsize", 32); | 228 | m_iconsize = m_cfg->readNumEntry("iconsize", 32); |
229 | if (m_iconsize<sMIN_ICON_SIZE)m_iconsize = sMIN_ICON_SIZE; | 229 | if (m_iconsize<sMIN_ICON_SIZE)m_iconsize = sMIN_ICON_SIZE; |
230 | if (m_iconsize>sMAX_ICON_SIZE)m_iconsize = sMAX_ICON_SIZE; | 230 | if (m_iconsize>sMAX_ICON_SIZE)m_iconsize = sMAX_ICON_SIZE; |
231 | 231 | ||
232 | calculateGrid(); | 232 | calculateGrid(); |
233 | initKeys(); | 233 | initKeys(); |
234 | loadViews(); | 234 | loadViews(); |
235 | } | 235 | } |
236 | 236 | ||
237 | void PIconView::setDoccalled(bool how) | 237 | void PIconView::setDoccalled(bool how) |
238 | { | 238 | { |
239 | m_setDocCalled = how; | 239 | m_setDocCalled = how; |
240 | } | 240 | } |
241 | 241 | ||
242 | /* | 242 | /* |
243 | * Unref the slave and save the keyboard manager | 243 | * Unref the slave and save the keyboard manager |
244 | */ | 244 | */ |
245 | PIconView::~PIconView() { | 245 | PIconView::~PIconView() { |
246 | { | 246 | { |
247 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refDown()" ); | 247 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refDown()" ); |
248 | } | 248 | } |
249 | m_viewManager->save(); | 249 | m_viewManager->save(); |
250 | delete m_viewManager; | 250 | delete m_viewManager; |
251 | } | 251 | } |
252 | 252 | ||
253 | Opie::Core::OKeyConfigManager* PIconView::manager() { | 253 | Opie::Core::OKeyConfigManager* PIconView::manager() { |
254 | return m_viewManager; | 254 | return m_viewManager; |
255 | } | 255 | } |
256 | 256 | ||
257 | 257 | ||
258 | /* | 258 | /* |
259 | * init the KeyBoard Shortcuts | 259 | * init the KeyBoard Shortcuts |
260 | * called from the c'tor | 260 | * called from the c'tor |
261 | */ | 261 | */ |
262 | void PIconView::initKeys() { | 262 | void PIconView::initKeys() { |
263 | Opie::Core::OKeyPair::List lst; | 263 | Opie::Core::OKeyPair::List lst; |
264 | lst.append( Opie::Core::OKeyPair::upArrowKey() ); | ||
265 | lst.append( Opie::Core::OKeyPair::downArrowKey() ); | ||
266 | lst.append( Opie::Core::OKeyPair::leftArrowKey() ); | ||
267 | lst.append( Opie::Core::OKeyPair::rightArrowKey() ); | ||
268 | lst.append( Opie::Core::OKeyPair::returnKey() ); | ||
269 | 264 | ||
270 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "View-KeyBoard-Config", | 265 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "View-KeyBoard-Config", |
271 | lst, false,this, "keyconfig name" ); | 266 | lst, false,this, "keyconfig name" ); |
272 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Beam Current Item") , "beam", | 267 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Beam Current Item") , "beam", |
273 | Opie::Core::OResource::loadPixmap("beam", Opie::Core::OResource::SmallIcon), | 268 | Opie::Core::OResource::loadPixmap("beam", Opie::Core::OResource::SmallIcon), |
274 | BeamItem, Opie::Core::OKeyPair(Qt::Key_B, Qt::ShiftButton), | 269 | BeamItem, Opie::Core::OKeyPair(Qt::Key_B, Qt::ShiftButton), |
275 | this, SLOT(slotBeam())) ); | 270 | this, SLOT(slotBeam())) ); |
276 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Delete Current Item"), "delete", | 271 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Delete Current Item"), "delete", |
277 | Opie::Core::OResource::loadPixmap("trash", Opie::Core::OResource::SmallIcon), | 272 | Opie::Core::OResource::loadPixmap("trash", Opie::Core::OResource::SmallIcon), |
278 | DeleteItem, Opie::Core::OKeyPair(Qt::Key_D, Qt::ShiftButton), | 273 | DeleteItem, Opie::Core::OKeyPair(Qt::Key_D, Qt::ShiftButton), |
279 | this, SLOT(slotTrash())) ); | 274 | this, SLOT(slotTrash())) ); |
280 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("View Current Item"), "view", | 275 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("View Current Item"), "view", |
281 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), | 276 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), |
282 | ViewItem, Opie::Core::OKeyPair(Qt::Key_V, Qt::ShiftButton), | 277 | ViewItem, Opie::Core::OKeyPair(Qt::Key_V, Qt::ShiftButton), |
283 | this, SLOT(slotShowImage()))); | 278 | this, SLOT(slotShowImage()))); |
284 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Show Image Info") , "info", | 279 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Show Image Info") , "info", |
285 | Opie::Core::OResource::loadPixmap("DocumentTypeWord", Opie::Core::OResource::SmallIcon), | 280 | Opie::Core::OResource::loadPixmap("DocumentTypeWord", Opie::Core::OResource::SmallIcon), |
286 | InfoItem, Opie::Core::OKeyPair(Qt::Key_I, Qt::ShiftButton ), | 281 | InfoItem, Opie::Core::OKeyPair(Qt::Key_I, Qt::ShiftButton ), |
287 | this, SLOT(slotImageInfo()) ) ); | 282 | this, SLOT(slotImageInfo()) ) ); |
288 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Start slideshow"), "slideshow", | 283 | m_viewManager->addKeyConfig( OKeyConfigItem(tr("Start slideshow"), "slideshow", |
289 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), | 284 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), |
290 | SlideItem, Opie::Core::OKeyPair(Qt::Key_S, Qt::ShiftButton), | 285 | SlideItem, Opie::Core::OKeyPair(Qt::Key_S, Qt::ShiftButton), |
291 | this, SLOT(slotStartSlide()))); | 286 | this, SLOT(slotStartSlide()))); |
292 | m_viewManager->load(); | 287 | m_viewManager->load(); |
293 | m_viewManager->handleWidget( m_view ); | 288 | m_viewManager->handleWidget( m_view ); |
294 | } | 289 | } |
295 | 290 | ||
296 | 291 | ||
297 | /* | 292 | /* |
298 | * change one dir up | 293 | * change one dir up |
299 | */ | 294 | */ |
300 | void PIconView::slotDirUp() | 295 | void PIconView::slotDirUp() |
301 | { | 296 | { |
302 | slotChangeDir( currentView()->dirLister()->dirUp( m_path ) ); | 297 | slotChangeDir( currentView()->dirLister()->dirUp( m_path ) ); |
303 | } | 298 | } |
304 | 299 | ||
305 | /* | 300 | /* |
306 | * change the dir | 301 | * change the dir |
307 | */ | 302 | */ |
308 | void PIconView::slotChangeDir(const QString& path) { | 303 | void PIconView::slotChangeDir(const QString& path) { |
309 | if ( !currentView() ) | 304 | if ( !currentView() ) |
310 | return; | 305 | return; |
311 | 306 | ||
312 | PDirLister *lister = currentView()->dirLister(); | 307 | PDirLister *lister = currentView()->dirLister(); |
313 | if (!lister ) | 308 | if (!lister ) |
314 | return; | 309 | return; |
315 | 310 | ||
316 | /* | 311 | /* |
317 | * Say what we want and take what we get | 312 | * Say what we want and take what we get |
318 | */ | 313 | */ |
319 | lister->setStartPath( path ); | 314 | lister->setStartPath( path ); |
320 | m_path = lister->currentPath(); | 315 | m_path = lister->currentPath(); |
321 | 316 | ||
322 | m_view->viewport()->setUpdatesEnabled( false ); | 317 | m_view->viewport()->setUpdatesEnabled( false ); |
323 | m_view->clear(); | 318 | m_view->clear(); |
324 | 319 | ||
325 | // Also invalidate the cache. We can't cancel the operations anyway | 320 | // Also invalidate the cache. We can't cancel the operations anyway |
326 | g_stringPix.clear(); | 321 | g_stringPix.clear(); |
327 | g_stringInf.clear(); | 322 | g_stringInf.clear(); |
328 | 323 | ||
329 | /* | 324 | /* |
330 | * add files and folders | 325 | * add files and folders |
331 | */ | 326 | */ |
332 | addFolders( lister->folders() ); | 327 | addFolders( lister->folders() ); |
333 | addFiles( lister->files() ); | 328 | addFiles( lister->files() ); |
334 | m_view->viewport()->setUpdatesEnabled( true ); | 329 | m_view->viewport()->setUpdatesEnabled( true ); |
335 | 330 | ||
336 | // looks ugly | 331 | // looks ugly |
337 | static_cast<QMainWindow*>(parent())->setCaption( QObject::tr("%1 - O View", "Name of the dir").arg( m_path ) ); | 332 | static_cast<QMainWindow*>(parent())->setCaption( QObject::tr("%1 - O View", "Name of the dir").arg( m_path ) ); |
338 | } | 333 | } |
339 | 334 | ||
340 | /** | 335 | /** |
341 | * get the current file name | 336 | * get the current file name |
342 | * @param isDir see if this is a dir or real file | 337 | * @param isDir see if this is a dir or real file |
343 | */ | 338 | */ |
344 | QString PIconView::currentFileName(bool &isDir)const { | 339 | QString PIconView::currentFileName(bool &isDir)const { |
345 | isDir = false; | 340 | isDir = false; |
346 | QIconViewItem* _it = m_view->currentItem(); | 341 | QIconViewItem* _it = m_view->currentItem(); |
347 | if ( !_it ) | 342 | if ( !_it ) |
348 | return QString::null; | 343 | return QString::null; |
349 | 344 | ||
350 | IconViewItem* it = static_cast<IconViewItem*>( _it ); | 345 | IconViewItem* it = static_cast<IconViewItem*>( _it ); |
351 | isDir = it->isDir(); | 346 | isDir = it->isDir(); |
352 | return it->path(); | 347 | return it->path(); |
353 | } | 348 | } |
354 | 349 | ||
355 | QString PIconView::nextFileName(bool &isDir)const | 350 | QString PIconView::nextFileName(bool &isDir)const |
356 | { | 351 | { |
357 | isDir = false; | 352 | isDir = false; |
358 | QIconViewItem* _it1 = m_view->currentItem(); | 353 | QIconViewItem* _it1 = m_view->currentItem(); |
359 | if ( !_it1 ) | 354 | if ( !_it1 ) |
360 | return QString::null; | 355 | return QString::null; |
361 | QIconViewItem* _it = _it1->nextItem(); | 356 | QIconViewItem* _it = _it1->nextItem(); |
362 | if ( !_it ) | 357 | if ( !_it ) |
363 | return QString::null; | 358 | return QString::null; |
364 | IconViewItem* it = static_cast<IconViewItem*>( _it ); | 359 | IconViewItem* it = static_cast<IconViewItem*>( _it ); |
365 | isDir = it->isDir(); | 360 | isDir = it->isDir(); |
366 | return it->path(); | 361 | return it->path(); |
367 | } | 362 | } |
368 | 363 | ||
369 | QString PIconView::prevFileName(bool &isDir)const{ | 364 | QString PIconView::prevFileName(bool &isDir)const{ |
370 | isDir = false; | 365 | isDir = false; |
371 | QIconViewItem* _it = m_view->currentItem(); | 366 | QIconViewItem* _it = m_view->currentItem(); |
372 | if ( !_it ) | 367 | if ( !_it ) |
373 | return QString::null; | 368 | return QString::null; |
374 | _it = _it->prevItem(); | 369 | _it = _it->prevItem(); |
375 | if ( !_it ) | 370 | if ( !_it ) |
376 | return QString::null; | 371 | return QString::null; |
377 | IconViewItem* it = static_cast<IconViewItem*>( _it ); | 372 | IconViewItem* it = static_cast<IconViewItem*>( _it ); |
378 | isDir = it->isDir(); | 373 | isDir = it->isDir(); |
379 | return it->path(); | 374 | return it->path(); |
380 | } | 375 | } |
381 | 376 | ||
382 | void PIconView::slotTrash() { | 377 | void PIconView::slotTrash() { |
383 | bool isDir; | 378 | bool isDir; |
384 | QString pa = currentFileName( isDir ); | 379 | QString pa = currentFileName( isDir ); |
385 | if ( isDir || pa.isEmpty() ) | 380 | if ( isDir || pa.isEmpty() ) |
386 | return; | 381 | return; |
387 | 382 | ||
388 | if (!OMessageBox::confirmDelete( this, tr("the Image"), | 383 | if (!OMessageBox::confirmDelete( this, tr("the Image"), |
389 | pa, tr("Delete Image" ))) | 384 | pa, tr("Delete Image" ))) |
390 | return; | 385 | return; |
391 | 386 | ||
392 | 387 | ||
393 | currentView()->dirLister()->deleteImage( pa ); | 388 | currentView()->dirLister()->deleteImage( pa ); |
394 | delete m_view->currentItem(); | 389 | delete m_view->currentItem(); |
395 | } | 390 | } |
396 | 391 | ||
diff --git a/noncore/graphics/opie-eye/gui/imageinfoui.cpp b/noncore/graphics/opie-eye/gui/imageinfoui.cpp index 8f70602..8e31521 100644 --- a/noncore/graphics/opie-eye/gui/imageinfoui.cpp +++ b/noncore/graphics/opie-eye/gui/imageinfoui.cpp | |||
@@ -1,199 +1,193 @@ | |||
1 | #include "imageinfoui.h" | 1 | #include "imageinfoui.h" |
2 | 2 | ||
3 | #include <qframe.h> | 3 | #include <qframe.h> |
4 | #include <qlabel.h> | 4 | #include <qlabel.h> |
5 | #include <qpushbutton.h> | 5 | #include <qpushbutton.h> |
6 | #include <qtextview.h> | 6 | #include <qtextview.h> |
7 | #include <qlayout.h> | 7 | #include <qlayout.h> |
8 | #include <qvariant.h> | 8 | #include <qvariant.h> |
9 | #include <qtooltip.h> | 9 | #include <qtooltip.h> |
10 | #include <qwhatsthis.h> | 10 | #include <qwhatsthis.h> |
11 | #include <qimage.h> | 11 | #include <qimage.h> |
12 | #include <qpixmap.h> | 12 | #include <qpixmap.h> |
13 | #include <qstring.h> | 13 | #include <qstring.h> |
14 | #include <qfileinfo.h> | 14 | #include <qfileinfo.h> |
15 | 15 | ||
16 | #include "lib/slavemaster.h" | 16 | #include "lib/slavemaster.h" |
17 | #include "lib/imagecache.h" | 17 | #include "lib/imagecache.h" |
18 | 18 | ||
19 | #include <opie2/oconfig.h> | 19 | #include <opie2/oconfig.h> |
20 | #include <opie2/okeyconfigwidget.h> | 20 | #include <opie2/okeyconfigwidget.h> |
21 | #include <opie2/odebug.h> | 21 | #include <opie2/odebug.h> |
22 | #include <opie2/oresource.h> | 22 | #include <opie2/oresource.h> |
23 | 23 | ||
24 | #include <qpe/qcopenvelope_qws.h> | 24 | #include <qpe/qcopenvelope_qws.h> |
25 | 25 | ||
26 | static const int THUMBSIZE = 128; | 26 | static const int THUMBSIZE = 128; |
27 | 27 | ||
28 | using namespace Opie::Core; | 28 | using namespace Opie::Core; |
29 | 29 | ||
30 | imageinfo::imageinfo(Opie::Core::OConfig *cfg,QWidget* parent, const char* name, WFlags fl ) | 30 | imageinfo::imageinfo(Opie::Core::OConfig *cfg,QWidget* parent, const char* name, WFlags fl ) |
31 | : QWidget( parent, name, fl ) | 31 | : QWidget( parent, name, fl ) |
32 | { | 32 | { |
33 | m_viewManager = 0; | 33 | m_viewManager = 0; |
34 | m_cfg = cfg; | 34 | m_cfg = cfg; |
35 | init(name); | 35 | init(name); |
36 | initKeys(); | 36 | initKeys(); |
37 | } | 37 | } |
38 | 38 | ||
39 | imageinfo::imageinfo(const QString&_path, QWidget* parent, const char* name, WFlags fl ) | 39 | imageinfo::imageinfo(const QString&_path, QWidget* parent, const char* name, WFlags fl ) |
40 | : QWidget( parent, name, fl ),currentFile(_path) | 40 | : QWidget( parent, name, fl ),currentFile(_path) |
41 | { | 41 | { |
42 | m_viewManager = 0; | 42 | m_viewManager = 0; |
43 | m_cfg = 0; | 43 | m_cfg = 0; |
44 | init(name); | 44 | init(name); |
45 | initKeys(); | 45 | initKeys(); |
46 | slotChangeName(_path); | 46 | slotChangeName(_path); |
47 | } | 47 | } |
48 | 48 | ||
49 | Opie::Core::OKeyConfigManager* imageinfo::manager() | 49 | Opie::Core::OKeyConfigManager* imageinfo::manager() |
50 | { | 50 | { |
51 | if (!m_viewManager) { | 51 | if (!m_viewManager) { |
52 | initKeys(); | 52 | initKeys(); |
53 | } | 53 | } |
54 | return m_viewManager; | 54 | return m_viewManager; |
55 | } | 55 | } |
56 | 56 | ||
57 | void imageinfo::initKeys() | 57 | void imageinfo::initKeys() |
58 | { | 58 | { |
59 | #if 0 | 59 | #if 0 |
60 | if (!m_cfg) { | 60 | if (!m_cfg) { |
61 | m_cfg = new Opie::Core::OConfig("phunkview"); | 61 | m_cfg = new Opie::Core::OConfig("phunkview"); |
62 | m_cfg->setGroup("imageinfo_keys" ); | 62 | m_cfg->setGroup("imageinfo_keys" ); |
63 | } | 63 | } |
64 | #endif | 64 | #endif |
65 | Opie::Core::OKeyPair::List lst; | 65 | Opie::Core::OKeyPair::List lst; |
66 | lst.append( Opie::Core::OKeyPair::upArrowKey() ); | ||
67 | lst.append( Opie::Core::OKeyPair::downArrowKey() ); | ||
68 | lst.append( Opie::Core::OKeyPair::leftArrowKey() ); | ||
69 | lst.append( Opie::Core::OKeyPair::rightArrowKey() ); | ||
70 | lst.append( Opie::Core::OKeyPair::returnKey() ); | ||
71 | |||
72 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "imageinfo_keys", | 66 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "imageinfo_keys", |
73 | lst, false,this, "keyconfig name" ); | 67 | lst, false,this, "keyconfig name" ); |
74 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Full Image"), "infoview", | 68 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Full Image"), "infoview", |
75 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), | 69 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), |
76 | ViewItem, Opie::Core::OKeyPair(Qt::Key_V, Qt::ShiftButton), | 70 | ViewItem, Opie::Core::OKeyPair(Qt::Key_V, Qt::ShiftButton), |
77 | this, SLOT(slotShowImage()))); | 71 | this, SLOT(slotShowImage()))); |
78 | m_viewManager->load(); | 72 | m_viewManager->load(); |
79 | m_viewManager->handleWidget( this ); | 73 | m_viewManager->handleWidget( this ); |
80 | m_viewManager->handleWidget( TextView1 ); | 74 | m_viewManager->handleWidget( TextView1 ); |
81 | } | 75 | } |
82 | 76 | ||
83 | void imageinfo::slotShowImage() | 77 | void imageinfo::slotShowImage() |
84 | { | 78 | { |
85 | emit dispImage(currentFile); | 79 | emit dispImage(currentFile); |
86 | } | 80 | } |
87 | 81 | ||
88 | void imageinfo::init(const char* name) { | 82 | void imageinfo::init(const char* name) { |
89 | { | 83 | { |
90 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refUp()" ); | 84 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refUp()" ); |
91 | } | 85 | } |
92 | if ( !name ) | 86 | if ( !name ) |
93 | setName( "imageinfo" ); | 87 | setName( "imageinfo" ); |
94 | resize( 289, 335 ); | 88 | resize( 289, 335 ); |
95 | setCaption( tr( "Image info" ) ); | 89 | setCaption( tr( "Image info" ) ); |
96 | imageinfoLayout = new QVBoxLayout( this ); | 90 | imageinfoLayout = new QVBoxLayout( this ); |
97 | imageinfoLayout->setSpacing(2); | 91 | imageinfoLayout->setSpacing(2); |
98 | imageinfoLayout->setMargin(4); | 92 | imageinfoLayout->setMargin(4); |
99 | 93 | ||
100 | PixmapLabel1 = new QLabel( this, "PixmapLabel1" ); | 94 | PixmapLabel1 = new QLabel( this, "PixmapLabel1" ); |
101 | PixmapLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)5, PixmapLabel1->sizePolicy().hasHeightForWidth() ) ); | 95 | PixmapLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)5, PixmapLabel1->sizePolicy().hasHeightForWidth() ) ); |
102 | QWhatsThis::add( PixmapLabel1, tr("Displays an thumbnail of the image") ); | 96 | QWhatsThis::add( PixmapLabel1, tr("Displays an thumbnail of the image") ); |
103 | 97 | ||
104 | imageinfoLayout->addWidget( PixmapLabel1 ); | 98 | imageinfoLayout->addWidget( PixmapLabel1 ); |
105 | 99 | ||
106 | Line1 = new QFrame( this, "Line1" ); | 100 | Line1 = new QFrame( this, "Line1" ); |
107 | Line1->setFrameStyle( QFrame::HLine | QFrame::Sunken ); | 101 | Line1->setFrameStyle( QFrame::HLine | QFrame::Sunken ); |
108 | imageinfoLayout->addWidget( Line1 ); | 102 | imageinfoLayout->addWidget( Line1 ); |
109 | 103 | ||
110 | fnameLabel = new QLabel( this, "FnameLabel" ); | 104 | fnameLabel = new QLabel( this, "FnameLabel" ); |
111 | imageinfoLayout->addWidget( fnameLabel); | 105 | imageinfoLayout->addWidget( fnameLabel); |
112 | 106 | ||
113 | TextView1 = new QTextView( this, "TextView1" ); | 107 | TextView1 = new QTextView( this, "TextView1" ); |
114 | TextView1->setFrameShadow( QTextView::Sunken ); | 108 | TextView1->setFrameShadow( QTextView::Sunken ); |
115 | TextView1->setResizePolicy( QTextView::AutoOneFit ); | 109 | TextView1->setResizePolicy( QTextView::AutoOneFit ); |
116 | TextView1->setBackgroundOrigin( QTextView::ParentOrigin ); | 110 | TextView1->setBackgroundOrigin( QTextView::ParentOrigin ); |
117 | TextView1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)3, (QSizePolicy::SizeType)3, TextView1->sizePolicy().hasHeightForWidth() ) ); | 111 | TextView1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)3, (QSizePolicy::SizeType)3, TextView1->sizePolicy().hasHeightForWidth() ) ); |
118 | // TextView1->setVScrollBarMode(QScrollView::AlwaysOn); | 112 | // TextView1->setVScrollBarMode(QScrollView::AlwaysOn); |
119 | QWhatsThis::add( TextView1, tr("Displays info of selected image") ); | 113 | QWhatsThis::add( TextView1, tr("Displays info of selected image") ); |
120 | imageinfoLayout->addWidget( TextView1 ); | 114 | imageinfoLayout->addWidget( TextView1 ); |
121 | 115 | ||
122 | SlaveMaster* master = SlaveMaster::self(); | 116 | SlaveMaster* master = SlaveMaster::self(); |
123 | connect( master, SIGNAL(sig_fullInfo(const QString&, const QString&)), | 117 | connect( master, SIGNAL(sig_fullInfo(const QString&, const QString&)), |
124 | this, SLOT(slot_fullInfo(const QString&, const QString&)) ); | 118 | this, SLOT(slot_fullInfo(const QString&, const QString&)) ); |
125 | connect(master, SIGNAL( sig_thumbNail(const QString&, const QPixmap&)), | 119 | connect(master, SIGNAL( sig_thumbNail(const QString&, const QPixmap&)), |
126 | this, SLOT(slotThumbNail(const QString&, const QPixmap&))); | 120 | this, SLOT(slotThumbNail(const QString&, const QPixmap&))); |
127 | } | 121 | } |
128 | 122 | ||
129 | void imageinfo::slotChangeName(const QString&_path) | 123 | void imageinfo::slotChangeName(const QString&_path) |
130 | { | 124 | { |
131 | currentFile=_path; | 125 | currentFile=_path; |
132 | QFileInfo fi(_path); | 126 | QFileInfo fi(_path); |
133 | fnameLabel->setText("<qt><center><b>"+fi.fileName()+"</b></center></qt>"); | 127 | fnameLabel->setText("<qt><center><b>"+fi.fileName()+"</b></center></qt>"); |
134 | SlaveMaster::self()->imageInfo( currentFile ); | 128 | SlaveMaster::self()->imageInfo( currentFile ); |
135 | 129 | ||
136 | QPixmap*m_pix = PPixmapCache::self()->cachedImage( _path, THUMBSIZE,THUMBSIZE ); | 130 | QPixmap*m_pix = PPixmapCache::self()->cachedImage( _path, THUMBSIZE,THUMBSIZE ); |
137 | if (!m_pix) { | 131 | if (!m_pix) { |
138 | PixmapLabel1->setPixmap(QPixmap( Opie::Core::OResource::loadPixmap( "UnknownDocument", Opie::Core::OResource::SmallIcon ))); | 132 | PixmapLabel1->setPixmap(QPixmap( Opie::Core::OResource::loadPixmap( "UnknownDocument", Opie::Core::OResource::SmallIcon ))); |
139 | SlaveMaster::self()->thumbNail(currentFile,THUMBSIZE,THUMBSIZE); | 133 | SlaveMaster::self()->thumbNail(currentFile,THUMBSIZE,THUMBSIZE); |
140 | } else { | 134 | } else { |
141 | PixmapLabel1->setPixmap(*m_pix); | 135 | PixmapLabel1->setPixmap(*m_pix); |
142 | } | 136 | } |
143 | } | 137 | } |
144 | 138 | ||
145 | imageinfo::~imageinfo() | 139 | imageinfo::~imageinfo() |
146 | { | 140 | { |
147 | { | 141 | { |
148 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refDown()" ); | 142 | QCopEnvelope( "QPE/Application/opie-eye_slave", "refDown()" ); |
149 | } | 143 | } |
150 | if (m_viewManager) { | 144 | if (m_viewManager) { |
151 | delete m_viewManager; | 145 | delete m_viewManager; |
152 | } | 146 | } |
153 | } | 147 | } |
154 | 148 | ||
155 | void imageinfo::slot_fullInfo(const QString&_path, const QString&_t) | 149 | void imageinfo::slot_fullInfo(const QString&_path, const QString&_t) |
156 | { | 150 | { |
157 | if (_path == currentFile) { | 151 | if (_path == currentFile) { |
158 | odebug << _t << oendl; | 152 | odebug << _t << oendl; |
159 | QString t = _t; | 153 | QString t = _t; |
160 | t.replace(QRegExp("\n"),"<br>"); | 154 | t.replace(QRegExp("\n"),"<br>"); |
161 | TextView1->setText(t); | 155 | TextView1->setText(t); |
162 | } | 156 | } |
163 | } | 157 | } |
164 | 158 | ||
165 | void imageinfo::slotThumbNail(const QString&_path, const QPixmap&_pix) | 159 | void imageinfo::slotThumbNail(const QString&_path, const QPixmap&_pix) |
166 | { | 160 | { |
167 | if (_path == currentFile) { | 161 | if (_path == currentFile) { |
168 | if (_pix.width()>0) { | 162 | if (_pix.width()>0) { |
169 | PPixmapCache::self()->insertImage( _path, _pix, THUMBSIZE, THUMBSIZE ); | 163 | PPixmapCache::self()->insertImage( _path, _pix, THUMBSIZE, THUMBSIZE ); |
170 | PixmapLabel1->setPixmap( _pix ); | 164 | PixmapLabel1->setPixmap( _pix ); |
171 | PixmapLabel1->resize(QSize(_pix.width(),_pix.height())); | 165 | PixmapLabel1->resize(QSize(_pix.width(),_pix.height())); |
172 | } | 166 | } |
173 | } | 167 | } |
174 | } | 168 | } |
175 | 169 | ||
176 | void imageinfo::setPath( const QString& str ) { | 170 | void imageinfo::setPath( const QString& str ) { |
177 | slotChangeName( str ); | 171 | slotChangeName( str ); |
178 | } | 172 | } |
179 | 173 | ||
180 | void imageinfo::setDestructiveClose() { | 174 | void imageinfo::setDestructiveClose() { |
181 | WFlags fl = getWFlags(); | 175 | WFlags fl = getWFlags(); |
182 | /* clear it just in case */ | 176 | /* clear it just in case */ |
183 | fl &= ~WDestructiveClose; | 177 | fl &= ~WDestructiveClose; |
184 | fl |= WDestructiveClose; | 178 | fl |= WDestructiveClose; |
185 | setWFlags( fl ); | 179 | setWFlags( fl ); |
186 | } | 180 | } |
187 | 181 | ||
188 | 182 | ||
189 | /* for testing */ | 183 | /* for testing */ |
190 | infoDlg::infoDlg(const QString&fname,QWidget * parent, const char * name) | 184 | infoDlg::infoDlg(const QString&fname,QWidget * parent, const char * name) |
191 | :QDialog(parent,name,true,WStyle_ContextHelp) | 185 | :QDialog(parent,name,true,WStyle_ContextHelp) |
192 | { | 186 | { |
193 | QVBoxLayout*dlglayout = new QVBoxLayout(this); | 187 | QVBoxLayout*dlglayout = new QVBoxLayout(this); |
194 | dlglayout->setSpacing(2); | 188 | dlglayout->setSpacing(2); |
195 | dlglayout->setMargin(1); | 189 | dlglayout->setMargin(1); |
196 | imageinfo*inf = new imageinfo(fname,this); | 190 | imageinfo*inf = new imageinfo(fname,this); |
197 | dlglayout->addWidget(inf); | 191 | dlglayout->addWidget(inf); |
198 | } | 192 | } |
199 | 193 | ||
diff --git a/noncore/graphics/opie-eye/gui/imageview.cpp b/noncore/graphics/opie-eye/gui/imageview.cpp index cda1a96..ec891a8 100644 --- a/noncore/graphics/opie-eye/gui/imageview.cpp +++ b/noncore/graphics/opie-eye/gui/imageview.cpp | |||
@@ -20,260 +20,256 @@ ImageView::ImageView(Opie::Core::OConfig *cfg, QWidget* parent, const char* name | |||
20 | m_viewManager = 0; | 20 | m_viewManager = 0; |
21 | focus_in_count = 0; | 21 | focus_in_count = 0; |
22 | m_cfg = cfg; | 22 | m_cfg = cfg; |
23 | m_isFullScreen = false; | 23 | m_isFullScreen = false; |
24 | m_ignore_next_in = false; | 24 | m_ignore_next_in = false; |
25 | m_slideTimer = 0; | 25 | m_slideTimer = 0; |
26 | QPEApplication::setStylusOperation(viewport(),QPEApplication::RightOnHold); | 26 | QPEApplication::setStylusOperation(viewport(),QPEApplication::RightOnHold); |
27 | initKeys(); | 27 | initKeys(); |
28 | m_slideValue = 5; | 28 | m_slideValue = 5; |
29 | m_gDisplayType = 0; | 29 | m_gDisplayType = 0; |
30 | m_gPrevNext = 0; | 30 | m_gPrevNext = 0; |
31 | m_hGroup = 0; | 31 | m_hGroup = 0; |
32 | m_gBright = 0; | 32 | m_gBright = 0; |
33 | m_Rotated = false; | 33 | m_Rotated = false; |
34 | closeIfHide = false; | 34 | closeIfHide = false; |
35 | int min = QApplication::desktop()->size().width()>QApplication::desktop()->size().height()? | 35 | int min = QApplication::desktop()->size().width()>QApplication::desktop()->size().height()? |
36 | QApplication::desktop()->size().height():QApplication::desktop()->size().width(); | 36 | QApplication::desktop()->size().height():QApplication::desktop()->size().width(); |
37 | if (min>320) { | 37 | if (min>320) { |
38 | // bigscreen | 38 | // bigscreen |
39 | setMinimumSize(min/3,min/3); | 39 | setMinimumSize(min/3,min/3); |
40 | } else { | 40 | } else { |
41 | setMinimumSize(10,10); | 41 | setMinimumSize(10,10); |
42 | } | 42 | } |
43 | connect(this,SIGNAL(incBrightness()),this,SLOT(slotIncBrightness())); | 43 | connect(this,SIGNAL(incBrightness()),this,SLOT(slotIncBrightness())); |
44 | connect(this,SIGNAL(decBrightness()),this,SLOT(slotDecBrightness())); | 44 | connect(this,SIGNAL(decBrightness()),this,SLOT(slotDecBrightness())); |
45 | 45 | ||
46 | m_sysChannel = new QCopChannel( "QPE/System", this ); | 46 | m_sysChannel = new QCopChannel( "QPE/System", this ); |
47 | connect( m_sysChannel, SIGNAL( received(const QCString&,const QByteArray&) ), | 47 | connect( m_sysChannel, SIGNAL( received(const QCString&,const QByteArray&) ), |
48 | this, SLOT( systemMessage(const QCString&,const QByteArray&) ) ); | 48 | this, SLOT( systemMessage(const QCString&,const QByteArray&) ) ); |
49 | setKeyCompression(true); | 49 | setKeyCompression(true); |
50 | } | 50 | } |
51 | 51 | ||
52 | void ImageView::slotIncBrightness() | 52 | void ImageView::slotIncBrightness() |
53 | { | 53 | { |
54 | int lb = Intensity()+5; | 54 | int lb = Intensity()+5; |
55 | if (lb>100) lb=100; | 55 | if (lb>100) lb=100; |
56 | setIntensity(lb,true); | 56 | setIntensity(lb,true); |
57 | } | 57 | } |
58 | 58 | ||
59 | void ImageView::slotDecBrightness() | 59 | void ImageView::slotDecBrightness() |
60 | { | 60 | { |
61 | int lb = Intensity()-5; | 61 | int lb = Intensity()-5; |
62 | if (lb<-100) lb=-100; | 62 | if (lb<-100) lb=-100; |
63 | setIntensity(lb,true); | 63 | setIntensity(lb,true); |
64 | } | 64 | } |
65 | 65 | ||
66 | void ImageView::systemMessage( const QCString& msg, const QByteArray& data ) | 66 | void ImageView::systemMessage( const QCString& msg, const QByteArray& data ) |
67 | { | 67 | { |
68 | int _newrotation; | 68 | int _newrotation; |
69 | QDataStream stream( data, IO_ReadOnly ); | 69 | QDataStream stream( data, IO_ReadOnly ); |
70 | if ( msg == "setCurrentRotation(int)" ) | 70 | if ( msg == "setCurrentRotation(int)" ) |
71 | { | 71 | { |
72 | stream >> _newrotation; | 72 | stream >> _newrotation; |
73 | if (!fullScreen()) { | 73 | if (!fullScreen()) { |
74 | m_rotation = _newrotation; | 74 | m_rotation = _newrotation; |
75 | return; | 75 | return; |
76 | } | 76 | } |
77 | } | 77 | } |
78 | } | 78 | } |
79 | 79 | ||
80 | void ImageView::setMenuActions(QActionGroup*hGroup,QActionGroup*nextprevGroup, QActionGroup*disptypeGroup,QActionGroup*brightGroup) | 80 | void ImageView::setMenuActions(QActionGroup*hGroup,QActionGroup*nextprevGroup, QActionGroup*disptypeGroup,QActionGroup*brightGroup) |
81 | { | 81 | { |
82 | m_gDisplayType = disptypeGroup; | 82 | m_gDisplayType = disptypeGroup; |
83 | m_gPrevNext = nextprevGroup; | 83 | m_gPrevNext = nextprevGroup; |
84 | m_hGroup = hGroup; | 84 | m_hGroup = hGroup; |
85 | m_gBright = brightGroup; | 85 | m_gBright = brightGroup; |
86 | } | 86 | } |
87 | 87 | ||
88 | ImageView::~ImageView() | 88 | ImageView::~ImageView() |
89 | { | 89 | { |
90 | odebug << "Destructor imageview" << oendl; | 90 | odebug << "Destructor imageview" << oendl; |
91 | delete m_viewManager; | 91 | delete m_viewManager; |
92 | } | 92 | } |
93 | 93 | ||
94 | Opie::Core::OKeyConfigManager* ImageView::manager() | 94 | Opie::Core::OKeyConfigManager* ImageView::manager() |
95 | { | 95 | { |
96 | if (!m_viewManager) { | 96 | if (!m_viewManager) { |
97 | initKeys(); | 97 | initKeys(); |
98 | } | 98 | } |
99 | return m_viewManager; | 99 | return m_viewManager; |
100 | } | 100 | } |
101 | 101 | ||
102 | void ImageView::startSlide(int value) | 102 | void ImageView::startSlide(int value) |
103 | { | 103 | { |
104 | if (!m_slideTimer) { | 104 | if (!m_slideTimer) { |
105 | m_slideTimer = new QTimer(this); | 105 | m_slideTimer = new QTimer(this); |
106 | } | 106 | } |
107 | m_slideValue=value; | 107 | m_slideValue=value; |
108 | connect(m_slideTimer,SIGNAL(timeout()),SLOT(nextSlide())); | 108 | connect(m_slideTimer,SIGNAL(timeout()),SLOT(nextSlide())); |
109 | /* this "+1" is one millisecond. with that we can setup a slideshowvalue | 109 | /* this "+1" is one millisecond. with that we can setup a slideshowvalue |
110 | of 0. eg "as fast as possible". | 110 | of 0. eg "as fast as possible". |
111 | */ | 111 | */ |
112 | m_slideTimer->start(m_slideValue*1000+1,true); | 112 | m_slideTimer->start(m_slideValue*1000+1,true); |
113 | } | 113 | } |
114 | 114 | ||
115 | void ImageView::stopSlide() | 115 | void ImageView::stopSlide() |
116 | { | 116 | { |
117 | if (!m_slideTimer) { | 117 | if (!m_slideTimer) { |
118 | return; | 118 | return; |
119 | } | 119 | } |
120 | m_slideTimer->stop(); | 120 | m_slideTimer->stop(); |
121 | delete m_slideTimer; | 121 | delete m_slideTimer; |
122 | m_slideTimer = 0; | 122 | m_slideTimer = 0; |
123 | } | 123 | } |
124 | 124 | ||
125 | void ImageView::nextSlide() | 125 | void ImageView::nextSlide() |
126 | { | 126 | { |
127 | if (!m_slideTimer) { | 127 | if (!m_slideTimer) { |
128 | return; | 128 | return; |
129 | } | 129 | } |
130 | #if 0 | 130 | #if 0 |
131 | if (isHidden()) { | 131 | if (isHidden()) { |
132 | delete m_slideTimer; | 132 | delete m_slideTimer; |
133 | m_slideTimer = 0; | 133 | m_slideTimer = 0; |
134 | return; | 134 | return; |
135 | } | 135 | } |
136 | #endif | 136 | #endif |
137 | emit dispNext(); | 137 | emit dispNext(); |
138 | m_slideTimer->start(m_slideValue*1000,true); | 138 | m_slideTimer->start(m_slideValue*1000,true); |
139 | } | 139 | } |
140 | void ImageView::initKeys() | 140 | void ImageView::initKeys() |
141 | { | 141 | { |
142 | odebug << "init imageview keys" << oendl; | 142 | odebug << "init imageview keys" << oendl; |
143 | if (!m_cfg) { | 143 | if (!m_cfg) { |
144 | m_cfg = new Opie::Core::OConfig("opie-eye"); | 144 | m_cfg = new Opie::Core::OConfig("opie-eye"); |
145 | m_cfg->setGroup("image_view_keys" ); | 145 | m_cfg->setGroup("image_view_keys" ); |
146 | } | 146 | } |
147 | Opie::Core::OKeyPair::List lst; | 147 | Opie::Core::OKeyPair::List lst; |
148 | lst.append( Opie::Core::OKeyPair::upArrowKey() ); | ||
149 | lst.append( Opie::Core::OKeyPair::downArrowKey() ); | ||
150 | lst.append( Opie::Core::OKeyPair::leftArrowKey() ); | ||
151 | lst.append( Opie::Core::OKeyPair::rightArrowKey() ); | ||
152 | lst.append( Opie::Core::OKeyPair(Qt::Key_Escape,0)); | 148 | lst.append( Opie::Core::OKeyPair(Qt::Key_Escape,0)); |
153 | 149 | ||
154 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "image_view_keys", | 150 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "image_view_keys", |
155 | lst, false,this, "image_view_keys" ); | 151 | lst, false,this, "image_view_keys" ); |
156 | 152 | ||
157 | /** | 153 | /** |
158 | * Handle KeyEvents when they're pressed. This avoids problems | 154 | * Handle KeyEvents when they're pressed. This avoids problems |
159 | * with 'double next' on Return. | 155 | * with 'double next' on Return. |
160 | * The Return press would switch to this view and the return | 156 | * The Return press would switch to this view and the return |
161 | * release would emit the dispNext Signal. | 157 | * release would emit the dispNext Signal. |
162 | */ | 158 | */ |
163 | m_viewManager->setEventMask( Opie::Core::OKeyConfigManager::MaskPressed ); | 159 | m_viewManager->setEventMask( Opie::Core::OKeyConfigManager::MaskPressed ); |
164 | 160 | ||
165 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", | 161 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", |
166 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), | 162 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), |
167 | ViewInfo, Opie::Core::OKeyPair(Qt::Key_I,0), | 163 | ViewInfo, Opie::Core::OKeyPair(Qt::Key_I,0), |
168 | this, SLOT(slotShowImageInfo()))); | 164 | this, SLOT(slotShowImageInfo()))); |
169 | 165 | ||
170 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle autorotate"), "imageautorotate", | 166 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle autorotate"), "imageautorotate", |
171 | Opie::Core::OResource::loadPixmap("rotate", Opie::Core::OResource::SmallIcon), | 167 | Opie::Core::OResource::loadPixmap("rotate", Opie::Core::OResource::SmallIcon), |
172 | Autorotate, Opie::Core::OKeyPair(Qt::Key_R,0), | 168 | Autorotate, Opie::Core::OKeyPair(Qt::Key_R,0), |
173 | this, SIGNAL(toggleAutorotate()))); | 169 | this, SIGNAL(toggleAutorotate()))); |
174 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle autoscale"), "imageautoscale", | 170 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle autoscale"), "imageautoscale", |
175 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), | 171 | Opie::Core::OResource::loadPixmap("1to1", Opie::Core::OResource::SmallIcon), |
176 | Autoscale, Opie::Core::OKeyPair(Qt::Key_S,0), | 172 | Autoscale, Opie::Core::OKeyPair(Qt::Key_S,0), |
177 | this, SIGNAL(toggleAutoscale()))); | 173 | this, SIGNAL(toggleAutoscale()))); |
178 | 174 | ||
179 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Switch to next image"), "imageshownext", | 175 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Switch to next image"), "imageshownext", |
180 | Opie::Core::OResource::loadPixmap("forward", Opie::Core::OResource::SmallIcon), | 176 | Opie::Core::OResource::loadPixmap("forward", Opie::Core::OResource::SmallIcon), |
181 | ShowNext, Opie::Core::OKeyPair(Qt::Key_Return,0), | 177 | ShowNext, Opie::Core::OKeyPair(Qt::Key_Return,0), |
182 | this, SIGNAL(dispNext()))); | 178 | this, SIGNAL(dispNext()))); |
183 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Switch to previous image"), "imageshowprev", | 179 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Switch to previous image"), "imageshowprev", |
184 | Opie::Core::OResource::loadPixmap("back", Opie::Core::OResource::SmallIcon), | 180 | Opie::Core::OResource::loadPixmap("back", Opie::Core::OResource::SmallIcon), |
185 | ShowPrevious, Opie::Core::OKeyPair(Qt::Key_P,0), | 181 | ShowPrevious, Opie::Core::OKeyPair(Qt::Key_P,0), |
186 | this, SIGNAL(dispPrev()))); | 182 | this, SIGNAL(dispPrev()))); |
187 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle fullscreen"), "imagefullscreen", | 183 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle fullscreen"), "imagefullscreen", |
188 | Opie::Core::OResource::loadPixmap("fullscreen", Opie::Core::OResource::SmallIcon), | 184 | Opie::Core::OResource::loadPixmap("fullscreen", Opie::Core::OResource::SmallIcon), |
189 | FullScreen, Opie::Core::OKeyPair(Qt::Key_F,0), | 185 | FullScreen, Opie::Core::OKeyPair(Qt::Key_F,0), |
190 | this, SIGNAL(toggleFullScreen()))); | 186 | this, SIGNAL(toggleFullScreen()))); |
191 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle thumbnail"), "imagezoomer", | 187 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle thumbnail"), "imagezoomer", |
192 | Opie::Core::OResource::loadPixmap("mag", Opie::Core::OResource::SmallIcon), | 188 | Opie::Core::OResource::loadPixmap("mag", Opie::Core::OResource::SmallIcon), |
193 | Zoomer, Opie::Core::OKeyPair(Qt::Key_T,0), | 189 | Zoomer, Opie::Core::OKeyPair(Qt::Key_T,0), |
194 | this, SIGNAL(toggleZoomer()))); | 190 | this, SIGNAL(toggleZoomer()))); |
195 | 191 | ||
196 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Increase brightness"), "incbrightness", | 192 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Increase brightness"), "incbrightness", |
197 | Opie::Core::OResource::loadPixmap("up", Opie::Core::OResource::SmallIcon), | 193 | Opie::Core::OResource::loadPixmap("up", Opie::Core::OResource::SmallIcon), |
198 | Incbrightness, Opie::Core::OKeyPair(Qt::Key_B,0), | 194 | Incbrightness, Opie::Core::OKeyPair(Qt::Key_B,0), |
199 | this, SIGNAL(incBrightness()))); | 195 | this, SIGNAL(incBrightness()))); |
200 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Decrease brightness"), "decbrightness", | 196 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Decrease brightness"), "decbrightness", |
201 | Opie::Core::OResource::loadPixmap("down", Opie::Core::OResource::SmallIcon), | 197 | Opie::Core::OResource::loadPixmap("down", Opie::Core::OResource::SmallIcon), |
202 | Decbrightness, Opie::Core::OKeyPair(Qt::Key_D,0), | 198 | Decbrightness, Opie::Core::OKeyPair(Qt::Key_D,0), |
203 | this, SIGNAL(decBrightness()))); | 199 | this, SIGNAL(decBrightness()))); |
204 | m_viewManager->handleWidget( this ); | 200 | m_viewManager->handleWidget( this ); |
205 | m_viewManager->load(); | 201 | m_viewManager->load(); |
206 | } | 202 | } |
207 | 203 | ||
208 | void ImageView::keyReleaseEvent(QKeyEvent * e) | 204 | void ImageView::keyReleaseEvent(QKeyEvent * e) |
209 | { | 205 | { |
210 | if (!e || e->state()!=0) { | 206 | if (!e || e->state()!=0) { |
211 | return; | 207 | return; |
212 | } | 208 | } |
213 | if (e->key()==Qt::Key_Escape) { | 209 | if (e->key()==Qt::Key_Escape) { |
214 | if (fullScreen()) { | 210 | if (fullScreen()) { |
215 | emit hideMe(); | 211 | emit hideMe(); |
216 | } | 212 | } |
217 | if (closeIfHide) { | 213 | if (closeIfHide) { |
218 | QTimer::singleShot(0, qApp, SLOT(closeAllWindows())); | 214 | QTimer::singleShot(0, qApp, SLOT(closeAllWindows())); |
219 | } | 215 | } |
220 | } | 216 | } |
221 | } | 217 | } |
222 | 218 | ||
223 | void ImageView::setCloseIfHide(bool how) | 219 | void ImageView::setCloseIfHide(bool how) |
224 | { | 220 | { |
225 | closeIfHide = how; | 221 | closeIfHide = how; |
226 | } | 222 | } |
227 | 223 | ||
228 | void ImageView::slotShowImageInfo() | 224 | void ImageView::slotShowImageInfo() |
229 | { | 225 | { |
230 | emit dispImageInfo(m_lastName); | 226 | emit dispImageInfo(m_lastName); |
231 | } | 227 | } |
232 | 228 | ||
233 | void ImageView::contentsMousePressEvent ( QMouseEvent * e) | 229 | void ImageView::contentsMousePressEvent ( QMouseEvent * e) |
234 | { | 230 | { |
235 | if (e->button()==1) { | 231 | if (e->button()==1) { |
236 | return OImageScrollView::contentsMousePressEvent(e); | 232 | return OImageScrollView::contentsMousePressEvent(e); |
237 | } | 233 | } |
238 | QPopupMenu *m = new QPopupMenu(this); | 234 | QPopupMenu *m = new QPopupMenu(this); |
239 | if (!m) return; | 235 | if (!m) return; |
240 | if (m_hGroup) { | 236 | if (m_hGroup) { |
241 | m_hGroup->addTo(m); | 237 | m_hGroup->addTo(m); |
242 | } | 238 | } |
243 | if (fullScreen()) { | 239 | if (fullScreen()) { |
244 | if (m_gPrevNext) { | 240 | if (m_gPrevNext) { |
245 | m->insertSeparator(); | 241 | m->insertSeparator(); |
246 | m_gPrevNext->addTo(m); | 242 | m_gPrevNext->addTo(m); |
247 | } | 243 | } |
248 | if (m_gDisplayType) { | 244 | if (m_gDisplayType) { |
249 | m->insertSeparator(); | 245 | m->insertSeparator(); |
250 | m_gDisplayType->addTo(m); | 246 | m_gDisplayType->addTo(m); |
251 | } | 247 | } |
252 | if (m_gBright) { | 248 | if (m_gBright) { |
253 | m->insertSeparator(); | 249 | m->insertSeparator(); |
254 | m_gBright->addTo(m); | 250 | m_gBright->addTo(m); |
255 | } | 251 | } |
256 | } | 252 | } |
257 | m->setFocus(); | 253 | m->setFocus(); |
258 | m->exec( QPoint( QCursor::pos().x(), QCursor::pos().y()) ); | 254 | m->exec( QPoint( QCursor::pos().x(), QCursor::pos().y()) ); |
259 | if (m_hGroup) { | 255 | if (m_hGroup) { |
260 | m_hGroup->removeFrom(m); | 256 | m_hGroup->removeFrom(m); |
261 | } | 257 | } |
262 | if (m_gPrevNext) { | 258 | if (m_gPrevNext) { |
263 | m_gPrevNext->removeFrom(m); | 259 | m_gPrevNext->removeFrom(m); |
264 | } | 260 | } |
265 | if (m_gDisplayType) { | 261 | if (m_gDisplayType) { |
266 | m_gDisplayType->removeFrom(m); | 262 | m_gDisplayType->removeFrom(m); |
267 | } | 263 | } |
268 | if (m_gBright) { | 264 | if (m_gBright) { |
269 | m_gBright->removeFrom(m); | 265 | m_gBright->removeFrom(m); |
270 | } | 266 | } |
271 | delete m; | 267 | delete m; |
272 | } | 268 | } |
273 | 269 | ||
274 | void ImageView::setFullScreen(bool how,bool force) | 270 | void ImageView::setFullScreen(bool how,bool force) |
275 | { | 271 | { |
276 | m_isFullScreen = how; | 272 | m_isFullScreen = how; |
277 | if (how) { | 273 | if (how) { |
278 | m_ignore_next_in = true; | 274 | m_ignore_next_in = true; |
279 | // setFixedSize(qApp->desktop()->size()); | 275 | // setFixedSize(qApp->desktop()->size()); |