test_sdk/gui/player/gtl_gui_player_chart.h

63 lines
1.6 KiB
C
Raw Normal View History

#ifndef PLAYER_CHART_H
#define PLAYER_CHART_H
#include "gui/gtl_gui_record_chart.h"
#include "gtl_gui_player_chart_range.h"
#include "gui/player/gtl_gui_player_chart_position.h"
#include "gui_global.h"
namespace gtl
{
namespace gui
{
namespace player
{
class GTL_GUI_EXPORT chart : public gtl::gui::record_chart
{
Q_OBJECT
public:
chart(QWidget* parent = NULL);
~chart();
void save_ranges();
void set_position(qreal time);
virtual void set_file(QString path) override;
private:
QMenu* _ranges_menu;
QAction* _add_range_action;
QAction* _remove_range_action;
std::vector<chart_range*> _ranges;
chart_range* _current_range;
QPoint _popup_point;
chart_position* _position;
private:
virtual void add_instrument(const QPointF &pos) override;
virtual void draw_instrument(const QPointF &pos) override;
chart_range* get_range(QPointF pos);
virtual void contextMenuEvent(QContextMenuEvent *event) override;
void clear_ranges();
void restore_ragnes();
void remove_range(chart_range *range);
chart_range* add_range();
void leaveEvent(QEvent *event) override;
private slots:
void add_new_range();
void remove_current_range();
};
}
}
}
#endif // PLAYER_CHART_H