author | alwin <alwin> | 2004-04-20 14:08:54 (UTC) |
---|---|---|
committer | alwin <alwin> | 2004-04-20 14:08:54 (UTC) |
commit | ccba33667c0152cb58a6d0502170b388889571c9 (patch) (unidiff) | |
tree | 435da693facffec996bcaa8d8ae500c773794d7f | |
parent | 135990877f009bd05f00b064a1a255be3e5ab087 (diff) | |
download | opie-ccba33667c0152cb58a6d0502170b388889571c9.zip opie-ccba33667c0152cb58a6d0502170b388889571c9.tar.gz opie-ccba33667c0152cb58a6d0502170b388889571c9.tar.bz2 |
keys in imageview handled via keyconfig manager again
-rw-r--r-- | noncore/graphics/opie-eye/gui/imageview.cpp | 34 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/imageview.h | 8 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/mainwindow.cpp | 18 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/mainwindow.h | 3 |
4 files changed, 38 insertions, 25 deletions
diff --git a/noncore/graphics/opie-eye/gui/imageview.cpp b/noncore/graphics/opie-eye/gui/imageview.cpp index ee4b0a1..88a8bc6 100644 --- a/noncore/graphics/opie-eye/gui/imageview.cpp +++ b/noncore/graphics/opie-eye/gui/imageview.cpp | |||
@@ -31,55 +31,57 @@ Opie::Core::OKeyConfigManager* ImageView::manager() | |||
31 | } | 31 | } |
32 | return m_viewManager; | 32 | return m_viewManager; |
33 | } | 33 | } |
34 | 34 | ||
35 | void ImageView::initKeys() | 35 | void ImageView::initKeys() |
36 | { | 36 | { |
37 | odebug << "init imageview keys" << oendl; | 37 | odebug << "init imageview keys" << oendl; |
38 | if (!m_cfg) { | 38 | if (!m_cfg) { |
39 | m_cfg = new Opie::Core::OConfig("phunkview"); | 39 | m_cfg = new Opie::Core::OConfig("phunkview"); |
40 | m_cfg->setGroup("image_view_keys" ); | 40 | m_cfg->setGroup("image_view_keys" ); |
41 | } | 41 | } |
42 | Opie::Core::OKeyPair::List lst; | 42 | Opie::Core::OKeyPair::List lst; |
43 | lst.append( Opie::Core::OKeyPair::upArrowKey() ); | 43 | lst.append( Opie::Core::OKeyPair::upArrowKey() ); |
44 | lst.append( Opie::Core::OKeyPair::downArrowKey() ); | 44 | lst.append( Opie::Core::OKeyPair::downArrowKey() ); |
45 | lst.append( Opie::Core::OKeyPair::leftArrowKey() ); | 45 | lst.append( Opie::Core::OKeyPair::leftArrowKey() ); |
46 | lst.append( Opie::Core::OKeyPair::rightArrowKey() ); | 46 | lst.append( Opie::Core::OKeyPair::rightArrowKey() ); |
47 | lst.append( Opie::Core::OKeyPair(Qt::Key_N,0)); | 47 | lst.append( Opie::Core::OKeyPair(Qt::Key_Escape,0)); |
48 | lst.append( Opie::Core::OKeyPair(Qt::Key_P,0)); | ||
49 | lst.append( Opie::Core::OKeyPair(Qt::Key_F,0)); | ||
50 | 48 | ||
51 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "image_view_keys", | 49 | m_viewManager = new Opie::Core::OKeyConfigManager(m_cfg, "image_view_keys", |
52 | lst, false,this, "image_view_keys" ); | 50 | lst, false,this, "image_view_keys" ); |
53 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", | 51 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("View Image Info"), "imageviewinfo", |
54 | Resource::loadPixmap("1to1"), ViewInfo, | 52 | Resource::loadPixmap("1to1"), ViewInfo, |
55 | Opie::Core::OKeyPair(Qt::Key_I,0), | 53 | Opie::Core::OKeyPair(Qt::Key_I,0), |
56 | this, SLOT(slotShowImageInfo()))); | 54 | this, SLOT(slotShowImageInfo()))); |
55 | |||
56 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Switch to next image"), "imageshownext", | ||
57 | Resource::loadPixmap("forward"), ShowNext, | ||
58 | Opie::Core::OKeyPair(Qt::Key_N,0), | ||
59 | this, SIGNAL(dispNext()))); | ||
60 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Switch to previous image"), "imageshowprev", | ||
61 | Resource::loadPixmap("back"), ShowPrevious, | ||
62 | Opie::Core::OKeyPair(Qt::Key_P,0), | ||
63 | this, SIGNAL(dispPrev()))); | ||
64 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle fullscreen"), "imagefullscreen", | ||
65 | Resource::loadPixmap("fullscreen"), FullScreen, | ||
66 | Opie::Core::OKeyPair(Qt::Key_F,0), | ||
67 | this, SIGNAL(toggleFullScreen()))); | ||
68 | m_viewManager->addKeyConfig( Opie::Core::OKeyConfigItem(tr("Toggle thumbnail"), "imagezoomer", | ||
69 | Resource::loadPixmap("mag"), Zoomer, | ||
70 | Opie::Core::OKeyPair(Qt::Key_T,0), | ||
71 | this, SIGNAL(toggleZoomer()))); | ||
57 | m_viewManager->handleWidget( this ); | 72 | m_viewManager->handleWidget( this ); |
58 | m_viewManager->load(); | 73 | m_viewManager->load(); |
59 | } | 74 | } |
60 | 75 | ||
61 | void ImageView::keyReleaseEvent(QKeyEvent * e) | 76 | void ImageView::keyReleaseEvent(QKeyEvent * e) |
62 | { | 77 | { |
63 | if (!e || e->state()!=0) { | 78 | if (!e || e->state()!=0) { |
64 | return; | 79 | return; |
65 | } | 80 | } |
66 | if (e->key()==Qt::Key_N) slotDispNext(); | ||
67 | if (e->key()==Qt::Key_P) slotDispPrev(); | ||
68 | if (e->key()==Qt::Key_F) emit toggleFullScreen(); | ||
69 | if (e->key()==Qt::Key_Escape && fullScreen()) emit hideMe(); | 81 | if (e->key()==Qt::Key_Escape && fullScreen()) emit hideMe(); |
70 | } | 82 | } |
71 | 83 | ||
72 | void ImageView::slotDispNext() | ||
73 | { | ||
74 | emit dispNext(); | ||
75 | } | ||
76 | |||
77 | void ImageView::slotDispPrev() | ||
78 | { | ||
79 | emit dispPrev(); | ||
80 | } | ||
81 | |||
82 | void ImageView::slotShowImageInfo() | 84 | void ImageView::slotShowImageInfo() |
83 | { | 85 | { |
84 | emit dispImageInfo(m_lastName); | 86 | emit dispImageInfo(m_lastName); |
85 | } | 87 | } |
diff --git a/noncore/graphics/opie-eye/gui/imageview.h b/noncore/graphics/opie-eye/gui/imageview.h index 75f798c..6bf930f 100644 --- a/noncore/graphics/opie-eye/gui/imageview.h +++ b/noncore/graphics/opie-eye/gui/imageview.h | |||
@@ -3,46 +3,48 @@ | |||
3 | 3 | ||
4 | #include <opie2/oimagescrollview.h> | 4 | #include <opie2/oimagescrollview.h> |
5 | 5 | ||
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 | FullScreen, |
20 | ShowNext, | ||
21 | ShowPrevious, | ||
22 | Zoomer, | ||
20 | }; | 23 | }; |
21 | 24 | ||
22 | public: | 25 | public: |
23 | ImageView(Opie::Core::OConfig *cfg, QWidget* parent, const char* name = 0, WFlags fl = 0 ); | 26 | ImageView(Opie::Core::OConfig *cfg, QWidget* parent, const char* name = 0, WFlags fl = 0 ); |
24 | virtual ~ImageView(); | 27 | virtual ~ImageView(); |
25 | Opie::Core::OKeyConfigManager* manager(); | 28 | Opie::Core::OKeyConfigManager* manager(); |
26 | void setFullScreen(bool how){m_isFullScreen = how;} | 29 | void setFullScreen(bool how){m_isFullScreen = how;} |
27 | bool fullScreen(){return m_isFullScreen;} | 30 | bool fullScreen(){return m_isFullScreen;} |
28 | 31 | ||
29 | signals: | 32 | signals: |
30 | void dispImageInfo(const QString&); | 33 | void dispImageInfo(const QString&); |
31 | void dispNext(); | 34 | void dispNext(); |
32 | void dispPrev(); | 35 | void dispPrev(); |
33 | void toggleFullScreen(); | 36 | void toggleFullScreen(); |
34 | void hideMe(); | 37 | void hideMe(); |
38 | void toggleZoomer(); | ||
35 | 39 | ||
36 | protected: | 40 | protected: |
37 | Opie::Core::OConfig * m_cfg; | 41 | Opie::Core::OConfig * m_cfg; |
38 | Opie::Core::OKeyConfigManager*m_viewManager; | 42 | Opie::Core::OKeyConfigManager*m_viewManager; |
39 | void initKeys(); | 43 | void initKeys(); |
40 | bool m_isFullScreen:1; | 44 | bool m_isFullScreen:1; |
41 | 45 | ||
42 | protected slots: | 46 | protected slots: |
43 | virtual void slotShowImageInfo(); | 47 | virtual void slotShowImageInfo(); |
44 | virtual void slotDispNext(); | ||
45 | virtual void slotDispPrev(); | ||
46 | virtual void keyReleaseEvent(QKeyEvent * e); | 48 | virtual void keyReleaseEvent(QKeyEvent * e); |
47 | }; | 49 | }; |
48 | #endif | 50 | #endif |
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp index a90231b..0484f73 100644 --- a/noncore/graphics/opie-eye/gui/mainwindow.cpp +++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp | |||
@@ -122,44 +122,51 @@ PMainWindow::PMainWindow(QWidget* wid, const char* name, WFlags style) | |||
122 | prevButton->hide(); | 122 | prevButton->hide(); |
123 | nextButton->hide(); | 123 | nextButton->hide(); |
124 | } else { | 124 | } else { |
125 | rotateButton->setOn(false); | 125 | rotateButton->setOn(false); |
126 | autoRotate = false; | 126 | autoRotate = false; |
127 | } | 127 | } |
128 | 128 | ||
129 | connect(rotateButton,SIGNAL(toggled(bool)),this,SLOT(slotRotateToggled(bool))); | 129 | connect(rotateButton,SIGNAL(toggled(bool)),this,SLOT(slotRotateToggled(bool))); |
130 | 130 | ||
131 | btn = new QToolButton(bar); | 131 | btn = new QToolButton(bar); |
132 | btn->setIconSet( Resource::loadIconSet( "1to1" ) ); | 132 | btn->setIconSet( Resource::loadIconSet( "1to1" ) ); |
133 | btn->setToggleButton(true); | 133 | btn->setToggleButton(true); |
134 | btn->setOn(false); | 134 | btn->setOn(false); |
135 | connect(btn,SIGNAL(toggled(bool)),this,SLOT(slotScaleToggled(bool))); | 135 | connect(btn,SIGNAL(toggled(bool)),this,SLOT(slotScaleToggled(bool))); |
136 | autoScale = true; | 136 | autoScale = true; |
137 | 137 | ||
138 | btn = new QToolButton(bar); | 138 | zoomButton = new QToolButton(bar); |
139 | btn->setIconSet( Resource::loadIconSet( "mag" ) ); | 139 | zoomButton->setIconSet( Resource::loadIconSet( "mag" ) ); |
140 | btn->setToggleButton(true); | 140 | zoomButton->setToggleButton(true); |
141 | btn->setOn(true); | 141 | zoomButton->setOn(true); |
142 | connect(btn,SIGNAL(toggled(bool)),this,SLOT(slotZoomerToggled(bool))); | 142 | connect(zoomButton,SIGNAL(toggled(bool)),this,SLOT(slotZoomerToggled(bool))); |
143 | zoomerOn = true; | 143 | zoomerOn = true; |
144 | } | 144 | } |
145 | 145 | ||
146 | PMainWindow::~PMainWindow() { | 146 | PMainWindow::~PMainWindow() { |
147 | odebug << "Shutting down" << oendl; | 147 | odebug << "Shutting down" << oendl; |
148 | } | 148 | } |
149 | 149 | ||
150 | void PMainWindow::slotToggleZoomer() | ||
151 | { | ||
152 | if (!m_disp) return; | ||
153 | bool cur = zoomButton->isOn(); | ||
154 | zoomButton->setOn(!cur); | ||
155 | } | ||
156 | |||
150 | void PMainWindow::slotZoomerToggled(bool how) | 157 | void PMainWindow::slotZoomerToggled(bool how) |
151 | { | 158 | { |
152 | zoomerOn = how; | 159 | zoomerOn = how; |
153 | if (m_disp) { | 160 | if (m_disp) { |
154 | m_disp->setShowZoomer(zoomerOn); | 161 | m_disp->setShowZoomer(zoomerOn); |
155 | } | 162 | } |
156 | } | 163 | } |
157 | 164 | ||
158 | void PMainWindow::slotRotateToggled(bool how) | 165 | void PMainWindow::slotRotateToggled(bool how) |
159 | { | 166 | { |
160 | autoRotate = how; | 167 | autoRotate = how; |
161 | if (m_disp) { | 168 | if (m_disp) { |
162 | m_disp->setAutoRotate(how); | 169 | m_disp->setAutoRotate(how); |
163 | } | 170 | } |
164 | } | 171 | } |
165 | 172 | ||
@@ -274,32 +281,33 @@ void PMainWindow::initInfo() { | |||
274 | } | 281 | } |
275 | void PMainWindow::initDisp() { | 282 | void PMainWindow::initDisp() { |
276 | initT<ImageView>( "Image ScrollView", &m_disp, ImageDisplay ); | 283 | initT<ImageView>( "Image ScrollView", &m_disp, ImageDisplay ); |
277 | if (m_disp) { | 284 | if (m_disp) { |
278 | if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { | 285 | if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { |
279 | m_disp->setMinimumSize(QApplication::desktop()->size()/2); | 286 | m_disp->setMinimumSize(QApplication::desktop()->size()/2); |
280 | } | 287 | } |
281 | m_disp->setAutoScale(autoScale); | 288 | m_disp->setAutoScale(autoScale); |
282 | m_disp->setAutoRotate(autoRotate); | 289 | m_disp->setAutoRotate(autoRotate); |
283 | m_disp->setShowZoomer(zoomerOn); | 290 | m_disp->setShowZoomer(zoomerOn); |
284 | m_disp->setBackgroundColor(white); | 291 | m_disp->setBackgroundColor(white); |
285 | connect(m_disp,SIGNAL(dispImageInfo(const QString&)),this,SLOT(slotShowInfo(const QString&))); | 292 | connect(m_disp,SIGNAL(dispImageInfo(const QString&)),this,SLOT(slotShowInfo(const QString&))); |
286 | connect(m_disp,SIGNAL(dispNext()),m_view,SLOT(slotShowNext())); | 293 | connect(m_disp,SIGNAL(dispNext()),m_view,SLOT(slotShowNext())); |
287 | connect(m_disp,SIGNAL(dispPrev()),m_view,SLOT(slotShowPrev())); | 294 | connect(m_disp,SIGNAL(dispPrev()),m_view,SLOT(slotShowPrev())); |
288 | connect(m_disp,SIGNAL(toggleFullScreen()),this,SLOT(slotToggleFullScreen())); | 295 | connect(m_disp,SIGNAL(toggleFullScreen()),this,SLOT(slotToggleFullScreen())); |
289 | connect(m_disp,SIGNAL(hideMe()),this,SLOT(raiseIconView())); | 296 | connect(m_disp,SIGNAL(hideMe()),this,SLOT(raiseIconView())); |
297 | connect(m_disp,SIGNAL(toggleZoomer()),this,SLOT(slotToggleZoomer())); | ||
290 | } | 298 | } |
291 | } | 299 | } |
292 | 300 | ||
293 | void PMainWindow::slotToggleFullScreen() | 301 | void PMainWindow::slotToggleFullScreen() |
294 | { | 302 | { |
295 | odebug << "Toggle full " << oendl; | 303 | odebug << "Toggle full " << oendl; |
296 | if (!m_disp) return; | 304 | if (!m_disp) return; |
297 | bool current = !m_disp->fullScreen(); | 305 | bool current = !m_disp->fullScreen(); |
298 | m_disp->setFullScreen(current); | 306 | m_disp->setFullScreen(current); |
299 | odebug << "Current = " << current << oendl; | 307 | odebug << "Current = " << current << oendl; |
300 | if (current) { | 308 | if (current) { |
301 | odebug << "full" << oendl; | 309 | odebug << "full" << oendl; |
302 | m_disp->setBackgroundColor(black); | 310 | m_disp->setBackgroundColor(black); |
303 | m_disp->reparent(0,QPoint(0,0)); | 311 | m_disp->reparent(0,QPoint(0,0)); |
304 | m_disp->setVScrollBarMode(QScrollView::AlwaysOff); | 312 | m_disp->setVScrollBarMode(QScrollView::AlwaysOff); |
305 | m_disp->setHScrollBarMode(QScrollView::AlwaysOff); | 313 | m_disp->setHScrollBarMode(QScrollView::AlwaysOff); |
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.h b/noncore/graphics/opie-eye/gui/mainwindow.h index d238763..e51a3ff 100644 --- a/noncore/graphics/opie-eye/gui/mainwindow.h +++ b/noncore/graphics/opie-eye/gui/mainwindow.h | |||
@@ -30,45 +30,46 @@ class PMainWindow : public QMainWindow { | |||
30 | enum Views { IconView, ImageInfo, ImageDisplay }; | 30 | enum Views { IconView, ImageInfo, ImageDisplay }; |
31 | public: | 31 | public: |
32 | static QString appName() { return QString::fromLatin1("opie-eye" ); } | 32 | static QString appName() { return QString::fromLatin1("opie-eye" ); } |
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 slotToggleZoomer(); | ||
46 | void setDocument( const QString& ); | 47 | void setDocument( const QString& ); |
47 | virtual void slotToggleFullScreen(); | 48 | virtual void slotToggleFullScreen(); |
48 | 49 | ||
49 | protected slots: | 50 | protected slots: |
50 | void raiseIconView(); | 51 | void raiseIconView(); |
51 | void closeEvent( QCloseEvent* ); | 52 | void closeEvent( QCloseEvent* ); |
52 | 53 | ||
53 | private: | 54 | private: |
54 | template<class T> void initT( const char* name, T**, int ); | 55 | template<class T> void initT( const char* name, T**, int ); |
55 | void initInfo(); | 56 | void initInfo(); |
56 | void initDisp(); | 57 | void initDisp(); |
57 | 58 | ||
58 | private: | 59 | private: |
59 | Opie::Core::OConfig *m_cfg; | 60 | Opie::Core::OConfig *m_cfg; |
60 | Opie::Ui::OWidgetStack *m_stack; | 61 | Opie::Ui::OWidgetStack *m_stack; |
61 | PIconView* m_view; | 62 | PIconView* m_view; |
62 | imageinfo *m_info; | 63 | imageinfo *m_info; |
63 | ImageView *m_disp; | 64 | ImageView *m_disp; |
64 | bool autoRotate; | 65 | bool autoRotate; |
65 | bool autoScale; | 66 | bool autoScale; |
66 | bool zoomerOn; | 67 | bool zoomerOn; |
67 | QToolButton*rotateButton,*upButton,*fsButton,*viewModeButton; | 68 | QToolButton*rotateButton,*upButton,*fsButton,*viewModeButton; |
68 | QToolButton*nextButton,*prevButton; | 69 | QToolButton*nextButton,*prevButton,*zoomButton; |
69 | 70 | ||
70 | private slots: | 71 | private slots: |
71 | void slotConfig(); | 72 | void slotConfig(); |
72 | }; | 73 | }; |
73 | 74 | ||
74 | #endif | 75 | #endif |