-rw-r--r-- | noncore/multimedia/showimg/showimg.cpp | 2 | ||||
-rw-r--r-- | noncore/multimedia/showimg/showimg.h | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/noncore/multimedia/showimg/showimg.cpp b/noncore/multimedia/showimg/showimg.cpp index 56bdecf..b7754f7 100644 --- a/noncore/multimedia/showimg/showimg.cpp +++ b/noncore/multimedia/showimg/showimg.cpp | |||
@@ -138,193 +138,193 @@ InfoDialog::InfoDialog(const QString &caption, const QStringList text,QWidget *p | |||
138 | gl->addMultiCellWidget(frm,i,i,0,1); | 138 | gl->addMultiCellWidget(frm,i,i,0,1); |
139 | } | 139 | } |
140 | else | 140 | else |
141 | { | 141 | { |
142 | l=new QLabel( tr( labels[count] )+":",this); | 142 | l=new QLabel( tr( labels[count] )+":",this); |
143 | gl->addWidget(l,i,0,AlignLeft); | 143 | gl->addWidget(l,i,0,AlignLeft); |
144 | l=new QLabel(text[count],this); | 144 | l=new QLabel(text[count],this); |
145 | gl->addWidget(l,i,1,AlignRight); | 145 | gl->addWidget(l,i,1,AlignRight); |
146 | count++; | 146 | count++; |
147 | } | 147 | } |
148 | 148 | ||
149 | } | 149 | } |
150 | 150 | ||
151 | } | 151 | } |
152 | 152 | ||
153 | void InfoDialog::displayInfo(const QString &caption, const QStringList text, QWidget *parent) | 153 | void InfoDialog::displayInfo(const QString &caption, const QStringList text, QWidget *parent) |
154 | { | 154 | { |
155 | InfoDialog *dlg=new InfoDialog(caption,text,parent); | 155 | InfoDialog *dlg=new InfoDialog(caption,text,parent); |
156 | dlg->exec(); | 156 | dlg->exec(); |
157 | delete dlg; | 157 | delete dlg; |
158 | } | 158 | } |
159 | 159 | ||
160 | //=========================================================================== | 160 | //=========================================================================== |
161 | 161 | ||
162 | 162 | ||
163 | ImagePane::ImagePane( QWidget *parent ) : QWidget( parent ) | 163 | ImagePane::ImagePane( QWidget *parent ) : QWidget( parent ) |
164 | { | 164 | { |
165 | vb = new QVBoxLayout( this ); | 165 | vb = new QVBoxLayout( this ); |
166 | 166 | ||
167 | image = new QScrollView(this,0,WResizeNoErase|WNorthWestGravity); | 167 | image = new QScrollView(this,0,WResizeNoErase|WNorthWestGravity); |
168 | pic=new ImageWidget(image); | 168 | pic=new ImageWidget(image); |
169 | image->addChild(pic); | 169 | image->addChild(pic); |
170 | 170 | ||
171 | connect(pic, SIGNAL( clicked() ), this, SLOT( imageClicked() )); | 171 | connect(pic, SIGNAL( clicked() ), this, SLOT( imageClicked() )); |
172 | 172 | ||
173 | vb->addWidget( image ); | 173 | vb->addWidget( image ); |
174 | 174 | ||
175 | } | 175 | } |
176 | 176 | ||
177 | void ImagePane::setPixmap( const QPixmap &pm ) | 177 | void ImagePane::setPixmap( const QPixmap &pm ) |
178 | { | 178 | { |
179 | pic->setPixmap( pm ); | 179 | pic->setPixmap( pm ); |
180 | pic->resize(pm.width(),pm.height()); | 180 | pic->resize(pm.width(),pm.height()); |
181 | image->updateScrollBars (); | 181 | image->updateScrollBars (); |
182 | pic->repaint(false); | 182 | pic->repaint(false); |
183 | } | 183 | } |
184 | 184 | ||
185 | void ImagePane::imageClicked() | 185 | void ImagePane::imageClicked() |
186 | { | 186 | { |
187 | emit clicked(); | 187 | emit clicked(); |
188 | } | 188 | } |
189 | //=========================================================================== | 189 | //=========================================================================== |
190 | /* | 190 | /* |
191 | Draws the portion of the scaled pixmap that needs to be updated | 191 | Draws the portion of the scaled pixmap that needs to be updated |
192 | */ | 192 | */ |
193 | 193 | ||
194 | void ImageWidget::paintEvent( QPaintEvent *e ) | 194 | void ImageWidget::paintEvent( QPaintEvent *e ) |
195 | { | 195 | { |
196 | QPainter painter(this); | 196 | QPainter painter(this); |
197 | 197 | ||
198 | painter.setClipRect(e->rect()); | 198 | painter.setClipRect(e->rect()); |
199 | painter.fillRect(0,0,width(),height(),QColor(0,0,0)); | 199 | painter.fillRect(0,0,width(),height(),QColor(0,0,0)); |
200 | 200 | ||
201 | if ( pixmap.size() != QSize( 0, 0 ) ) | 201 | if ( pixmap.size() != QSize( 0, 0 ) ) |
202 | { // is an image loaded? | 202 | { // is an image loaded? |
203 | painter.drawPixmap((width() - pixmap.width()) / 2, (height() - pixmap.height()) / 2, pixmap); | 203 | painter.drawPixmap((width() - pixmap.width()) / 2, (height() - pixmap.height()) / 2, pixmap); |
204 | } | 204 | } |
205 | } | 205 | } |
206 | 206 | ||
207 | void ImageWidget::mouseReleaseEvent(QMouseEvent *) | 207 | void ImageWidget::mouseReleaseEvent(QMouseEvent *) |
208 | { | 208 | { |
209 | emit clicked(); | 209 | emit clicked(); |
210 | } | 210 | } |
211 | 211 | ||
212 | //=========================================================================== | 212 | //=========================================================================== |
213 | 213 | ||
214 | ImageViewer::ImageViewer( QWidget *parent, const char *name, int wFlags ) | 214 | ImageViewer::ImageViewer( QWidget *parent, const char *name, int wFlags ) |
215 | : QMainWindow( parent, name, WResizeNoErase ), filename( 0 ), bFromDocView( FALSE ) | 215 | : QMainWindow( parent, name, WResizeNoErase ), filename( 0 ), bFromDocView( FALSE ) |
216 | { | 216 | { |
217 | setCaption( tr("Image Viewer") ); | 217 | setCaption( tr("Image Viewer") ); |
218 | setIcon( Resource::loadPixmap( "ImageViewer" ) ); | 218 | setIcon( Resource::loadPixmap( "ImageViewer" ) ); |
219 | 219 | ||
220 | 220 | ||
221 | Config cfg("Image Viewer"); | 221 | Config cfg("Image Viewer"); |
222 | cfg.setGroup("Image Viewer"); | 222 | cfg.setGroup("Image Viewer"); |
223 | 223 | ||
224 | showThumbView=cfg.readBoolEntry("ShowThumbnails",false); | 224 | showThumbView=cfg.readBoolEntry("ShowThumbnails",false); |
225 | isSized=cfg.readBoolEntry("SizeToScreen",true); | 225 | isSized=cfg.readBoolEntry("SizeToScreen",true); |
226 | 226 | ||
227 | isFullScreen = FALSE; | 227 | isFullScreen = FALSE; |
228 | 228 | ||
229 | setToolBarsMovable( FALSE ); | 229 | setToolBarsMovable( FALSE ); |
230 | 230 | ||
231 | toolBar = new QPEToolBar( this ); | 231 | toolBar = new QPEToolBar( this ); |
232 | toolBar->setHorizontalStretchable( TRUE ); | 232 | toolBar->setHorizontalStretchable( TRUE ); |
233 | 233 | ||
234 | menuBar = new QPEMenuBar( toolBar ); | 234 | menuBar = new QMenuBar( toolBar ); |
235 | 235 | ||
236 | current=menuBar; | 236 | current=menuBar; |
237 | 237 | ||
238 | 238 | ||
239 | 239 | ||
240 | fileMenuFile = new QPopupMenu(this); | 240 | fileMenuFile = new QPopupMenu(this); |
241 | //menuBarmenubarFile->insertItem( tr("File"), fileMenu ); | 241 | //menuBarmenubarFile->insertItem( tr("File"), fileMenu ); |
242 | fileMenuFile->insertItem(tr("Open"), | 242 | fileMenuFile->insertItem(tr("Open"), |
243 | this, SLOT(openFile()), 0); | 243 | this, SLOT(openFile()), 0); |
244 | 244 | ||
245 | viewMenuFile = new QPopupMenu( this ); | 245 | viewMenuFile = new QPopupMenu( this ); |
246 | //menubarFile->insertItem( tr("View"), viewMenu ); | 246 | //menubarFile->insertItem( tr("View"), viewMenu ); |
247 | viewMenuFile->insertItem( tr("Thumbnail View"), | 247 | viewMenuFile->insertItem( tr("Thumbnail View"), |
248 | this, SLOT(switchThumbView()), 0, SHOW_THUMBNAILS ); | 248 | this, SLOT(switchThumbView()), 0, SHOW_THUMBNAILS ); |
249 | 249 | ||
250 | viewMenuFile->setItemChecked ( SHOW_THUMBNAILS, showThumbView ); | 250 | viewMenuFile->setItemChecked ( SHOW_THUMBNAILS, showThumbView ); |
251 | 251 | ||
252 | 252 | ||
253 | 253 | ||
254 | 254 | ||
255 | optionsMenuFile = new QPopupMenu( this); | 255 | optionsMenuFile = new QPopupMenu( this); |
256 | //menubarFile->insertItem( tr("Options"),optionsMenu ); | 256 | //menubarFile->insertItem( tr("Options"),optionsMenu ); |
257 | slideAction = new QAction( tr( "Slide show" ), Resource::loadIconSet( "slideshow" ), | 257 | slideAction = new QAction( tr( "Slide show" ), Resource::loadIconSet( "slideshow" ), |
258 | QString::null, 0, this, 0 ); | 258 | QString::null, 0, this, 0 ); |
259 | slideAction->setToggleAction( TRUE ); | 259 | slideAction->setToggleAction( TRUE ); |
260 | connect( slideAction, SIGNAL( toggled(bool) ), this, SLOT( slideShow(bool) ) ); | 260 | connect( slideAction, SIGNAL( toggled(bool) ), this, SLOT( slideShow(bool) ) ); |
261 | slideAction->addTo( optionsMenuFile); | 261 | slideAction->addTo( optionsMenuFile); |
262 | // slideAction->addTo( toolBar ); | 262 | // slideAction->addTo( toolBar ); |
263 | 263 | ||
264 | 264 | ||
265 | // optionsMenuFile->insertItem( tr("Slideshow") ); | 265 | // optionsMenuFile->insertItem( tr("Slideshow") ); |
266 | optionsMenuFile->insertSeparator(); | 266 | optionsMenuFile->insertSeparator(); |
267 | optionsMenuFile->insertItem( tr("Preferences.."), this, SLOT(settings()), 0); | 267 | optionsMenuFile->insertItem( tr("Preferences.."), this, SLOT(settings()), 0); |
268 | // optionsMenuFile->insertItem( tr("Help"), this, SLOT(help()), 0); | 268 | // optionsMenuFile->insertItem( tr("Help"), this, SLOT(help()), 0); |
269 | 269 | ||
270 | QStrList fmt = QImage::outputFormats(); | 270 | QStrList fmt = QImage::outputFormats(); |
271 | 271 | ||
272 | 272 | ||
273 | fileMenuView = new QPopupMenu( this ); | 273 | fileMenuView = new QPopupMenu( this ); |
274 | //menubarView->insertItem( tr("File"),fileMenu ); | 274 | //menubarView->insertItem( tr("File"),fileMenu ); |
275 | fileMenuView->insertItem( tr("Image Info ..."),this, SLOT(displayInfoDialog()),0 ); | 275 | fileMenuView->insertItem( tr("Image Info ..."),this, SLOT(displayInfoDialog()),0 ); |
276 | fileMenuView->insertSeparator(); | 276 | fileMenuView->insertSeparator(); |
277 | 277 | ||
278 | viewMenuView = new QPopupMenu(this ); | 278 | viewMenuView = new QPopupMenu(this ); |
279 | viewMenuView->setCheckable ( true ); | 279 | viewMenuView->setCheckable ( true ); |
280 | 280 | ||
281 | //menubarView->insertItem( tr("View"),viewMenu ); | 281 | //menubarView->insertItem( tr("View"),viewMenu ); |
282 | viewMenuView->insertItem(tr("Horizontal flip"), this, SLOT(hFlip()), 0); | 282 | viewMenuView->insertItem(tr("Horizontal flip"), this, SLOT(hFlip()), 0); |
283 | viewMenuView->insertItem(tr("Vertical flip"), this, SLOT(vFlip()), 0); | 283 | viewMenuView->insertItem(tr("Vertical flip"), this, SLOT(vFlip()), 0); |
284 | 284 | ||
285 | stack = new QWidgetStack( this ); | 285 | stack = new QWidgetStack( this ); |
286 | stack->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); | 286 | stack->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); |
287 | setCentralWidget( stack ); | 287 | setCentralWidget( stack ); |
288 | 288 | ||
289 | 289 | ||
290 | imagePanel = new ImagePane( stack ); | 290 | imagePanel = new ImagePane( stack ); |
291 | connect(imagePanel, SIGNAL(clicked()), this, SLOT(normalView())); | 291 | connect(imagePanel, SIGNAL(clicked()), this, SLOT(normalView())); |
292 | 292 | ||
293 | 293 | ||
294 | ImageFileSelector::CURRENT_VIEW cv; | 294 | ImageFileSelector::CURRENT_VIEW cv; |
295 | if(showThumbView) | 295 | if(showThumbView) |
296 | cv=ImageFileSelector::THUMBNAIL; | 296 | cv=ImageFileSelector::THUMBNAIL; |
297 | else | 297 | else |
298 | cv=ImageFileSelector::DETAILED; | 298 | cv=ImageFileSelector::DETAILED; |
299 | 299 | ||
300 | qDebug("cv = %d",cv); | 300 | qDebug("cv = %d",cv); |
301 | 301 | ||
302 | fileSelector = new ImageFileSelector( cv,stack, "fs"); | 302 | fileSelector = new ImageFileSelector( cv,stack, "fs"); |
303 | 303 | ||
304 | //switchThumbView(); | 304 | //switchThumbView(); |
305 | 305 | ||
306 | 306 | ||
307 | //fileSelector = new ImageFileSelector("image/*", stack, "fs"); | 307 | //fileSelector = new ImageFileSelector("image/*", stack, "fs"); |
308 | //fileSelector->setNewVisible(FALSE); | 308 | //fileSelector->setNewVisible(FALSE); |
309 | //fileSelector->setCloseVisible(FALSE); | 309 | //fileSelector->setCloseVisible(FALSE); |
310 | connect( fileSelector, SIGNAL( closeMe() ), this, SLOT( closeFileSelector() ) ); | 310 | connect( fileSelector, SIGNAL( closeMe() ), this, SLOT( closeFileSelector() ) ); |
311 | connect( fileSelector, SIGNAL( fileSelected( const DocLnk &) ), | 311 | connect( fileSelector, SIGNAL( fileSelected( const DocLnk &) ), |
312 | this, SLOT( openFile( const DocLnk & ) ) ); | 312 | this, SLOT( openFile( const DocLnk & ) ) ); |
313 | 313 | ||
314 | imageList = fileSelector->fileList(); | 314 | imageList = fileSelector->fileList(); |
315 | slideAction->setEnabled( imageList.count() != 0); | 315 | slideAction->setEnabled( imageList.count() != 0); |
316 | 316 | ||
317 | iconToolBar = new QPEToolBar(this); | 317 | iconToolBar = new QPEToolBar(this); |
318 | 318 | ||
319 | QAction *a; | 319 | QAction *a; |
320 | 320 | ||
321 | a = new QAction( tr( "Open ..." ), Resource::loadPixmap( "fileopen" ), QString::null, 0, this, 0 ); | 321 | a = new QAction( tr( "Open ..." ), Resource::loadPixmap( "fileopen" ), QString::null, 0, this, 0 ); |
322 | connect( a, SIGNAL( activated() ), this, SLOT( open() ) ); | 322 | connect( a, SIGNAL( activated() ), this, SLOT( open() ) ); |
323 | a->addTo( fileMenuView); | 323 | a->addTo( fileMenuView); |
324 | a->addTo( iconToolBar ); | 324 | a->addTo( iconToolBar ); |
325 | 325 | ||
326 | 326 | ||
327 | a = new QAction( tr( "Rotate 90"), Resource::loadPixmap( "rotate90" ), QString::null, 0, this, 0); | 327 | a = new QAction( tr( "Rotate 90"), Resource::loadPixmap( "rotate90" ), QString::null, 0, this, 0); |
328 | connect( a, SIGNAL( activated() ), this, SLOT( rot90() ) ); | 328 | connect( a, SIGNAL( activated() ), this, SLOT( rot90() ) ); |
329 | a->addTo( iconToolBar ); | 329 | a->addTo( iconToolBar ); |
330 | a->addTo( viewMenuView ); | 330 | a->addTo( viewMenuView ); |
diff --git a/noncore/multimedia/showimg/showimg.h b/noncore/multimedia/showimg/showimg.h index abbd976..da4c0b6 100644 --- a/noncore/multimedia/showimg/showimg.h +++ b/noncore/multimedia/showimg/showimg.h | |||
@@ -1,134 +1,134 @@ | |||
1 | /********************************************************************** | 1 | /********************************************************************** |
2 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. | 2 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. |
3 | ** | 3 | ** |
4 | ** This file is part of Qtopia Environment. | 4 | ** This file is part of Qtopia Environment. |
5 | ** | 5 | ** |
6 | ** This file may be distributed and/or modified under the terms of the | 6 | ** This file may be distributed and/or modified under the terms of the |
7 | ** GNU General Public License version 2 as published by the Free Software | 7 | ** GNU General Public License version 2 as published by the Free Software |
8 | ** Foundation and appearing in the file LICENSE.GPL included in the | 8 | ** Foundation and appearing in the file LICENSE.GPL included in the |
9 | ** packaging of this file. | 9 | ** packaging of this file. |
10 | ** | 10 | ** |
11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | 11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE |
12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | 12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
13 | ** | 13 | ** |
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | 20 | ||
21 | #ifndef SHOWIMG_H | 21 | #ifndef SHOWIMG_H |
22 | #define SHOWIMG_H | 22 | #define SHOWIMG_H |
23 | 23 | ||
24 | #include <qwidget.h> | 24 | #include <qwidget.h> |
25 | #include <qmainwindow.h> | 25 | #include <qmainwindow.h> |
26 | #include <qimage.h> | 26 | #include <qimage.h> |
27 | #include <qlabel.h> | 27 | #include <qlabel.h> |
28 | #include <qlayout.h> | 28 | #include <qlayout.h> |
29 | #include <qscrollview.h> | 29 | #include <qscrollview.h> |
30 | #include <qdialog.h> | 30 | #include <qdialog.h> |
31 | #include <qstringlist.h> | 31 | #include <qstringlist.h> |
32 | #include <qvaluelist.h> | 32 | #include <qvaluelist.h> |
33 | #include <qwmatrix.h> | 33 | #include <qwmatrix.h> |
34 | 34 | ||
35 | 35 | ||
36 | class QAction; | 36 | class QAction; |
37 | class QPEToolBar; | 37 | class QPEToolBar; |
38 | class QPEMenuBar; | 38 | class QMenuBar; |
39 | class QPopupMenu; | 39 | class QPopupMenu; |
40 | class QWidgetStack; | 40 | class QWidgetStack; |
41 | class FileSelector; | 41 | class FileSelector; |
42 | class DocLnk; | 42 | class DocLnk; |
43 | class QLabel; | 43 | class QLabel; |
44 | class QAction; | 44 | class QAction; |
45 | class QSpinBox; | 45 | class QSpinBox; |
46 | class ImageFileSelector; | 46 | class ImageFileSelector; |
47 | class QTimer; | 47 | class QTimer; |
48 | 48 | ||
49 | 49 | ||
50 | class ImageWidget : public QWidget | 50 | class ImageWidget : public QWidget |
51 | { | 51 | { |
52 | Q_OBJECT | 52 | Q_OBJECT |
53 | public: | 53 | public: |
54 | ImageWidget( QWidget *parent=0 ) | 54 | ImageWidget( QWidget *parent=0 ) |
55 | : QWidget( parent ) { | 55 | : QWidget( parent ) { |
56 | setBackgroundMode(NoBackground); | 56 | setBackgroundMode(NoBackground); |
57 | } | 57 | } |
58 | ~ImageWidget() { } | 58 | ~ImageWidget() { } |
59 | 59 | ||
60 | void setPixmap( const QPixmap &pm ) { | 60 | void setPixmap( const QPixmap &pm ) { |
61 | pixmap = pm; | 61 | pixmap = pm; |
62 | show(); | 62 | show(); |
63 | } | 63 | } |
64 | 64 | ||
65 | signals: | 65 | signals: |
66 | void clicked(); | 66 | void clicked(); |
67 | 67 | ||
68 | protected: | 68 | protected: |
69 | void paintEvent( QPaintEvent * ); | 69 | void paintEvent( QPaintEvent * ); |
70 | void mouseReleaseEvent(QMouseEvent* event); | 70 | void mouseReleaseEvent(QMouseEvent* event); |
71 | 71 | ||
72 | private: | 72 | private: |
73 | QPixmap pixmap; | 73 | QPixmap pixmap; |
74 | }; | 74 | }; |
75 | 75 | ||
76 | class InfoDialog:public QDialog | 76 | class InfoDialog:public QDialog |
77 | { | 77 | { |
78 | Q_OBJECT | 78 | Q_OBJECT |
79 | 79 | ||
80 | public: | 80 | public: |
81 | 81 | ||
82 | static void displayInfo(const QString &caption, const QStringList text, QWidget *parent); | 82 | static void displayInfo(const QString &caption, const QStringList text, QWidget *parent); |
83 | 83 | ||
84 | private: | 84 | private: |
85 | 85 | ||
86 | InfoDialog(const QString &caption,const QStringList text, QWidget *parent); | 86 | InfoDialog(const QString &caption,const QStringList text, QWidget *parent); |
87 | 87 | ||
88 | }; | 88 | }; |
89 | 89 | ||
90 | class ControlsDialog:public QDialog | 90 | class ControlsDialog:public QDialog |
91 | { | 91 | { |
92 | Q_OBJECT | 92 | Q_OBJECT |
93 | 93 | ||
94 | public: | 94 | public: |
95 | ControlsDialog(const QString &caption,const QImage image,int *brightness, QWidget *parent); | 95 | ControlsDialog(const QString &caption,const QImage image,int *brightness, QWidget *parent); |
96 | 96 | ||
97 | 97 | ||
98 | private slots: | 98 | private slots: |
99 | 99 | ||
100 | void bValueChanged(int); | 100 | void bValueChanged(int); |
101 | void accept(); | 101 | void accept(); |
102 | 102 | ||
103 | 103 | ||
104 | private: | 104 | private: |
105 | ImageWidget *pixmap; | 105 | ImageWidget *pixmap; |
106 | QSpinBox *spb; | 106 | QSpinBox *spb; |
107 | QImage img; | 107 | QImage img; |
108 | int *b; | 108 | int *b; |
109 | }; | 109 | }; |
110 | 110 | ||
111 | 111 | ||
112 | class ImagePane : public QWidget | 112 | class ImagePane : public QWidget |
113 | { | 113 | { |
114 | Q_OBJECT | 114 | Q_OBJECT |
115 | public: | 115 | public: |
116 | ImagePane( QWidget *parent=0 ); | 116 | ImagePane( QWidget *parent=0 ); |
117 | ~ImagePane() { } | 117 | ~ImagePane() { } |
118 | 118 | ||
119 | //void showStatus(); | 119 | //void showStatus(); |
120 | //void hideStatus(); | 120 | //void hideStatus(); |
121 | //QLabel *statusLabel() | 121 | //QLabel *statusLabel() |
122 | //{ | 122 | //{ |
123 | // return status; | 123 | // return status; |
124 | //} | 124 | //} |
125 | void setPixmap( const QPixmap &pm ); | 125 | void setPixmap( const QPixmap &pm ); |
126 | 126 | ||
127 | 127 | ||
128 | int paneWidth() const { | 128 | int paneWidth() const { |
129 | return image->visibleWidth(); | 129 | return image->visibleWidth(); |
130 | } | 130 | } |
131 | 131 | ||
132 | int paneHeight() const { | 132 | int paneHeight() const { |
133 | return image->visibleHeight(); | 133 | return image->visibleHeight(); |
134 | } | 134 | } |
@@ -157,133 +157,133 @@ private slots: | |||
157 | class ImageViewer : public QMainWindow | 157 | class ImageViewer : public QMainWindow |
158 | { | 158 | { |
159 | Q_OBJECT | 159 | Q_OBJECT |
160 | public: | 160 | public: |
161 | static QString appName() { return QString::fromLatin1("showimg"); } | 161 | static QString appName() { return QString::fromLatin1("showimg"); } |
162 | ImageViewer( QWidget *parent=0, const char *name=0, int wFlags=0 ); | 162 | ImageViewer( QWidget *parent=0, const char *name=0, int wFlags=0 ); |
163 | ~ImageViewer(); | 163 | ~ImageViewer(); |
164 | 164 | ||
165 | void loadImage( const char *fileName ); | 165 | void loadImage( const char *fileName ); |
166 | void show(const QString& fileref); | 166 | void show(const QString& fileref); |
167 | void show(); | 167 | void show(); |
168 | 168 | ||
169 | 169 | ||
170 | enum INFO_STRINGS { | 170 | enum INFO_STRINGS { |
171 | PATH, | 171 | PATH, |
172 | FORMAT, | 172 | FORMAT, |
173 | FILE_SIZE, | 173 | FILE_SIZE, |
174 | SIZE, | 174 | SIZE, |
175 | COLORS, | 175 | COLORS, |
176 | ALPHA, | 176 | ALPHA, |
177 | LAST | 177 | LAST |
178 | }; | 178 | }; |
179 | 179 | ||
180 | enum RotateDirection { | 180 | enum RotateDirection { |
181 | Rotate90, Rotate180, Rotate270 | 181 | Rotate90, Rotate180, Rotate270 |
182 | }; | 182 | }; |
183 | 183 | ||
184 | 184 | ||
185 | static QImage rotate(QImage &img, RotateDirection r); | 185 | static QImage rotate(QImage &img, RotateDirection r); |
186 | static QImage& intensity(QImage &image, float percent); | 186 | static QImage& intensity(QImage &image, float percent); |
187 | static QImage& toGray(QImage &image, bool fast = false); | 187 | static QImage& toGray(QImage &image, bool fast = false); |
188 | bool showThumbView; // a flag to indicate if FileSelector should be initialized with thumbnail view | 188 | bool showThumbView; // a flag to indicate if FileSelector should be initialized with thumbnail view |
189 | 189 | ||
190 | protected: | 190 | protected: |
191 | void resizeEvent( QResizeEvent * ); | 191 | void resizeEvent( QResizeEvent * ); |
192 | void closeEvent( QCloseEvent * ); | 192 | void closeEvent( QCloseEvent * ); |
193 | 193 | ||
194 | private: | 194 | private: |
195 | int imageIndex(void); | 195 | int imageIndex(void); |
196 | 196 | ||
197 | void updateCaption( QString name ); | 197 | void updateCaption( QString name ); |
198 | bool loadSelected(); | 198 | bool loadSelected(); |
199 | void scale(); | 199 | void scale(); |
200 | bool reconvertImage(); | 200 | bool reconvertImage(); |
201 | int calcHeight(); | 201 | int calcHeight(); |
202 | void setImage(const QImage& newimage); | 202 | void setImage(const QImage& newimage); |
203 | void updateImageInfo(QString &filePath); | 203 | void updateImageInfo(QString &filePath); |
204 | void switchToFileSelector(); | 204 | void switchToFileSelector(); |
205 | void switchToImageView(); | 205 | void switchToImageView(); |
206 | 206 | ||
207 | void updateImage(); | 207 | void updateImage(); |
208 | 208 | ||
209 | private slots: | 209 | private slots: |
210 | 210 | ||
211 | void slideShow( bool on ); | 211 | void slideShow( bool on ); |
212 | void help(); | 212 | void help(); |
213 | void slideUpdate(); | 213 | void slideUpdate(); |
214 | bool nextImage(); | 214 | bool nextImage(); |
215 | bool prevImage(); | 215 | bool prevImage(); |
216 | void settings(); | 216 | void settings(); |
217 | 217 | ||
218 | void switchThumbView(); | 218 | void switchThumbView(); |
219 | void switchSizeToScreen(); | 219 | void switchSizeToScreen(); |
220 | void setDocument(const QString& fileref); | 220 | void setDocument(const QString& fileref); |
221 | void doDelayedLoad(); | 221 | void doDelayedLoad(); |
222 | void openFile( const DocLnk &file ); | 222 | void openFile( const DocLnk &file ); |
223 | void openFile(); | 223 | void openFile(); |
224 | void open(); | 224 | void open(); |
225 | void closeFileSelector(); | 225 | void closeFileSelector(); |
226 | void hFlip(); | 226 | void hFlip(); |
227 | void vFlip(); | 227 | void vFlip(); |
228 | void rot180(); | 228 | void rot180(); |
229 | void rot90(); | 229 | void rot90(); |
230 | void rot270(); | 230 | void rot270(); |
231 | void normalView(); | 231 | void normalView(); |
232 | void fullScreen(); | 232 | void fullScreen(); |
233 | void stopSlideShow(); | 233 | void stopSlideShow(); |
234 | void blackAndWhite(); | 234 | void blackAndWhite(); |
235 | void displayInfoDialog(); | 235 | void displayInfoDialog(); |
236 | void displayControlsDialog(); | 236 | void displayControlsDialog(); |
237 | private: | 237 | private: |
238 | QWMatrix matrix; | 238 | QWMatrix matrix; |
239 | bool rotated90; | 239 | bool rotated90; |
240 | enum MENU_ITEMS { | 240 | enum MENU_ITEMS { |
241 | SHOW_THUMBNAILS, | 241 | SHOW_THUMBNAILS, |
242 | SIZE_TO_SCREEN, | 242 | SIZE_TO_SCREEN, |
243 | BLACKANDWHITE | 243 | BLACKANDWHITE |
244 | }; | 244 | }; |
245 | 245 | ||
246 | QString filename; | 246 | QString filename; |
247 | QString delayLoad; | 247 | QString delayLoad; |
248 | QImage image; // the loaded image | 248 | QImage image; // the loaded image |
249 | QPixmap pm; // the converted pixmap | 249 | QPixmap pm; // the converted pixmap |
250 | QPixmap pmScaled; // the scaled pixmap | 250 | QPixmap pmScaled; // the scaled pixmap |
251 | QPEToolBar *toolBar; | 251 | QPEToolBar *toolBar; |
252 | QPEToolBar *iconToolBar; | 252 | QPEToolBar *iconToolBar; |
253 | QPEMenuBar *menuBar; | 253 | QMenuBar *menuBar; |
254 | QPEMenuBar *current; | 254 | QMenuBar *current; |
255 | 255 | ||
256 | 256 | ||
257 | QPopupMenu *fileMenuFile; | 257 | QPopupMenu *fileMenuFile; |
258 | QPopupMenu *viewMenuFile; | 258 | QPopupMenu *viewMenuFile; |
259 | QPopupMenu *optionsMenuFile; | 259 | QPopupMenu *optionsMenuFile; |
260 | QPopupMenu *fileMenuView; | 260 | QPopupMenu *fileMenuView; |
261 | QPopupMenu *viewMenuView; | 261 | QPopupMenu *viewMenuView; |
262 | 262 | ||
263 | QAction *sss; // scale to screen size | 263 | QAction *sss; // scale to screen size |
264 | 264 | ||
265 | QLabel *lab; | 265 | QLabel *lab; |
266 | ImagePane *imagePanel; | 266 | ImagePane *imagePanel; |
267 | QWidgetStack *stack; | 267 | QWidgetStack *stack; |
268 | //FileSelector *fileSelector; | 268 | //FileSelector *fileSelector; |
269 | ImageFileSelector *fileSelector; | 269 | ImageFileSelector *fileSelector; |
270 | bool isFullScreen; | 270 | bool isFullScreen; |
271 | bool isSized; // true if image is to be resized to fit the window size | 271 | bool isSized; // true if image is to be resized to fit the window size |
272 | bool bFromDocView; // a flag to indicate whether or not we were | 272 | bool bFromDocView; // a flag to indicate whether or not we were |
273 | // launched from the document view... | 273 | // launched from the document view... |
274 | 274 | ||
275 | int slideDelay; | 275 | int slideDelay; |
276 | bool slideRepeat; | 276 | bool slideRepeat; |
277 | bool slideReverse; // show slideshow in reverse order | 277 | bool slideReverse; // show slideshow in reverse order |
278 | bool rotateOnLoad; // rotate by 90 degrees on loading | 278 | bool rotateOnLoad; // rotate by 90 degrees on loading |
279 | bool fastLoad; | 279 | bool fastLoad; |
280 | QTimer *slideTimer; | 280 | QTimer *slideTimer; |
281 | QValueList<DocLnk> imageList; | 281 | QValueList<DocLnk> imageList; |
282 | QAction *slideAction; | 282 | QAction *slideAction; |
283 | 283 | ||
284 | 284 | ||
285 | QString imageInfo[LAST]; | 285 | QString imageInfo[LAST]; |
286 | }; | 286 | }; |
287 | 287 | ||
288 | 288 | ||
289 | #endif // SHOWIMG_H | 289 | #endif // SHOWIMG_H |