author | alwin <alwin> | 2004-04-16 20:35:35 (UTC) |
---|---|---|
committer | alwin <alwin> | 2004-04-16 20:35:35 (UTC) |
commit | 217d387def6d97f912352899fd83908b28d75dfc (patch) (unidiff) | |
tree | 14135801a52bbbfca4395a4cbf4b7fdffdeb45ad | |
parent | cc56768485c3785439883dd1c456493f7ece2d84 (diff) | |
download | opie-217d387def6d97f912352899fd83908b28d75dfc.zip opie-217d387def6d97f912352899fd83908b28d75dfc.tar.gz opie-217d387def6d97f912352899fd83908b28d75dfc.tar.bz2 |
Implemented fullscreen mode (f-key)
-rw-r--r-- | noncore/graphics/opie-eye/gui/imageview.cpp | 11 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/imageview.h | 8 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/mainwindow.cpp | 26 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/mainwindow.h | 1 |
4 files changed, 38 insertions, 8 deletions
diff --git a/noncore/graphics/opie-eye/gui/imageview.cpp b/noncore/graphics/opie-eye/gui/imageview.cpp index fbc4494..8e7f982 100644 --- a/noncore/graphics/opie-eye/gui/imageview.cpp +++ b/noncore/graphics/opie-eye/gui/imageview.cpp | |||
@@ -4,24 +4,25 @@ | |||
4 | #include <opie2/oconfig.h> | 4 | #include <opie2/oconfig.h> |
5 | #include <opie2/okeyconfigwidget.h> | 5 | #include <opie2/okeyconfigwidget.h> |
6 | 6 | ||
7 | #include <qpe/resource.h> | 7 | #include <qpe/resource.h> |
8 | 8 | ||
9 | using namespace Opie::Core; | 9 | using namespace Opie::Core; |
10 | 10 | ||
11 | ImageView::ImageView(Opie::Core::OConfig *cfg, QWidget* parent, const char* name, WFlags fl ) | 11 | ImageView::ImageView(Opie::Core::OConfig *cfg, QWidget* parent, const char* name, WFlags fl ) |
12 | : Opie::MM::OImageScrollView(parent,name,fl) | 12 | : Opie::MM::OImageScrollView(parent,name,fl) |
13 | { | 13 | { |
14 | m_viewManager = 0; | 14 | m_viewManager = 0; |
15 | m_cfg = cfg; | 15 | m_cfg = cfg; |
16 | m_isFullScreen = false; | ||
16 | initKeys(); | 17 | initKeys(); |
17 | } | 18 | } |
18 | 19 | ||
19 | ImageView::~ImageView() | 20 | ImageView::~ImageView() |
20 | { | 21 | { |
21 | if (m_viewManager) { | 22 | if (m_viewManager) { |
22 | delete m_viewManager; | 23 | delete m_viewManager; |
23 | } | 24 | } |
24 | } | 25 | } |
25 | 26 | ||
26 | Opie::Core::OKeyConfigManager* ImageView::manager() | 27 | Opie::Core::OKeyConfigManager* ImageView::manager() |
27 | { | 28 | { |
@@ -36,48 +37,44 @@ void ImageView::initKeys() | |||
36 | odebug << "init imageview keys" << oendl; | 37 | odebug << "init imageview keys" << oendl; |
37 | if (!m_cfg) { | 38 | if (!m_cfg) { |
38 | m_cfg = new Opie::Core::OConfig("phunkview"); | 39 | m_cfg = new Opie::Core::OConfig("phunkview"); |
39 | m_cfg->setGroup("image_view_keys" ); | 40 | m_cfg->setGroup("image_view_keys" ); |
40 | } | 41 | } |
41 | Opie::Core::OKeyPair::List lst; | 42 | Opie::Core::OKeyPair::List lst; |
42 | lst.append( Opie::Core::OKeyPair::upArrowKey() ); | 43 | lst.append( Opie::Core::OKeyPair::upArrowKey() ); |
43 | lst.append( Opie::Core::OKeyPair::downArrowKey() ); | 44 | lst.append( Opie::Core::OKeyPair::downArrowKey() ); |
44 | lst.append( Opie::Core::OKeyPair::leftArrowKey() ); | 45 | lst.append( Opie::Core::OKeyPair::leftArrowKey() ); |
45 | lst.append( Opie::Core::OKeyPair::rightArrowKey() ); | 46 | lst.append( Opie::Core::OKeyPair::rightArrowKey() ); |
46 | lst.append( Opie::Core::OKeyPair(Qt::Key_N,0)); | 47 | lst.append( Opie::Core::OKeyPair(Qt::Key_N,0)); |
47 | lst.append( Opie::Core::OKeyPair(Qt::Key_P,0)); | 48 | lst.append( Opie::Core::OKeyPair(Qt::Key_P,0)); |
49 | lst.append( Opie::Core::OKeyPair(Qt::Key_F,0)); | ||
48 | 50 | ||
49 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "image_view_keys", | 51 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "image_view_keys", |
50 | lst, false,this, "image_view_keys" ); | 52 | lst, false,this, "image_view_keys" ); |
51 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", | 53 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", |
52 | Resource::loadPixmap("1to1"), ViewInfo, | 54 | Resource::loadPixmap("1to1"), ViewInfo, |
53 | Opie::Core::OKeyPair(Qt::Key_I,Qt::ShiftButton), | 55 | Opie::Core::OKeyPair(Qt::Key_I,0), |
54 | this, SLOT(slotShowImageInfo()))); | 56 | this, SLOT(slotShowImageInfo()))); |
55 | #if 0 | ||
56 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Next image"), "nextimage", | ||
57 | Resource::loadPixmap("next"), ViewInfo, | ||
58 | Opie::Core::OKeyPair(Qt::Key_N,0), | ||
59 | this, SLOT(slotDispNext()))); | ||
60 | #endif | ||
61 | m_viewManager->handleWidget( this ); | 57 | m_viewManager->handleWidget( this ); |
62 | m_viewManager->load(); | 58 | m_viewManager->load(); |
63 | } | 59 | } |
64 | 60 | ||
65 | void ImageView::keyReleaseEvent(QKeyEvent * e) | 61 | void ImageView::keyReleaseEvent(QKeyEvent * e) |
66 | { | 62 | { |
67 | if (!e || e->state()!=0) { | 63 | if (!e || e->state()!=0) { |
68 | return; | 64 | return; |
69 | } | 65 | } |
70 | if (e->key()==Qt::Key_N) slotDispNext(); | 66 | if (e->key()==Qt::Key_N) slotDispNext(); |
71 | if (e->key()==Qt::Key_P) slotDispPrev(); | 67 | if (e->key()==Qt::Key_P) slotDispPrev(); |
68 | if (e->key()==Qt::Key_F) emit toggleFullScreen(); | ||
72 | } | 69 | } |
73 | 70 | ||
74 | void ImageView::slotDispNext() | 71 | void ImageView::slotDispNext() |
75 | { | 72 | { |
76 | emit dispNext(); | 73 | emit dispNext(); |
77 | } | 74 | } |
78 | 75 | ||
79 | void ImageView::slotDispPrev() | 76 | void ImageView::slotDispPrev() |
80 | { | 77 | { |
81 | emit dispPrev(); | 78 | emit dispPrev(); |
82 | } | 79 | } |
83 | 80 | ||
diff --git a/noncore/graphics/opie-eye/gui/imageview.h b/noncore/graphics/opie-eye/gui/imageview.h index f467f00..32f7e11 100644 --- a/noncore/graphics/opie-eye/gui/imageview.h +++ b/noncore/graphics/opie-eye/gui/imageview.h | |||
@@ -6,36 +6,42 @@ | |||
6 | namespace Opie { | 6 | namespace Opie { |
7 | namespace Core { | 7 | namespace Core { |
8 | class OConfig; | 8 | class OConfig; |
9 | class OKeyConfigManager; | 9 | class OKeyConfigManager; |
10 | } | 10 | } |
11 | } | 11 | } |
12 | 12 | ||
13 | class ImageView:public Opie::MM::OImageScrollView | 13 | class ImageView:public Opie::MM::OImageScrollView |
14 | { | 14 | { |
15 | Q_OBJECT | 15 | Q_OBJECT |
16 | 16 | ||
17 | enum ActionIds { | 17 | enum ActionIds { |
18 | ViewInfo | 18 | ViewInfo, |
19 | FullScreen | ||
19 | }; | 20 | }; |
20 | 21 | ||
21 | public: | 22 | public: |
22 | 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 ); |
23 | virtual ~ImageView(); | 24 | virtual ~ImageView(); |
24 | Opie::Core::OKeyConfigManager* manager(); | 25 | Opie::Core::OKeyConfigManager* manager(); |
26 | void setFullScreen(bool how){m_isFullScreen = how;} | ||
27 | bool fullScreen(){return m_isFullScreen;} | ||
25 | 28 | ||
26 | signals: | 29 | signals: |
27 | void dispImageInfo(const QString&); | 30 | void dispImageInfo(const QString&); |
28 | void dispNext(); | 31 | void dispNext(); |
29 | void dispPrev(); | 32 | void dispPrev(); |
33 | void toggleFullScreen(); | ||
30 | 34 | ||
31 | protected: | 35 | protected: |
32 | Opie::Core::OConfig * m_cfg; | 36 | Opie::Core::OConfig * m_cfg; |
33 | Opie::Core::OKeyConfigManager*m_viewManager; | 37 | Opie::Core::OKeyConfigManager*m_viewManager; |
34 | void initKeys(); | 38 | void initKeys(); |
39 | bool m_isFullScreen:1; | ||
40 | |||
35 | protected slots: | 41 | protected slots: |
36 | virtual void slotShowImageInfo(); | 42 | virtual void slotShowImageInfo(); |
37 | virtual void slotDispNext(); | 43 | virtual void slotDispNext(); |
38 | virtual void slotDispPrev(); | 44 | virtual void slotDispPrev(); |
39 | virtual void keyReleaseEvent(QKeyEvent * e); | 45 | virtual void keyReleaseEvent(QKeyEvent * e); |
40 | }; | 46 | }; |
41 | #endif | 47 | #endif |
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp index 4852bf6..9b929a1 100644 --- a/noncore/graphics/opie-eye/gui/mainwindow.cpp +++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp | |||
@@ -270,27 +270,53 @@ void PMainWindow::initInfo() { | |||
270 | initT<imageinfo>( "Image Info", &m_info, ImageInfo ); | 270 | initT<imageinfo>( "Image Info", &m_info, ImageInfo ); |
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 | 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&))); |
283 | connect(m_disp,SIGNAL(dispNext()),m_view,SLOT(slotShowNext())); | 284 | connect(m_disp,SIGNAL(dispNext()),m_view,SLOT(slotShowNext())); |
284 | 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())); | ||
287 | } | ||
288 | } | ||
289 | |||
290 | void PMainWindow::slotToggleFullScreen() | ||
291 | { | ||
292 | odebug << "Toggle full " << oendl; | ||
293 | if (!m_disp) return; | ||
294 | bool current = !m_disp->fullScreen(); | ||
295 | m_disp->setFullScreen(current); | ||
296 | odebug << "Current = " << current << oendl; | ||
297 | if (current) { | ||
298 | odebug << "full" << oendl; | ||
299 | m_disp->setBackgroundColor(black); | ||
300 | m_disp->reparent(0,QPoint(0,0)); | ||
301 | m_disp->resize(qApp->desktop()->width(), qApp->desktop()->height()); | ||
302 | m_disp->showFullScreen(); | ||
303 | } else { | ||
304 | odebug << "window" << oendl; | ||
305 | m_disp->setBackgroundColor(white); | ||
306 | m_stack->addWidget(m_disp,ImageDisplay); | ||
307 | m_stack->raiseWidget(m_disp); | ||
308 | if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { | ||
309 | m_disp->resize(m_disp->minimumSize()); | ||
310 | } | ||
285 | } | 311 | } |
286 | } | 312 | } |
287 | 313 | ||
288 | /** | 314 | /** |
289 | * With big Screen the plan could be to 'detach' the image | 315 | * With big Screen the plan could be to 'detach' the image |
290 | * window if visible and to create a ne wone | 316 | * window if visible and to create a ne wone |
291 | * init* already supports it but I make no use of it for | 317 | * init* already supports it but I make no use of it for |
292 | * now. We set filename and raise | 318 | * now. We set filename and raise |
293 | * | 319 | * |
294 | * ### FIXME and talk to alwin | 320 | * ### FIXME and talk to alwin |
295 | */ | 321 | */ |
296 | void PMainWindow::slotShowInfo( const QString& inf ) { | 322 | void PMainWindow::slotShowInfo( const QString& inf ) { |
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.h b/noncore/graphics/opie-eye/gui/mainwindow.h index 1967ef7..4cfc39c 100644 --- a/noncore/graphics/opie-eye/gui/mainwindow.h +++ b/noncore/graphics/opie-eye/gui/mainwindow.h | |||
@@ -35,24 +35,25 @@ public: | |||
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 | 48 | ||
48 | protected: | 49 | protected: |
49 | void raiseIconView(); | 50 | void raiseIconView(); |
50 | void closeEvent( QCloseEvent* ); | 51 | void closeEvent( QCloseEvent* ); |
51 | 52 | ||
52 | private: | 53 | private: |
53 | template<class T> void initT( const char* name, T**, int ); | 54 | template<class T> void initT( const char* name, T**, int ); |
54 | void initInfo(); | 55 | void initInfo(); |
55 | void initDisp(); | 56 | void initDisp(); |
56 | 57 | ||
57 | private: | 58 | private: |
58 | Opie::Core::OConfig *m_cfg; | 59 | Opie::Core::OConfig *m_cfg; |