Add busy indicating progressbar to the rest of the long file loading operations.
This commit is contained in:
@@ -1,5 +1,7 @@
|
|||||||
#include "framefileio.h"
|
#include "framefileio.h"
|
||||||
|
|
||||||
|
#include <QProgressDialog>
|
||||||
|
|
||||||
FrameFileIO::FrameFileIO()
|
FrameFileIO::FrameFileIO()
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -26,11 +28,24 @@ QString FrameFileIO::loadFrameFile(QVector<CANFrame>* frameCache)
|
|||||||
{
|
{
|
||||||
filename = dialog.selectedFiles()[0];
|
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[0]) result = loadCRTDFile(filename, frameCache);
|
||||||
if (dialog.selectedNameFilter() == filters[1]) result = loadNativeCSVFile(filename, frameCache);
|
if (dialog.selectedNameFilter() == filters[1]) result = loadNativeCSVFile(filename, frameCache);
|
||||||
if (dialog.selectedNameFilter() == filters[2]) result = loadGenericCSVFile(filename, frameCache);
|
if (dialog.selectedNameFilter() == filters[2]) result = loadGenericCSVFile(filename, frameCache);
|
||||||
if (dialog.selectedNameFilter() == filters[3]) result = loadLogFile(filename, frameCache);
|
if (dialog.selectedNameFilter() == filters[3]) result = loadLogFile(filename, frameCache);
|
||||||
if (dialog.selectedNameFilter() == filters[4]) result = loadMicrochipFile(filename, frameCache);
|
if (dialog.selectedNameFilter() == filters[4]) result = loadMicrochipFile(filename, frameCache);
|
||||||
|
|
||||||
|
progress.cancel();
|
||||||
|
|
||||||
if (result)
|
if (result)
|
||||||
{
|
{
|
||||||
QStringList fileList = filename.split('/');
|
QStringList fileList = filename.split('/');
|
||||||
|
|||||||
@@ -500,6 +500,17 @@ void MainWindow::handleSaveFile()
|
|||||||
{
|
{
|
||||||
const QVector<CANFrame> *frames = model->getListReference();
|
const QVector<CANFrame> *frames = model->getListReference();
|
||||||
filename = dialog.selectedFiles()[0];
|
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])
|
if (dialog.selectedNameFilter() == filters[0])
|
||||||
{
|
{
|
||||||
result = FrameFileIO::saveCRTDFile(filename, frames);
|
result = FrameFileIO::saveCRTDFile(filename, frames);
|
||||||
@@ -520,6 +531,9 @@ void MainWindow::handleSaveFile()
|
|||||||
{
|
{
|
||||||
result = FrameFileIO::saveMicrochipFile(filename, frames);
|
result = FrameFileIO::saveMicrochipFile(filename, frames);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
progress.cancel();
|
||||||
|
|
||||||
if (result)
|
if (result)
|
||||||
{
|
{
|
||||||
QStringList fileList = filename.split('/');
|
QStringList fileList = filename.split('/');
|
||||||
@@ -551,11 +565,25 @@ void MainWindow::handleSaveFilteredFile()
|
|||||||
{
|
{
|
||||||
const QVector<CANFrame> *frames = model->getFilteredListReference();
|
const QVector<CANFrame> *frames = model->getFilteredListReference();
|
||||||
filename = dialog.selectedFiles()[0];
|
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[0]) result = FrameFileIO::saveCRTDFile(filename, frames);
|
||||||
if (dialog.selectedNameFilter() == filters[1]) result = FrameFileIO::saveNativeCSVFile(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[2]) result = FrameFileIO::saveGenericCSVFile(filename, frames);
|
||||||
if (dialog.selectedNameFilter() == filters[3]) result = FrameFileIO::saveLogFile(filename, frames);
|
if (dialog.selectedNameFilter() == filters[3]) result = FrameFileIO::saveLogFile(filename, frames);
|
||||||
if (dialog.selectedNameFilter() == filters[4]) result = FrameFileIO::saveMicrochipFile(filename, frames);
|
if (dialog.selectedNameFilter() == filters[4]) result = FrameFileIO::saveMicrochipFile(filename, frames);
|
||||||
|
|
||||||
|
progress.cancel();
|
||||||
|
|
||||||
if (result)
|
if (result)
|
||||||
{
|
{
|
||||||
QStringList fileList = filename.split('/');
|
QStringList fileList = filename.split('/');
|
||||||
|
|||||||
Reference in New Issue
Block a user