File indexing completed on 2024-05-12 03:44:33

0001 /*
0002     SPDX-FileCopyrightText: 2023 Joseph McGee <joseph.mcgee@sbcglobal.net>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #ifndef FILEUTILITYCAMERADATADIALOG_H
0010 #define FILEUTILITYCAMERADATADIALOG_H
0011 
0012 #include "fileutilitycameradata.h"
0013 #include <QDialog>
0014 
0015 QT_BEGIN_NAMESPACE
0016 namespace Ui
0017 {
0018 class FileUtilityCameraDataDialog;
0019 }
0020 QT_END_NAMESPACE
0021 
0022 class FileUtilityCameraDataDialog : public QDialog
0023 {
0024         Q_OBJECT
0025 
0026     public:
0027         FileUtilityCameraDataDialog(QWidget *parent = nullptr,
0028                                     const QString &aPreferredCameraId = "");
0029         ~FileUtilityCameraDataDialog();
0030 
0031         QNetworkAccessManager *getANetworkAccessManager() const;
0032         void setANetworkAccessManager(QNetworkAccessManager *newANetworkAccessManager);
0033 
0034         QNetworkReply *getReply() const;
0035         void setReply(QNetworkReply *newReply);
0036 
0037         QNetworkRequest *getRequest() const;
0038         void setRequest(QNetworkRequest *newRequest);
0039 
0040         // Available refers to the files in a repository
0041         QVector<QString> getAvailableCameraDataFiles();
0042         void setAvailableCameraDataFiles(QVector<QString> newAvailableCameraDataFiles);
0043         void refreshCameraList(); // call to repaint the file list after download completes
0044 
0045         int getDownloadFileCounter() const;
0046         void setDownloadFileCounter(int newDownloadFileCounter);
0047         void decrementDownloadFileCounter();
0048 
0049 
0050     private slots:
0051         void startCameraDownload();
0052 
0053     private:
0054         Ui::FileUtilityCameraDataDialog *ui;
0055         QString aPreferredCameraId;
0056 
0057         QNetworkAccessManager *aNetworkAccessManager;
0058         QNetworkRequest *request;
0059         QNetworkReply *reply;
0060         QVector<QString> availableCameraDataFiles;
0061 
0062         // void delay(int delaySeconds);
0063         int downloadFileCounter;
0064 };
0065 
0066 #endif // FILEUTILITYCAMERADATADIALOG_H