diff options
Diffstat (limited to 'lumina-fm/FODialog.h')
-rw-r--r-- | lumina-fm/FODialog.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/lumina-fm/FODialog.h b/lumina-fm/FODialog.h new file mode 100644 index 00000000..e823fe2e --- /dev/null +++ b/lumina-fm/FODialog.h @@ -0,0 +1,60 @@ +//=========================================== +// Lumina-DE source code +// Copyright (c) 2014, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This is the dialog for showing currently running file operations +//=========================================== +#ifndef _LUMINA_FILE_MANAGER_FILE_OP_DIALOG_H +#define _LUMINA_FILE_MANAGER_FILE_OP_DIALOG_H + +// Qt includes +#include <QDialog> +#include <QMessageBox> +#include <QStringList> +#include <QTimer> +#include <QFileInfo> +#include <QDir> +#include <QFile> + +// libLumina includes +#include <LuminaXDG.h> +#include <LuminaUtils.h> + +namespace Ui{ + class FODialog; +}; + +class FODialog : public QDialog{ + Q_OBJECT +public: + FODialog(QWidget *parent = 0); + ~FODialog(); + + bool noerrors; + + void setOverwrite(bool); + void RemoveFiles(QStringList paths); + void CopyFiles(QStringList oldPaths, QStringList newPaths); //same permissions as old files + void RestoreFiles(QStringList oldPaths, QStringList newPaths); //user/group rw permissions + void MoveFiles(QStringList oldPaths, QStringList newPaths); //no change in permissions + +private: + Ui::FODialog *ui; + bool isRM, isCP, isRESTORE, isMV; + bool stopped; + int overwrite; // [-1= auto, 0= no overwrite, 1= overwrite] + QStringList ofiles, nfiles; //original/new files + + QStringList subfiles(QString dirpath); //recursive function for fetching all "child" files/dirs (dirs last) + QString newFileName(QString path); + QStringList removeItem(QString path); + QStringList copyItem(QString oldpath, QString newpath); + +private slots: + void slotStartOperations(); + void on_push_stop_clicked(); +}; + +#endif |