test_sdk/gui/gtl_gui_recorder_widget.h

53 lines
1.2 KiB
C++

#ifndef GTL_GUI_RECORDER_WIDGET_H
#define GTL_GUI_RECORDER_WIDGET_H
#include <QWidget>
#include <QDomElement>
#include <QLabel>
#include "core/gtl_data_model.h"
#include "core/gtl_selection_data_model.h"
#include "hw/gtl_hw_recorder.h"
#include "gui/gtl_gui_record_chart.h"
#include "gui_global.h"
namespace Ui {
class recorder_widget;
}
namespace gtl
{
namespace gui
{
class GTL_GUI_EXPORT recorder_widget : public QWidget
{
Q_OBJECT
public:
explicit recorder_widget(gtl::data_model* model, QWidget *parent = nullptr);
~recorder_widget();
virtual void save(QDomElement& root_element);
virtual void load(const QDomElement& root_element);
private:
Ui::recorder_widget *ui;
gtl::selection_data_model* _selection_data_model;
gtl::hw::recorder* _recorder;
QLabel *_time_label;
gtl::gui::record_chart *_chart;
private slots:
void set_dir();
void write(bool);
void recording_finished();
void recording_progress(qreal);
};
}
}
#endif // GTL_GUI_RECORDER_WIDGET_H