MCPcopy Create free account
hub / github.com/KDE/labplot / OriginProjectParser

Class OriginProjectParser

src/backend/datasources/projects/OriginProjectParser.h:35–113  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

33class Worksheet;
34
35class OriginProjectParser : public ProjectParser {
36 Q_OBJECT
37
38public:
39 OriginProjectParser();
40 ~OriginProjectParser() override;
41
42 static bool isOriginProject(const QString& fileName);
43 static QString supportedExtensions();
44
45 void checkContent(bool& hasUnusedObjects, bool& hasMultiLayers);
46 void setImportUnusedObjects(bool);
47 void setGraphLayerAsPlotArea(bool);
48
49protected:
50 bool load(Project*, bool preview) override;
51
52private:
53 bool loadFolder(Folder*, tree<Origin::ProjectNode>::iterator, bool preview);
54 bool loadWorkbook(Workbook*, bool preview);
55 bool loadSpreadsheet(Spreadsheet*, bool preview, const QString& wbName = QString(), int sheetIndex = -1);
56 void loadColumnNumericFormat(const Origin::SpreadColumn&, Column*) const;
57 bool loadMatrixWorkbook(Workbook*, bool preview);
58 bool loadMatrix(Matrix*, bool preview, size_t sheetIndex = 0, const QString& mwbName = QString());
59
60 bool loadWorksheet(Worksheet*, bool preview);
61 void loadGraphLayer(const Origin::GraphLayer&, CartesianPlot*, int layerIndex, QHash<TextLabel*, QSizeF>& textLabelPositions, bool preview);
62 void loadCurves(const Origin::GraphLayer&, CartesianPlot*, int layerIndex, bool preview);
63 void loadAxes(const Origin::GraphLayer&, CartesianPlot*, int layerIndex, const QString& xColumnInfo, const QString& yColumnInfo);
64 void loadAxis(const Origin::GraphAxis&, Axis*, int layerIndex, int index, const QString& columnInfo = QString()) const;
65 void loadCurve(const Origin::GraphCurve&, XYCurve*) const;
66 void loadBackground(const Origin::GraphCurve&, Background*) const;
67 void loadSymbol(const Origin::GraphCurve&, Symbol*, const XYCurve* = nullptr) const;
68
69 bool loadNote(Note*, bool preview);
70 void handleLooseWindows(Folder*, bool preview);
71
72 bool hasUnusedObjects();
73 bool hasMultiLayerGraphs();
74 void restorePointers(Project*);
75
76 unsigned int findSpreadsheetByName(const QString&);
77 unsigned int findColumnByName(const Origin::SpreadSheet&, const QString&);
78 unsigned int findMatrixByName(const QString&);
79 unsigned int findWorkbookByName(const QString&);
80 unsigned int findWorksheetByName(const QString&);
81 unsigned int findNoteByName(const QString&);
82
83 Origin::SpreadSheet getSpreadsheetByName(QString&);
84 void parseColumnInfo(const QString& info, QString& longName, QString& unit, QString& comments) const;
85 QString parseOriginText(const QString&) const;
86 QString parseOriginTags(const QString&) const;
87 QDateTime creationTime(tree<Origin::ProjectNode>::iterator) const;
88
89 // map between the different enums/datatypes
90 RangeT::Scale scale(unsigned char) const;
91 QColor color(Origin::Color) const;
92 Background::ColorStyle backgroundColorStyle(Origin::ColorGradientDirection) const;

Callers

nothing calls this directly

Calls 1

QStringClass · 0.70

Tested by

no test coverage detected