author | llornkcor <llornkcor> | 2002-11-03 17:59:00 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-11-03 17:59:00 (UTC) |
commit | 16e8fad81f7ee6045990f48edc84542638bf07d7 (patch) (side-by-side diff) | |
tree | 96d836f914e0d1104d7c84830acac08a43ee4ac2 /noncore/multimedia/showimg/showimg.h | |
parent | 2981b8f55f4a33860452f4571ef9f04781267489 (diff) | |
download | opie-16e8fad81f7ee6045990f48edc84542638bf07d7.zip opie-16e8fad81f7ee6045990f48edc84542638bf07d7.tar.gz opie-16e8fad81f7ee6045990f48edc84542638bf07d7.tar.bz2 |
added preferences dialog, and added slidshow
Diffstat (limited to 'noncore/multimedia/showimg/showimg.h') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/multimedia/showimg/showimg.h | 90 |
1 files changed, 40 insertions, 50 deletions
diff --git a/noncore/multimedia/showimg/showimg.h b/noncore/multimedia/showimg/showimg.h index 0d3bc7d..8555ff0 100644 --- a/noncore/multimedia/showimg/showimg.h +++ b/noncore/multimedia/showimg/showimg.h @@ -16,63 +16,61 @@ ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ #ifndef SHOWIMG_H #define SHOWIMG_H #include <qwidget.h> #include <qmainwindow.h> #include <qimage.h> #include <qlabel.h> #include <qlayout.h> #include <qscrollview.h> #include <qdialog.h> #include <qstringlist.h> +#include <qvaluelist.h> +#include <qwmatrix.h> + +class QAction; class QPEToolBar; class QPEMenuBar; class QPopupMenu; class QWidgetStack; class FileSelector; class DocLnk; class QLabel; class QAction; class QSpinBox; class ImageFileSelector; - +class QTimer; class ImageWidget : public QWidget { Q_OBJECT public: - ImageWidget( - QWidget *parent=0 - ) : QWidget( parent ) - { + ImageWidget( QWidget *parent=0 ) + : QWidget( parent ) { setBackgroundMode(NoBackground); } - ~ImageWidget() - { + ~ImageWidget() { } - } - - void setPixmap( const QPixmap &pm ) - { + void setPixmap( const QPixmap &pm ) { pixmap = pm; show(); } signals: void clicked(); protected: void paintEvent( QPaintEvent * ); void mouseReleaseEvent(QMouseEvent* event); private: QPixmap pixmap; }; class InfoDialog:public QDialog @@ -103,196 +101,188 @@ private slots: void accept(); private: ImageWidget *pixmap; QSpinBox *spb; QImage img; int *b; }; class ImagePane : public QWidget { Q_OBJECT public: ImagePane( QWidget *parent=0 ); - ~ImagePane() - { - - } + ~ImagePane() { } //void showStatus(); //void hideStatus(); //QLabel *statusLabel() //{ // return status; //} void setPixmap( const QPixmap &pm ); - int paneWidth() const - { + int paneWidth() const { return image->visibleWidth(); } - int paneHeight() const - { + int paneHeight() const { return image->visibleHeight(); } - void setPosition(int x, int y) - { + void setPosition(int x, int y) { image->setContentsPos (x,y ); } - void disable() - { + void disable() { pic->hide(); } signals: void clicked(); private: QScrollView *image; ImageWidget *pic; QVBoxLayout *vb; private slots: void imageClicked(); }; class ImageViewer : public QMainWindow { Q_OBJECT public: ImageViewer( QWidget *parent=0, const char *name=0, int wFlags=0 ); ~ImageViewer(); void loadImage( const char *fileName ); void show(const QString& fileref); void show(); - enum INFO_STRINGS - { + enum INFO_STRINGS { PATH, FORMAT, FILE_SIZE, SIZE, COLORS, ALPHA, LAST }; - enum RotateDirection - { + enum RotateDirection { Rotate90, Rotate180, Rotate270 }; static QImage rotate(QImage &img, RotateDirection r); static QImage& intensity(QImage &image, float percent); static QImage& toGray(QImage &image, bool fast = false); + bool showThumbView; // a flag to indicate if FileSelector should be initialized with thumbnail view protected: void resizeEvent( QResizeEvent * ); void closeEvent( QCloseEvent * ); private: + int imageIndex(void); + void updateCaption( QString name ); bool loadSelected(); void scale(); bool reconvertImage(); int calcHeight(); void setImage(const QImage& newimage); void updateImageInfo(QString &filePath); void switchToFileSelector(); void switchToImageView(); void updateImage(); - - - private slots: + void slideShow( bool on ); + void help(); + void slideUpdate(); + bool nextImage(); + bool prevImage(); + void settings(); + void switchThumbView(); void switchSizeToScreen(); void setDocument(const QString& fileref); void doDelayedLoad(); void openFile( const DocLnk &file ); - //void openFile(); + void openFile(); void open(); void closeFileSelector(); void hFlip(); void vFlip(); void rot180(); void rot90(); void rot270(); void normalView(); void fullScreen(); + void stopSlideShow(); void blackAndWhite(); void displayInfoDialog(); void displayControlsDialog(); - - - - - - - - - - private: - - - - - enum MENU_ITEMS - { + QWMatrix matrix; + bool rotated90; + enum MENU_ITEMS { SHOW_THUMBNAILS, SIZE_TO_SCREEN, BLACKANDWHITE }; - - QString filename; QString delayLoad; QImage image; // the loaded image QPixmap pm; // the converted pixmap QPixmap pmScaled; // the scaled pixmap QPEToolBar *toolBar; QPEToolBar *iconToolBar; QPEMenuBar *menuBar; QPEMenuBar *current; QPopupMenu *fileMenuFile; QPopupMenu *viewMenuFile; QPopupMenu *optionsMenuFile; QPopupMenu *fileMenuView; QPopupMenu *viewMenuView; QAction *sss; // scale to screen size QLabel *lab; ImagePane *imagePanel; QWidgetStack *stack; //FileSelector *fileSelector; ImageFileSelector *fileSelector; bool isFullScreen; bool isSized; // true if image is to be resized to fit the window size bool bFromDocView; // a flag to indicate whether or not we were // launched from the document view... - bool showThumbView; // a flag to indicate if FileSelector should be initialized with thumbnail view + int slideDelay; + bool slideRepeat; + bool slideReverse; // show slideshow in reverse order + bool rotateOnLoad; // rotate by 90 degrees on loading + bool fastLoad; + QTimer *slideTimer; + QValueList<DocLnk> imageList; + QAction *slideAction; + QString imageInfo[LAST]; }; #endif // SHOWIMG_H |