Engauge Digitizer  2
 All Classes Functions Variables Typedefs Enumerations Friends Pages
DocumentScrub.cpp
1 /******************************************************************************************************
2  * (C) 2018 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3  * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4  * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5  ******************************************************************************************************/
6 
7 #include "CallbackDocumentScrub.h"
8 #include "CallbackSearchReturn.h"
9 #include "Document.h"
10 #include "DocumentScrub.h"
11 #include "Logger.h"
12 #include "MainWindow.h"
13 #include "Point.h"
14 #include <QMessageBox>
15 #include "Version.h"
16 
18 {
19  LOG4CPP_INFO_S ((*mainCat)) << "DocumentScrub::DocumentScrub";
20 }
21 
22 void DocumentScrub::check (MainWindow &mainWindow,
23  const Document &document) const
24 {
25  LOG4CPP_INFO_S ((*mainCat)) << "DocumentScrub::check";
26 
28 
29  Functor2wRet<const QString &, const Point &, CallbackSearchReturn> ftorWithCallback = functor_ret (ftor,
31 
32  document.iterateThroughCurvePointsAxes (ftorWithCallback);
33  document.iterateThroughCurvesPointsGraphs (ftorWithCallback);
34 
35  if (!ftor.success ()) {
36 
37  QMessageBox::critical (&mainWindow,
38  engaugeWindowTitle (),
39  QString ("%1: %2")
40  .arg (QObject::tr ("Point identifier error encountered. Please notify the Engauge "
41  "developers along with any comments about the country and langauge locale. "
42  "The invalid point name was"))
43  .arg (ftor.badPointName ().replace (POINT_IDENTIFIER_DELIMITER_SAFE, "<tab>")));
44  exit (-1);
45  }
46 }
void iterateThroughCurvePointsAxes(const Functor2wRet< const QString &, const Point &, CallbackSearchReturn > &ftorWithCallback)
See Curve::iterateThroughCurvePoints, for the axes curve.
Definition: Document.cpp:442
CallbackSearchReturn callback(const QString &curveName, const Point &point)
Callback method.
bool success() const
Scrub overall result.
Callback for scrubbing Document. Any state error will be caught.
Storage of one imported image and the data attached to that image.
Definition: Document.h:41
void iterateThroughCurvesPointsGraphs(const Functor2wRet< const QString &, const Point &, CallbackSearchReturn > &ftorWithCallback)
See Curve::iterateThroughCurvePoints, for all the graphs curves.
Definition: Document.cpp:465
void check(MainWindow &mainWindow, const Document &document) const
Check document state.
QString badPointName() const
Scrub result details. Applies when unsuccessful.
DocumentScrub()
Single constructor.
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
Definition: MainWindow.h:89