test_sdk/gui/orbit/gtl_gui_orbit_chart.h

43 lines
1.3 KiB
C++

#ifndef GTL_GUI_ORBIT_CHART_H
#define GTL_GUI_ORBIT_CHART_H
#include "gui/gtl_gui_chart.h"
#include "gui/gui_global.h"
namespace gtl {
namespace gui {
namespace orbit{
class GTL_GUI_EXPORT chart : public gtl::gui::chart
{
Q_OBJECT
public:
chart(QWidget* parent = nullptr, ::chart::axis_horz *axis_x = nullptr, ::chart::axis_vert *axis_y = nullptr);
~chart();
virtual void add(::chart::series::series *s);
private:
void add_marker();
void clear_marker();
void mouseDoubleClickEvent(QMouseEvent *event);
virtual void contextMenuEvent(QContextMenuEvent *event) override;
private:
QMenu* _orbit_menu;
private slots:
void get_neares_series_x(qreal &x, chart_line::pos_behaviors);
void get_neares_series_y(qreal x, bool is_widget_pos, QVariantList &data);
// void get_series_values(qreal x_min, qreal x_max, int series_idx, QVariantList &data);
protected:
virtual chart_series* create_series(gtl::analog_data* ai){ return nullptr; }
};
}
} // namespace gui
} // namespace gt
#endif // GTL_GUI_ORBIT_CHART_H