51 ChartView(wxWindow* parent, std::vector<ElementPlotData> epdList, std::vector<double> time, PlotLib plotLib = PlotLib::wxMATH_PLOT);
55 void UpdatePlot(
bool fit =
true);
58 virtual void OnClose(wxCloseEvent& event);
59 virtual void OnResize(wxSizeEvent& event);
60 virtual void OnMenuExpCSVClick(wxCommandEvent& event);
61 virtual void OnTreeItemActivated(wxTreeEvent& event);
62 virtual void OnTreeItemSelectionChanged(wxTreeEvent& event);
63 virtual void OnMenuDarkThemeClick(wxCommandEvent& event);
64 virtual void OnMenuExitClick(wxCommandEvent& event) { Close(); }
65 virtual void OnMenuFitClick(wxCommandEvent& event) { Fit(); }
66 virtual void OnMenuSaveImageClick(wxCommandEvent& event);
67 virtual void OnMenuSendClipClick(wxCommandEvent& event);
68 virtual void OnMenuShowCoordinatesClick(wxCommandEvent& event);
69 virtual void OnMenuShowGridClick(wxCommandEvent& event);
70 virtual void OnMenuShowLabelClick(wxCommandEvent& event);
71 virtual void OnPropertyGridChange(wxPropertyGridEvent& event);
72 virtual void OnRightClickDown(wxMouseEvent& event);
73 virtual void SetMPWindow();
74 virtual void SetTreectrl();
75 virtual void BuildColourList();
76 virtual wxColour GetNextColour();
77 virtual wxTreeItemId AllToYAxis(wxTreeItemId root);
78 virtual wxTreeItemId UpdateAllPlots(wxTreeItemId root);
79 virtual wxTreeItemId UpdateAllPlotsCharDir(wxTreeItemId root, XYChart* chartDir);
80 virtual wxString GetActiveCurvesCSV();
81 virtual wxTreeItemId GetActivePlotData(wxTreeItemId root, std::vector<PlotData*>& plotDataList);
82 virtual void DrawChartDir();
83 virtual void OnViewPortChanged(wxCommandEvent& event);
84 virtual void OnMouseMovePlotArea(wxCommandEvent& event);
85 virtual void DrawTrackLine(XYChart* chartDir);
86 virtual char DotOrComma() {
return wxString::Format(
"%.1f", 0.1)[1]; };
87 virtual wxString GetUnitFromMagText(wxString magText);
88 virtual wxTreeItemId CalcXYLimits(wxTreeItemId root, XYChart* chartDir);
90 wxPGProperty* m_pgPropColor =
nullptr;
92 wxTreeItemId m_treeTimeID;
93 wxTreeItemId m_selectedItemID;
95 std::vector<ElementPlotData> m_epdList;
96 std::vector<double> m_time;
97 std::vector<double> m_xAxisValues;
99 PlotLib m_plotLib = PlotLib::wxMATH_PLOT;
101 mpWindow* m_mpWindow =
nullptr;
102 mpScaleX* m_xaxis =
nullptr;
103 mpScaleY* m_yaxis =
nullptr;
104 mpText* m_chartTitle =
nullptr;
105 mpInfoCoords* m_coords =
nullptr;
106 mpInfoLegend* m_leg =
nullptr;
108 wxChartViewer* m_chartViewerDir =
nullptr;
109 wxBoxSizer* m_sizerChart =
nullptr;
110 wxSize m_chartViewerSize = wxSize(200, 200);
111 int m_legendHeight = 0;
112 int m_trackLinePos = 0;
117 bool m_firstPlot =
true;
118 bool m_forceAxisLimits =
false;
119 wxString m_sugestXLabel = _(
"Time (s)");
120 wxString m_sugestYLabel =
"";
121 std::map<int, int> m_rawDataColour;
123 bool m_hideGrid =
false;
124 bool m_showLeg =
true;
125 bool m_showCoords =
false;
126 bool m_darkTheme =
false;
128 std::vector<wxColour> m_colourList;
129 std::vector<wxColour>::iterator m_itColourList;