Add busy indicating progressbar to the rest of the long file loading operations.

This commit is contained in:
Collin Kidder
2015-08-09 19:40:23 -04:00
parent fa5acf612b
commit b3d0b76cc6
2 changed files with 43 additions and 0 deletions
+15
View File
@@ -1,5 +1,7 @@
#include "framefileio.h"
#include <QProgressDialog>
FrameFileIO::FrameFileIO()
{
@@ -26,11 +28,24 @@ QString FrameFileIO::loadFrameFile(QVector<CANFrame>* frameCache)
{
filename = dialog.selectedFiles()[0];
QProgressDialog progress(qApp->activeWindow());
progress.setWindowModality(Qt::WindowModal);
progress.setLabelText("Loading file...");
progress.setCancelButton(0);
progress.setRange(0,0);
progress.setMinimumDuration(0);
progress.show();
qApp->processEvents();
if (dialog.selectedNameFilter() == filters[0]) result = loadCRTDFile(filename, frameCache);
if (dialog.selectedNameFilter() == filters[1]) result = loadNativeCSVFile(filename, frameCache);
if (dialog.selectedNameFilter() == filters[2]) result = loadGenericCSVFile(filename, frameCache);
if (dialog.selectedNameFilter() == filters[3]) result = loadLogFile(filename, frameCache);
if (dialog.selectedNameFilter() == filters[4]) result = loadMicrochipFile(filename, frameCache);
progress.cancel();
if (result)
{
QStringList fileList = filename.split('/');
+28
View File
@@ -500,6 +500,17 @@ void MainWindow::handleSaveFile()
{
const QVector<CANFrame> *frames = model->getListReference();
filename = dialog.selectedFiles()[0];
QProgressDialog progress(this);
progress.setWindowModality(Qt::WindowModal);
progress.setLabelText("Saving file...");
progress.setCancelButton(0);
progress.setRange(0,0);
progress.setMinimumDuration(0);
progress.show();
qApp->processEvents();
if (dialog.selectedNameFilter() == filters[0])
{
result = FrameFileIO::saveCRTDFile(filename, frames);
@@ -520,6 +531,9 @@ void MainWindow::handleSaveFile()
{
result = FrameFileIO::saveMicrochipFile(filename, frames);
}
progress.cancel();
if (result)
{
QStringList fileList = filename.split('/');
@@ -551,11 +565,25 @@ void MainWindow::handleSaveFilteredFile()
{
const QVector<CANFrame> *frames = model->getFilteredListReference();
filename = dialog.selectedFiles()[0];
QProgressDialog progress(this);
progress.setWindowModality(Qt::WindowModal);
progress.setLabelText("Saving filtered file...");
progress.setCancelButton(0);
progress.setRange(0,0);
progress.setMinimumDuration(0);
progress.show();
qApp->processEvents();
if (dialog.selectedNameFilter() == filters[0]) result = FrameFileIO::saveCRTDFile(filename, frames);
if (dialog.selectedNameFilter() == filters[1]) result = FrameFileIO::saveNativeCSVFile(filename, frames);
if (dialog.selectedNameFilter() == filters[2]) result = FrameFileIO::saveGenericCSVFile(filename, frames);
if (dialog.selectedNameFilter() == filters[3]) result = FrameFileIO::saveLogFile(filename, frames);
if (dialog.selectedNameFilter() == filters[4]) result = FrameFileIO::saveMicrochipFile(filename, frames);
progress.cancel();
if (result)
{
QStringList fileList = filename.split('/');