Mercurial > retraceit
view src/mainwindow.h @ 9:e3c8f61e45a9
Implement folderselection dialogs
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Thu, 26 Mar 2015 16:30:18 +0100 |
parents | 107e435cb569 |
children | 64a51a42c01f |
line wrap: on
line source
/* Copyright (C) 2014 by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ /** @file The Main UI class. * * Parent class of all dialogs and graphical user interaction. */ #include <QMainWindow> #include <QSettings> #include <QDateTime> class QPushButton; class QDropEvent; class QDragLeaveEvent; class QDragMoveEvent; class QDragEnterEvent; class MetaDataView; class PNGPlayer; class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(); protected: /** @brief UI setup */ void setupGUI(); /** @brief Cleanup and save the current state */ virtual void closeEvent(QCloseEvent *event); /** @brief Restores the last window state */ void readSettings(); /* The drag drop actions void dragEnterEvent(QDragEnterEvent *event); void dragMoveEvent(QDragMoveEvent *event); void dragLeaveEvent(QDragLeaveEvent *event); void dropEvent(QDropEvent *event); */ public slots: /** @brief set an absolute folder to read a metadata.csv from. */ void setFolder(const QString &folder); /** @brief set an absolute folder to check for subfolders. */ void setRootFolder(const QString &folder); public: /** @brief start the folder selection and show afterwards. */ void showWithFolderSelect(); /** @brief start the subfolder selection and show afterwards. */ void showSubFolderSelect(); protected slots: /** @brief Show an error dialog to the user. */ void showErrorMessage(const QString& errMsg); /** @brief update the status bar for the image. * * Function signature is similar to showPicture in pngviewer */ void showPictureNameStatus(const QString& fileName, int current, int max, const QDateTime& timestamp ); private: QSettings mSettings; QString mCurFolder; QString mRootFolder; QString mSubFolder; MetaDataView *mDataView; PNGPlayer *mPlayer; };