 BackgroundStateAbstractBase | Background image state machine state base class |
 BackgroundStateContext | Context class that manages the background image state machine |
 BackgroundStateCurve | Background image state for showing filter image from current curve |
 BackgroundStateNone | Background image state for showing no image |
 BackgroundStateOriginal | Background image state for showing original (=unfiltered) image |
 BackgroundStateUnloaded | Background image state for interval between startup and loading of the image |
 CallbackAddPointsInCurvesGraphs | Callback that is used when iterating through a read-only CurvesGraphs to add corresponding points in Document |
 CallbackAxesCheckerFromAxesPoints | Callback for positioning the axes indicator according to the axes points |
 CallbackAxisPointsAbstract | Callback for collecting axis points and then performing common calculations on those axis points |
 CallbackBoundingRects | Callback for computing the bounding rectangles of the screen and graph coordinates of the points in the Document |
 CallbackCheckAddPointAxis | Callback for sanity checking the screen and graph coordinates of an axis point, before it is added to the axes curve |
 CallbackCheckEditPointAxis | Callback for sanity checking the screen and graph coordinates of an axis point that is in the axes curve, before changing its graph coordinates |
 CallbackGatherXThetaValuesFunctions | Callback for collecting X/Theta independent variables, for functions, in preparation for exporting |
 CallbackNextOrdinal | Callback for computing the next ordinal for a new point |
 CallbackPointOrdinal | Callback for computing the ordinal for a specified point, as a function of the LineStyle and curve geometry |
 CallbackRemovePointsInCurvesGraphs | Callback that is used when iterating through a read-only CurvesGraphs to remove corresponding points in Document |
 CallbackSceneUpdateAfterCommand | Callback for updating the QGraphicsItems in the scene after a command may have modified Points in Curves |
 CallbackUpdateTransform | Callback for collecting axis points and then calculating the current transform from those axis points |
 Checker | Box shape that is drawn through the three axis points, to temporarily (usually) or permanently (rarely) highlight the local up/down/left/right directions when all axis points have been defined |
 ChecklistGuide | Dockable text window containing checklist guide |
 ChecklistGuideBrowser | Class that adds rudimentary tree collapse/expand functionality to QTextBrowser |
 ChecklistGuidePage | This class customizes QWizardPage for ChecklistGuideWizard |
 ChecklistGuidePageConclusion | This class uses the validation method of the Conclusion page to perform final processing for ChecklistGuideWizard |
 ChecklistGuidePageCurves | This class adds validation to the Curves page |
 ChecklistGuidePageIntro | This class sets up the introduction page |
 ChecklistGuideWizard | Wizard for setting up the checklist guide |
 ChecklistLineEdit | Adds key event handling to QLineEdit |
 CmdAbstract | Wrapper around QUndoCommand. This simplifies the more complicated feature set of QUndoCommand |
 CmdAddPointAxis | Command for adding one axis point |
 CmdAddPointGraph | Command for adding one graph point |
 CmdAddPointsGraph | Command for adding one or more graph points. This is for Segment Fill mode |
 CmdCopy | Command for moving all selected Points by a specified translation |
 CmdCut | Command for cutting all selected Points |
 CmdDelete | Command for deleting all selected Points |
 CmdEditPointAxis | Command for editing the graph coordinates one axis point |
 CmdFactory | Factory for CmdAbstractBase objects |
 CmdMediator | Command queue stack |
 CmdMoveBy | Command for moving all selected Points by a specified translation |
 CmdPaste | Command for moving all selected Points by a specified translation |
 CmdSettingsAxesChecker | Command for DlgSettingsAxesChecker |
 CmdSettingsColorFilter | Command for DlgSettingsColorFilter |
 CmdSettingsCoords | Command for DlgSettingsCoords |
 CmdSettingsCurveAddRemove | Command for DlgSettingsCurveAddRemove |
 CmdSettingsCurveProperties | Command for DlgSettingsCurveProperties |
 CmdSettingsDigitizeCurve | Command for DlgSettingsDigitizeCurve |
 CmdSettingsExportFormat | Command for DlgSettingsExportFormat |
 CmdSettingsGeneral | Command for DlgSettingsGeneral |
 CmdSettingsGridRemoval | Command for DlgSettingsGridRemoval |
 CmdSettingsMainWindow | Command for DlgSettingsMainWindow |
 CmdSettingsPointMatch | Command for DlgSettingsPointMatch |
 CmdSettingsSegments | Command for DlgSettingsSegments |
 CmdStackShadow | Command stack that shadows the CmdMediator command stack at startup when reading commands from an error report file |
 ColorFilter | Class for filtering image to remove unimportant information |
 ColorFilterEntry | Helper class so ColorFilter class can compute the background color |
 ColorFilterHistogram | Class that generates a histogram according to the current filter |
 ColorFilterSettings | Color filter parameters for one curve. For a class, this is handled the same as LineStyle and PointStyle |
 Correlation | Fast cross correlation between two functions |
 CursorFactory | Create standard cross cursor, or custom cursor, according to settings |
 Curve | Container for one set of digitized Points |
 CurveNameList | Model for DlgSettingsCurveAddRemove and CmdSettingsCurveAddRemove |
 CurveNameListEntry | Utility class for converting the QVariant in CurveNameList to/from the curve names as QStrings, for use by the CurveNameList model class |
 CurveSettingsInt | Internal settings for one curve, such as LineStyle, PointStyle and CurveFilter |
 CurvesGraphs | Container for all graph curves. The axes point curve is external to this class |
 CurveStyle | Container for LineStyle and PointStyle for one Curve |
 CurveStyles | Model for DlgSettingsCurveProperties and CmdSettingsCurveProperties |
 DigitizeStateAbstractBase | Base class for all digitizing states. This serves as an interface to DigitizeStateContext |
 DigitizeStateAxis | Digitizing state for digitizing one axis point at a time |
 DigitizeStateColorPicker | Digitizing state for selecting a color for DigitizeStateSegment |
 DigitizeStateContext | Container for all DigitizeStateAbstractBase subclasses. This functions as the context class in a standard state machine implementation |
 DigitizeStateCurve | Digitizing state for creating Curve Points, one at a time |
 DigitizeStateEmpty | Digitizing state before a Document has been created. In this state, the cursor is Qt::ArrowCursor |
 DigitizeStatePointMatch | Digitizing state for matching Curve Points, one at a time |
 DigitizeStateSegment | Digitizing state for creating multiple Points along a highlighted segment |
 DigitizeStateSelect | Digitizing state for selecting one or more Points in the Document |
 DlgAbout | About Engauge dialog. This provides a hidden shortcut for triggering ENGAUGE_ASSERT |
 DlgEditPoint | Dialog box for editing the information of one axis point |
 DlgErrorReport | Dialog for sending error report |
 DlgFilterCommand | Command pattern object for receiving new parameters in DlgFilterWorker from GUI thread |
 DlgFilterThread | Class for processing new filter settings. This is based on http://blog.debao.me/2013/08/how-to-use-qthread-in-the-right-way-part-1/ |
 DlgFilterWorker | Class for processing new filter settings. This is based on http://blog.debao.me/2013/08/how-to-use-qworker-in-the-right-way-part-1/ |
 DlgRequiresTransform | Dialog to be displayed whenever some operation or processing cannot be performed since the axis points are not defined |
 DlgSettingsAbstractBase | Abstract base class for all Settings dialogs |
 DlgSettingsAxesChecker | Dialog for editing axes checker settings |
 DlgSettingsColorFilter | Dialog for editing filtering settings |
 DlgSettingsCoords | Dialog for editing coordinates settings |
 DlgSettingsCurveAddRemove | Dialog for editing curve names settings |
 DlgSettingsCurveProperties | Dialog for editing curve properties settings |
 DlgSettingsDigitizeCurve | Dialog for editing DigitizeStateCurve settings |
 DlgSettingsExportFormat | Dialog for editing exporting settings |
 DlgSettingsGeneral | Dialog for editing general settings |
 DlgSettingsGridRemoval | Dialog for editing grid removal settings |
 DlgSettingsMainWindow | Dialog for editing main window settings, which are entirely independent of all documents |
 DlgSettingsPointMatch | Dialog for editing point match settings, for DigitizeStatePointMatch |
 DlgSettingsSegments | Dialog for editing Segments settings, for DigitizeStateSegment |
 DlgValidatorAbstract | Abstract validator for all numeric formats |
 DlgValidatorDateTime | Validator for numeric value expressed as date and/or time |
 DlgValidatorDegreesMinutesSeconds | Validator for angles in real degrees, integer degrees and real minutes, or integer degrees with integer minutes with real seconds |
 DlgValidatorFactory | Validator factory |
 DlgValidatorNumber | Validator for generic (=simple) numbers |
 Document | Storage of one imported image and the data attached to that image |
 DocumentModelAbstractBase | Abstract base class for document models. This class enforces a common interface for the leaf subclasses |
 DocumentModelAxesChecker | Model for DlgSettingsAxesChecker and CmdSettingsAxesChecker |
 DocumentModelColorFilter | Model for DlgSettingsColorFilter and CmdSettingsColorFilter |
 DocumentModelCoords | Model for DlgSettingsCoords and CmdSettingsCoords |
 DocumentModelDigitizeCurve | Model for DlgSettingsDigitizeCurve and CmdSettingsDigitizeCurve |
 DocumentModelExportFormat | Model for DlgSettingsExportFormat and CmdSettingsExportFormat |
 DocumentModelGeneral | Model for DlgSettingsGeneral and CmdSettingsGeneral |
 DocumentModelGridRemoval | Model for DlgSettingsGridRemoval and CmdSettingsGridRemoval. The settings are unstable until the user approves |
 DocumentModelPointMatch | Model for DlgSettingsPointMatch and CmdSettingsPointMatch |
 DocumentModelSegments | Model for DlgSettingsSegments and CmdSettingsSegments |
 ExportAlignLinear | Pick first simplest x value between specified min and max, for linear scaling |
 ExportAlignLog | Pick first simplest x value between specified min and max, for log scaling |
 ExportFileAbstractBase | Strategy base class for exporting to a file. This class provides common methods |
 ExportFileFunctions | Strategy class for exporting to a file. This strategy is external to the Document class so that class is simpler |
 ExportFileRelations | Strategy class for exporting to a file. This strategy is external to the Document class so that class is simpler |
 ExportOrdinalsSmooth | Utility class to interpolate points spaced evenly along a piecewise defined curve with fitted spline |
 ExportOrdinalsStraight | Utility class to interpolate points spaced evenly along a piecewise defined curve with line segments between points |
 ExportToClipboard | Strategy class for exporting to the clipboard. This strategy is external to the Document class so that class is simpler |
 ExportToFile | Strategy class for exporting to a file. This strategy is external to the Document class so that class is simpler |
 ExportXThetaValuesMergedFunctions | Creates the set of merged x/theta values for exporting functions, using interpolation |
 FilterImage | Filters an image using a combination of color filtering and grid removal |
 FormatCoordsUnits | Highest-level wrapper around other Formats classes |
 FormatCoordsUnitsStrategyAbstractBase | Common methods for formatting strategies |
 FormatCoordsUnitsStrategyNonPolarTheta | Format conversions between unformatted and formatted for CoordUnitsNonPolarTheta |
 FormatCoordsUnitsStrategyPolarTheta | Format conversions between unformatted and formatted for CoordUnitsStrategyPolarTheta |
 FormatDateTime | Input parsing and output formatting for date/time values |
 FormatDegreesMinutesSecondsBase | Common input parsing and output formatting for degrees/minutes/seconds values |
 FormatDegreesMinutesSecondsNonPolarTheta | Angular units according to CoordUnitsNonPolarTheta |
 FormatDegreesMinutesSecondsPolarTheta | Angular units according to CoordUnitsPolarTheta |
 GraphicsArcItem | Draw an arc as an ellipse but without lines from the center to the start and end points |
 GraphicsLinesForCurve | This class stores the GraphicsLine objects for one Curve |
 GraphicsLinesForCurves | This class stores the GraphicsLinesForCurves objects, one per Curve |
 GraphicsPoint | Graphics item for drawing a circular or polygonal Point |
 GraphicsPointAbstractBase | Base class for adding identifiers to graphics items that represent Points |
 GraphicsPointEllipse | This class add event handling to QGraphicsEllipseItem |
 GraphicsPointFactory | Factor for generating GraphicsPointAbstractBase class objects |
 GraphicsPointPolygon | This class add event handling to QGraphicsPolygonItem |
 GraphicsScene | Add point and line handling to generic QGraphicsScene |
 GraphicsView | QGraphicsView class with event handling added. Typically the events are sent to the active digitizing state |
 GridClassifier | Classify the grid pattern in an original image |
 GridHealer | Class that 'heals' the curves after grid lines have been removed |
 GridRemoval | Strategy class for grid removal |
 HelpBrowser | Text browser with resource loading enhanced for use as help text browser |
 HelpWindow | Dockable help window |
 Jpeg2000 | Wrapper around OpenJPEG library, in C, for opening jpeg2000 files |
 LineStyle | Details for a specific Line |
 LoadFileInfo | Returns information about files |
 LoadImageFromUrl | Load QImage from url. This is trivial for a file, but requires an asynchronous download step for http urls |
 LoggerUpload | Upload logging information to website for developer support |
 MainWindow | Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document Interface |
 MainWindowModel | Model for DlgSettingsMainWindow and CmdSettingsMainWindow |
 MigrateToVersion6 | Converts old (=pre version 6) enums to new (=version 6) enums, for reading of old document files |
 MimePoints | Custom mime type for separate treatment of graph coordinates and, when there is no transform, points coordinates |
 NetworkClient | Client for interacting with Engauge server |
 OrdinalGenerator | Utility class for generating ordinal numbers |
 Point | Class that represents one digitized point. The screen-to-graph coordinate transformation is always external to this class |
 PointComparator | Comparator for sorting Point class |
 PointIdentifiers | Hash table class that tracks point identifiers as the key, with a corresponding boolean value |
 PointMatchAlgorithm | Algorithm returning a list of points that match the specified point |
 PointMatchPixel | Single on or off pixel out of the pixels that define the point match mode's candidate point |
 PointMatchTriplet | Representation of one matched point as produced from the point match algorithm |
 PointStyle | Details for a specific Point |
 Segment | Selectable piecewise-defined line that follows a filtered line in the image |
 SegmentFactory | Factory class for Segment objects |
 SegmentLine | This class is a special case of the standard QGraphicsLineItem for segments |
 SettingsForGraph | Manage storage and retrieval of the settings for the curves |
 Spline | Cubic interpolation given independent and dependent value vectors |
 SplineCoeff | Four element vector of a,b,c,d coefficients and the associated x value, for one interval of a set of piecewise-defined intervals |
 SplinePair | Single X/Y pair for cubic spline interpolation initialization and calculations |
 StatusBar | Wrapper around QStatusBar to manage permanent widgets |
 TestCorrelation | Unit tests of fast correlation algorithm |
 TestFormats | Unit tests of formats |
 TestGraphCoords | Unit tests of graph coordinate sanity checking |
 TestProjectedPoint | Unit test of spline library |
 TestSpline | Unit test of spline library |
 TestTransformation | Unit test of transformation class. Checking mostly involves verifying forward/reverse are inverses of each other |
 TestValidators | Unit tests of validators |
 Transformation | Affine transformation between screen and graph coordinates, based on digitized axis points |
 TransformationStateAbstractBase | Base class for all transformation states. This serves as an interface to TransformationStateContext |
 TransformationStateContext | Context class for transformation state machine |
 TransformationStateDefined | Class to show transformation since transformation is defined |
 TransformationStateUndefined | Class to not show transformation since transformation is undefined |
 TutorialButton | Show a button with text for clicking ion. The button is implemented using layering of two graphics items (text and rectangle) |
 TutorialButtonRect | This class customizes QGraphicsRectItem so it performs a callback after a mouse event |
 TutorialButtonText | This class customizes QGraphicsTextItem so it performs a callback after a mouse event |
 TutorialDlg | Tutorial using a strategy like a comic strip with decision points deciding which panels appear |
 TutorialStateAbstractBase | One state manages one panel of the tutorial |
 TutorialStateAxisPoints | Axis points panel discusses axis point digitization |
 TutorialStateChecklistWizardAbstract | Abstract class that supports checklist wizard panels |
 TutorialStateChecklistWizardLines | Checklist wizard panel for lines discusses the checklist wizard, and returns to TRANSITION_STATE_SEGMENT_FILL |
 TutorialStateChecklistWizardPoints | Checklist wizard panel for points discusses the checklist wizard, and returns to TRANSITION_STATE_POINT_MATCH |
 TutorialStateColorFilter | Color filter panel discusses the curve-specific color filtering |
 TutorialStateContext | Context class for tutorial state machine |
 TutorialStateCurveSelection | Curve selection panel discusses how to select a curve, and perform setup on the selected curve |
 TutorialStateCurveType | Curve type state/panel lets user select the curve type (lines or points) |
 TutorialStateIntroduction | Introduction state/panel is the first panel the user sees |
 TutorialStatePointMatch | Point match panel discusses the matching of points in curves without lines |
 TutorialStateSegmentFill | Segment fill panel discusses the digitization of points along curve lines |
 ViewPointStyle | Class that displays a view of the current Curve's point style |
 ViewPreview | Class that modifies QGraphicsView to automatically expand/shrink the view to fit the window, after resize events |
 ViewProfile | Class that modifies QGraphicsView to present a two-dimensional profile, with movable dividers for selecting a range |
 ViewProfileDivider | Divider that can be dragged, in a dialog QGraphicsView |
 ViewProfileScale | Linear horizontal scale, with the spectrum reflecting the active filter parameter |
 ViewSegmentFilter | Class that displays the current Segment Filter in a MainWindow toolbar |