test_sdk/gui/gtl_gui_spec_widget.h

59 lines
1.5 KiB
C++

#ifndef GTL_GUI_SPEC_WIDGET_H
#define GTL_GUI_SPEC_WIDGET_H
#include <QWidget>
#include "core/gtl_data_model.h"
#include "core/gtl_selection_data_model.h"
#include "gui/gtl_gui_spec_chart.h"
#include "gui/gtl_gui_meas_widget.h"
#include "gui_global.h"
namespace Ui {
class spec_widget;
}
namespace gtl
{
namespace gui
{
class GTL_GUI_EXPORT spec_widget : public QWidget
{
Q_OBJECT
public:
explicit spec_widget(QWidget *parent, gtl::math::spec::types type, gtl::data_model* model);
~spec_widget();
virtual void save(QDomElement& root_element);
virtual void load(const QDomElement& root_element);
gtl::data_model_node *active_node();
gtl::gui::spgr::widget* create_spgr(QWidget *parent);
gtl::gui::spgr::widget* create_spgr(QWidget *parent, gtl::data_model_node* node);
void set_type(gtl::math::spec::types type);
private:
Ui::spec_widget *ui;
gtl::selection_data_model* _selection_data_model;
gtl::gui::spec_chart* _chart;
gtl::gui::meas_widget* _meas_widget = nullptr;
// QAction* _spectrogramm_action;
// gtl::data_model_node* _popup_node;
void update_parameters();
void toogle_meas(bool enable);
// private slots:
// void spectrogramm();
// void menu_request(const QPoint &pos);
};
}
}
#endif // GTL_GUI_SPEC_WIDGET_H