-rw-r--r-- | noncore/graphics/opie-eye/gui/imageview.cpp | 1 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/imageview.h | 1 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/mainwindow.cpp | 17 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/mainwindow.h | 2 |
4 files changed, 19 insertions, 2 deletions
diff --git a/noncore/graphics/opie-eye/gui/imageview.cpp b/noncore/graphics/opie-eye/gui/imageview.cpp index 8e7f982..ee4b0a1 100644 --- a/noncore/graphics/opie-eye/gui/imageview.cpp +++ b/noncore/graphics/opie-eye/gui/imageview.cpp | |||
@@ -53,32 +53,33 @@ void ImageView::initKeys() | |||
53 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", | 53 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", |
54 | Resource::loadPixmap("1to1"), ViewInfo, | 54 | Resource::loadPixmap("1to1"), ViewInfo, |
55 | Opie::Core::OKeyPair(Qt::Key_I,0), | 55 | Opie::Core::OKeyPair(Qt::Key_I,0), |
56 | this, SLOT(slotShowImageInfo()))); | 56 | this, SLOT(slotShowImageInfo()))); |
57 | m_viewManager->handleWidget( this ); | 57 | m_viewManager->handleWidget( this ); |
58 | m_viewManager->load(); | 58 | m_viewManager->load(); |
59 | } | 59 | } |
60 | 60 | ||
61 | void ImageView::keyReleaseEvent(QKeyEvent * e) | 61 | void ImageView::keyReleaseEvent(QKeyEvent * e) |
62 | { | 62 | { |
63 | if (!e || e->state()!=0) { | 63 | if (!e || e->state()!=0) { |
64 | return; | 64 | return; |
65 | } | 65 | } |
66 | if (e->key()==Qt::Key_N) slotDispNext(); | 66 | if (e->key()==Qt::Key_N) slotDispNext(); |
67 | if (e->key()==Qt::Key_P) slotDispPrev(); | 67 | if (e->key()==Qt::Key_P) slotDispPrev(); |
68 | if (e->key()==Qt::Key_F) emit toggleFullScreen(); | 68 | if (e->key()==Qt::Key_F) emit toggleFullScreen(); |
69 | if (e->key()==Qt::Key_Escape && fullScreen()) emit hideMe(); | ||
69 | } | 70 | } |
70 | 71 | ||
71 | void ImageView::slotDispNext() | 72 | void ImageView::slotDispNext() |
72 | { | 73 | { |
73 | emit dispNext(); | 74 | emit dispNext(); |
74 | } | 75 | } |
75 | 76 | ||
76 | void ImageView::slotDispPrev() | 77 | void ImageView::slotDispPrev() |
77 | { | 78 | { |
78 | emit dispPrev(); | 79 | emit dispPrev(); |
79 | } | 80 | } |
80 | 81 | ||
81 | void ImageView::slotShowImageInfo() | 82 | void ImageView::slotShowImageInfo() |
82 | { | 83 | { |
83 | emit dispImageInfo(m_lastName); | 84 | emit dispImageInfo(m_lastName); |
84 | } | 85 | } |
diff --git a/noncore/graphics/opie-eye/gui/imageview.h b/noncore/graphics/opie-eye/gui/imageview.h index 32f7e11..75f798c 100644 --- a/noncore/graphics/opie-eye/gui/imageview.h +++ b/noncore/graphics/opie-eye/gui/imageview.h | |||
@@ -18,30 +18,31 @@ class ImageView:public Opie::MM::OImageScrollView | |||
18 | ViewInfo, | 18 | ViewInfo, |
19 | FullScreen | 19 | FullScreen |
20 | }; | 20 | }; |
21 | 21 | ||
22 | public: | 22 | public: |
23 | ImageView(Opie::Core::OConfig *cfg, QWidget* parent, const char* name = 0, WFlags fl = 0 ); | 23 | ImageView(Opie::Core::OConfig *cfg, QWidget* parent, const char* name = 0, WFlags fl = 0 ); |
24 | virtual ~ImageView(); | 24 | virtual ~ImageView(); |
25 | Opie::Core::OKeyConfigManager* manager(); | 25 | Opie::Core::OKeyConfigManager* manager(); |
26 | void setFullScreen(bool how){m_isFullScreen = how;} | 26 | void setFullScreen(bool how){m_isFullScreen = how;} |
27 | bool fullScreen(){return m_isFullScreen;} | 27 | bool fullScreen(){return m_isFullScreen;} |
28 | 28 | ||
29 | signals: | 29 | signals: |
30 | void dispImageInfo(const QString&); | 30 | void dispImageInfo(const QString&); |
31 | void dispNext(); | 31 | void dispNext(); |
32 | void dispPrev(); | 32 | void dispPrev(); |
33 | void toggleFullScreen(); | 33 | void toggleFullScreen(); |
34 | void hideMe(); | ||
34 | 35 | ||
35 | protected: | 36 | protected: |
36 | Opie::Core::OConfig * m_cfg; | 37 | Opie::Core::OConfig * m_cfg; |
37 | Opie::Core::OKeyConfigManager*m_viewManager; | 38 | Opie::Core::OKeyConfigManager*m_viewManager; |
38 | void initKeys(); | 39 | void initKeys(); |
39 | bool m_isFullScreen:1; | 40 | bool m_isFullScreen:1; |
40 | 41 | ||
41 | protected slots: | 42 | protected slots: |
42 | virtual void slotShowImageInfo(); | 43 | virtual void slotShowImageInfo(); |
43 | virtual void slotDispNext(); | 44 | virtual void slotDispNext(); |
44 | virtual void slotDispPrev(); | 45 | virtual void slotDispPrev(); |
45 | virtual void keyReleaseEvent(QKeyEvent * e); | 46 | virtual void keyReleaseEvent(QKeyEvent * e); |
46 | }; | 47 | }; |
47 | #endif | 48 | #endif |
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp index 9b929a1..ef6e6df 100644 --- a/noncore/graphics/opie-eye/gui/mainwindow.cpp +++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp | |||
@@ -271,120 +271,135 @@ void PMainWindow::initInfo() { | |||
271 | connect(m_info,SIGNAL(dispImage(const QString&)),this,SLOT(slotDisplay(const QString&))); | 271 | connect(m_info,SIGNAL(dispImage(const QString&)),this,SLOT(slotDisplay(const QString&))); |
272 | } | 272 | } |
273 | void PMainWindow::initDisp() { | 273 | void PMainWindow::initDisp() { |
274 | initT<ImageView>( "Image ScrollView", &m_disp, ImageDisplay ); | 274 | initT<ImageView>( "Image ScrollView", &m_disp, ImageDisplay ); |
275 | if (m_disp) { | 275 | if (m_disp) { |
276 | if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { | 276 | if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { |
277 | m_disp->setMinimumSize(QApplication::desktop()->size()/2); | 277 | m_disp->setMinimumSize(QApplication::desktop()->size()/2); |
278 | } | 278 | } |
279 | m_disp->setAutoScale(autoScale); | 279 | m_disp->setAutoScale(autoScale); |
280 | m_disp->setAutoRotate(autoRotate); | 280 | m_disp->setAutoRotate(autoRotate); |
281 | m_disp->setShowZoomer(zoomerOn); | 281 | m_disp->setShowZoomer(zoomerOn); |
282 | m_disp->setBackgroundColor(white); | 282 | m_disp->setBackgroundColor(white); |
283 | connect(m_disp,SIGNAL(dispImageInfo(const QString&)),this,SLOT(slotShowInfo(const QString&))); | 283 | connect(m_disp,SIGNAL(dispImageInfo(const QString&)),this,SLOT(slotShowInfo(const QString&))); |
284 | connect(m_disp,SIGNAL(dispNext()),m_view,SLOT(slotShowNext())); | 284 | connect(m_disp,SIGNAL(dispNext()),m_view,SLOT(slotShowNext())); |
285 | connect(m_disp,SIGNAL(dispPrev()),m_view,SLOT(slotShowPrev())); | 285 | connect(m_disp,SIGNAL(dispPrev()),m_view,SLOT(slotShowPrev())); |
286 | connect(m_disp,SIGNAL(toggleFullScreen()),this,SLOT(slotToggleFullScreen())); | 286 | connect(m_disp,SIGNAL(toggleFullScreen()),this,SLOT(slotToggleFullScreen())); |
287 | connect(m_disp,SIGNAL(hideMe()),this,SLOT(raiseIconView())); | ||
287 | } | 288 | } |
288 | } | 289 | } |
289 | 290 | ||
290 | void PMainWindow::slotToggleFullScreen() | 291 | void PMainWindow::slotToggleFullScreen() |
291 | { | 292 | { |
292 | odebug << "Toggle full " << oendl; | 293 | odebug << "Toggle full " << oendl; |
293 | if (!m_disp) return; | 294 | if (!m_disp) return; |
294 | bool current = !m_disp->fullScreen(); | 295 | bool current = !m_disp->fullScreen(); |
295 | m_disp->setFullScreen(current); | 296 | m_disp->setFullScreen(current); |
296 | odebug << "Current = " << current << oendl; | 297 | odebug << "Current = " << current << oendl; |
297 | if (current) { | 298 | if (current) { |
298 | odebug << "full" << oendl; | 299 | odebug << "full" << oendl; |
299 | m_disp->setBackgroundColor(black); | 300 | m_disp->setBackgroundColor(black); |
300 | m_disp->reparent(0,QPoint(0,0)); | 301 | m_disp->reparent(0,QPoint(0,0)); |
302 | m_disp->setVScrollBarMode(QScrollView::AlwaysOff); | ||
303 | m_disp->setHScrollBarMode(QScrollView::AlwaysOff); | ||
301 | m_disp->resize(qApp->desktop()->width(), qApp->desktop()->height()); | 304 | m_disp->resize(qApp->desktop()->width(), qApp->desktop()->height()); |
302 | m_disp->showFullScreen(); | 305 | m_disp->showFullScreen(); |
303 | } else { | 306 | } else { |
304 | odebug << "window" << oendl; | 307 | odebug << "window" << oendl; |
305 | m_disp->setBackgroundColor(white); | 308 | m_disp->setBackgroundColor(white); |
306 | m_stack->addWidget(m_disp,ImageDisplay); | 309 | m_stack->addWidget(m_disp,ImageDisplay); |
310 | m_disp->setVScrollBarMode(QScrollView::Auto); | ||
311 | m_disp->setHScrollBarMode(QScrollView::Auto); | ||
307 | m_stack->raiseWidget(m_disp); | 312 | m_stack->raiseWidget(m_disp); |
308 | if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { | 313 | if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { |
309 | m_disp->resize(m_disp->minimumSize()); | 314 | m_disp->resize(m_disp->minimumSize()); |
310 | } | 315 | } |
311 | } | 316 | } |
312 | } | 317 | } |
313 | 318 | ||
314 | /** | 319 | /** |
315 | * With big Screen the plan could be to 'detach' the image | 320 | * With big Screen the plan could be to 'detach' the image |
316 | * window if visible and to create a ne wone | 321 | * window if visible and to create a ne wone |
317 | * init* already supports it but I make no use of it for | 322 | * init* already supports it but I make no use of it for |
318 | * now. We set filename and raise | 323 | * now. We set filename and raise |
319 | * | 324 | * |
320 | * ### FIXME and talk to alwin | 325 | * ### FIXME and talk to alwin |
321 | */ | 326 | */ |
322 | void PMainWindow::slotShowInfo( const QString& inf ) { | 327 | void PMainWindow::slotShowInfo( const QString& inf ) { |
323 | if ( !m_info ) { | 328 | if ( !m_info ) { |
324 | initInfo(); | 329 | initInfo(); |
325 | } | 330 | } |
326 | m_info->setPath( inf ); | 331 | m_info->setPath( inf ); |
327 | if (m_stack->mode() == Opie::Ui::OWidgetStack::SmallScreen) { | 332 | if (m_stack->mode() == Opie::Ui::OWidgetStack::SmallScreen) { |
328 | prevButton->hide(); | 333 | prevButton->hide(); |
329 | nextButton->hide(); | 334 | nextButton->hide(); |
330 | upButton->hide(); | 335 | upButton->hide(); |
331 | fsButton->hide(); | 336 | fsButton->hide(); |
332 | viewModeButton->hide(); | 337 | viewModeButton->hide(); |
333 | } | 338 | } |
339 | if (m_disp && m_disp->fullScreen() && m_disp->isVisible()) { | ||
340 | m_disp->hide(); | ||
341 | } | ||
334 | m_stack->raiseWidget( ImageInfo ); | 342 | m_stack->raiseWidget( ImageInfo ); |
335 | } | 343 | } |
336 | 344 | ||
337 | void PMainWindow::slotDisplay( const QString& inf ) { | 345 | void PMainWindow::slotDisplay( const QString& inf ) { |
338 | if ( !m_disp ) { | 346 | if ( !m_disp ) { |
339 | initDisp(); | 347 | initDisp(); |
340 | } | 348 | } |
341 | m_disp->setImage( inf ); | 349 | m_disp->setImage( inf ); |
342 | if (m_stack->mode() == Opie::Ui::OWidgetStack::SmallScreen) { | 350 | if (m_stack->mode() == Opie::Ui::OWidgetStack::SmallScreen) { |
343 | prevButton->show(); | 351 | prevButton->show(); |
344 | nextButton->show(); | 352 | nextButton->show(); |
345 | upButton->hide(); | 353 | upButton->hide(); |
346 | fsButton->hide(); | 354 | fsButton->hide(); |
347 | viewModeButton->hide(); | 355 | viewModeButton->hide(); |
348 | } | 356 | } |
349 | m_stack->raiseWidget( ImageDisplay ); | 357 | if (m_disp->fullScreen()) { |
358 | m_disp->show(); | ||
359 | } else { | ||
360 | m_stack->raiseWidget( ImageDisplay ); | ||
361 | } | ||
350 | } | 362 | } |
351 | 363 | ||
352 | void PMainWindow::slotReturn() { | 364 | void PMainWindow::slotReturn() { |
353 | raiseIconView(); | 365 | raiseIconView(); |
354 | } | 366 | } |
355 | 367 | ||
356 | 368 | ||
357 | void PMainWindow::closeEvent( QCloseEvent* ev ) { | 369 | void PMainWindow::closeEvent( QCloseEvent* ev ) { |
358 | /* | 370 | /* |
359 | * return from view | 371 | * return from view |
360 | * or properly quit | 372 | * or properly quit |
361 | */ | 373 | */ |
362 | if ( m_stack->visibleWidget() == m_info || | 374 | if ( m_stack->visibleWidget() == m_info || |
363 | m_stack->visibleWidget() == m_disp ) { | 375 | m_stack->visibleWidget() == m_disp ) { |
364 | raiseIconView(); | 376 | raiseIconView(); |
365 | ev->ignore(); | 377 | ev->ignore(); |
366 | return; | 378 | return; |
367 | } | 379 | } |
368 | ev->accept(); | 380 | ev->accept(); |
369 | QTimer::singleShot(0, qApp, SLOT(closeAllWindows())); | 381 | QTimer::singleShot(0, qApp, SLOT(closeAllWindows())); |
370 | } | 382 | } |
371 | 383 | ||
372 | void PMainWindow::raiseIconView() { | 384 | void PMainWindow::raiseIconView() { |
373 | if (m_stack->mode() == Opie::Ui::OWidgetStack::SmallScreen) { | 385 | if (m_stack->mode() == Opie::Ui::OWidgetStack::SmallScreen) { |
374 | prevButton->hide(); | 386 | prevButton->hide(); |
375 | nextButton->hide(); | 387 | nextButton->hide(); |
376 | upButton->show(); | 388 | upButton->show(); |
377 | fsButton->show(); | 389 | fsButton->show(); |
378 | viewModeButton->show(); | 390 | viewModeButton->show(); |
379 | } | 391 | } |
392 | if (m_disp && m_disp->fullScreen() && m_disp->isVisible()) { | ||
393 | m_disp->hide(); | ||
394 | } | ||
380 | m_stack->raiseWidget( IconView ); | 395 | m_stack->raiseWidget( IconView ); |
381 | } | 396 | } |
382 | 397 | ||
383 | void PMainWindow::setDocument( const QString& showImg ) { | 398 | void PMainWindow::setDocument( const QString& showImg ) { |
384 | QString file = showImg; | 399 | QString file = showImg; |
385 | DocLnk lnk(showImg); | 400 | DocLnk lnk(showImg); |
386 | if (lnk.isValid() ) | 401 | if (lnk.isValid() ) |
387 | file = lnk.file(); | 402 | file = lnk.file(); |
388 | 403 | ||
389 | slotDisplay( file ); | 404 | slotDisplay( file ); |
390 | } | 405 | } |
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.h b/noncore/graphics/opie-eye/gui/mainwindow.h index 4cfc39c..d238763 100644 --- a/noncore/graphics/opie-eye/gui/mainwindow.h +++ b/noncore/graphics/opie-eye/gui/mainwindow.h | |||
@@ -33,33 +33,33 @@ public: | |||
33 | PMainWindow(QWidget*, const char*, WFlags ); | 33 | PMainWindow(QWidget*, const char*, WFlags ); |
34 | ~PMainWindow(); | 34 | ~PMainWindow(); |
35 | 35 | ||
36 | signals: | 36 | signals: |
37 | void configChanged(); | 37 | void configChanged(); |
38 | 38 | ||
39 | public slots: | 39 | public slots: |
40 | void slotShowInfo( const QString& inf ); | 40 | void slotShowInfo( const QString& inf ); |
41 | void slotDisplay( const QString& inf ); | 41 | void slotDisplay( const QString& inf ); |
42 | void slotReturn(); | 42 | void slotReturn(); |
43 | void slotRotateToggled(bool); | 43 | void slotRotateToggled(bool); |
44 | void slotScaleToggled(bool); | 44 | void slotScaleToggled(bool); |
45 | void slotZoomerToggled(bool); | 45 | void slotZoomerToggled(bool); |
46 | void setDocument( const QString& ); | 46 | void setDocument( const QString& ); |
47 | virtual void slotToggleFullScreen(); | 47 | virtual void slotToggleFullScreen(); |
48 | 48 | ||
49 | protected: | 49 | protected slots: |
50 | void raiseIconView(); | 50 | void raiseIconView(); |
51 | void closeEvent( QCloseEvent* ); | 51 | void closeEvent( QCloseEvent* ); |
52 | 52 | ||
53 | private: | 53 | private: |
54 | template<class T> void initT( const char* name, T**, int ); | 54 | template<class T> void initT( const char* name, T**, int ); |
55 | void initInfo(); | 55 | void initInfo(); |
56 | void initDisp(); | 56 | void initDisp(); |
57 | 57 | ||
58 | private: | 58 | private: |
59 | Opie::Core::OConfig *m_cfg; | 59 | Opie::Core::OConfig *m_cfg; |
60 | Opie::Ui::OWidgetStack *m_stack; | 60 | Opie::Ui::OWidgetStack *m_stack; |
61 | PIconView* m_view; | 61 | PIconView* m_view; |
62 | imageinfo *m_info; | 62 | imageinfo *m_info; |
63 | ImageView *m_disp; | 63 | ImageView *m_disp; |
64 | bool autoRotate; | 64 | bool autoRotate; |
65 | bool autoScale; | 65 | bool autoScale; |