CSI_Uploader/main.cpp
2024-09-13 15:46:49 -05:00

81 lines
2.1 KiB
C++

#include <QApplication>
#include <QWidget>
#include <QPushButton>
#include <QVBoxLayout>
#include <QFileDialog>
#include <QMessageBox>
#include <QLabel>
#include <QListWidget>
#include <QLocale>
#include <QTranslator>
#include <qforeach.h>
class CSIUploader : public QWidget {
Q_OBJECT
public:
CSIUploader(QWidget *parent = 0);
private slots:
void browseFiles();
void uploadFiles();
private:
QListWidget *fileList;
QPushButton *browseButton;
QPushButton *uploadButton;
};
CSIUploader::CSIUploader(QWidget *parent) : QWidget(parent) {
QVBoxLayout *layout = new QVBoxLayout(this);
fileList = new QListWidget(this);
uploadButton = new QPushButton("Upload Files", this);
browseButton = new QPushButton("Browse to Files", this);
layout->addWidget(new QLabel("Files to be Uploaded:"));
layout->addWidget(fileList);
layout->addWidget(browseButton);
layout->addWidget(uploadButton);
setLayout(layout);
connect(browseButton, &QPushButton::clicked, this, &CSIUploader::browseFiles);
connect(uploadButton, &QPushButton::clicked, this, &CSIUploader::uploadFiles);
}
void CSIUploader::browseFiles() {
QStringList files = QFileDialog::getOpenFileNames(this, "Select Files for Upload");
foreach (QString file, files) {
fileList->addItem(file);
}
}
void CSIUploader::uploadFiles() {
if(fileList->count() == 0) {
QMessageBox::warning(this, "No Files Selected", "Please Select Files for Upload.");
return;
}
for(int i = 0; i < fileList->count(); i++) {
QListWidgetItem *file = fileList->item(i);
QString fileName = file->text();
// API Upload Code goes here
QMessageBox::information(this, "File Upload", "Uploading: "+ fileName);
}
QMessageBox::information(this, "File Upload", "Upload Completed!");
fileList->clear();
}
int main(int argc, char* argv[]) {
QApplication app(argc, argv);
CSIUploader window;
window.setWindowTitle("File Uploader");
window.resize(300, 200);
window.show();
return app.exec();
}
#include "main.moc"