annotate base/ProgressPrinter.h @ 1866:b4b11af915f4

If duration < 0, swap start time and duration rather than throwing an exception - this is too deep to be throwing an exception here, we end up with bugs like #1989 (Crash when trying to import CSV file with certain unexpected data in it) - and the meaning of negative duration is not actually ambiguous
author Chris Cannam
date Thu, 11 Jun 2020 14:07:56 +0100
parents ad5f892c0c4d
children
rev   line source
Chris@392 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@392 2
Chris@392 3 /*
Chris@392 4 Sonic Visualiser
Chris@392 5 An audio file viewer and annotation editor.
Chris@392 6 Centre for Digital Music, Queen Mary, University of London.
Chris@392 7 This file copyright 2007 QMUL.
Chris@392 8
Chris@392 9 This program is free software; you can redistribute it and/or
Chris@392 10 modify it under the terms of the GNU General Public License as
Chris@392 11 published by the Free Software Foundation; either version 2 of the
Chris@392 12 License, or (at your option) any later version. See the file
Chris@392 13 COPYING included with this distribution for more information.
Chris@392 14 */
Chris@392 15
Chris@1581 16 #ifndef SV_PROGRESS_PRINTER_H
Chris@1581 17 #define SV_PROGRESS_PRINTER_H
Chris@392 18
Chris@392 19 #include "ProgressReporter.h"
Chris@392 20
Chris@392 21 class ProgressPrinter : public ProgressReporter
Chris@392 22 {
Chris@392 23 Q_OBJECT
Chris@392 24
Chris@392 25 public:
Chris@392 26 ProgressPrinter(QString message, QObject *parent = 0);
Chris@392 27 virtual ~ProgressPrinter();
Chris@392 28
Chris@1580 29 bool isDefinite() const override;
Chris@1580 30 void setDefinite(bool definite) override;
Chris@439 31
Chris@1580 32 bool wasCancelled() const override { return false; } // no mechanism
Chris@439 33
Chris@392 34 public slots:
Chris@1580 35 void setMessage(QString) override;
Chris@1580 36 void setProgress(int) override;
Chris@515 37 virtual void done();
Chris@392 38
Chris@392 39 protected:
Chris@392 40 QString m_prefix;
Chris@392 41 int m_lastProgress;
Chris@439 42 bool m_definite;
Chris@392 43 };
Chris@392 44
Chris@392 45 #endif