2018-02-28 15:04:56 +00:00
|
|
|
#ifndef _WIPE_TOWER_DIALOG_H_
|
|
|
|
#define _WIPE_TOWER_DIALOG_H_
|
|
|
|
|
|
|
|
#include <wx/spinctrl.h>
|
|
|
|
#include <wx/stattext.h>
|
|
|
|
#include <wx/textctrl.h>
|
|
|
|
#include <wx/checkbox.h>
|
|
|
|
#include <wx/choicdlg.h>
|
|
|
|
#include <wx/notebook.h>
|
|
|
|
#include <wx/msgdlg.h>
|
|
|
|
|
|
|
|
#include "../../libslic3r/GCode/WipeTowerPrusaMM.hpp"
|
|
|
|
#include "RammingChart.hpp"
|
|
|
|
|
|
|
|
|
|
|
|
std::ostream& operator<<(std::ostream& str,Slic3r::WipeTowerParameters& par);
|
|
|
|
|
|
|
|
class RammingPanel : public wxPanel {
|
|
|
|
public:
|
2018-03-13 14:54:29 +00:00
|
|
|
RammingPanel(wxWindow* parent);
|
2018-03-15 13:04:12 +00:00
|
|
|
RammingPanel(wxWindow* parent,const std::string& data);
|
|
|
|
std::string get_parameters();
|
2018-02-28 15:04:56 +00:00
|
|
|
|
|
|
|
private:
|
|
|
|
Chart* m_chart = nullptr;
|
|
|
|
wxSpinCtrl* m_widget_volume = nullptr;
|
|
|
|
wxSpinCtrl* m_widget_ramming_line_width_multiplicator = nullptr;
|
|
|
|
wxSpinCtrl* m_widget_ramming_step_multiplicator = nullptr;
|
|
|
|
wxSpinCtrlDouble* m_widget_time = nullptr;
|
2018-03-13 14:54:29 +00:00
|
|
|
int m_ramming_step_multiplicator;
|
|
|
|
int m_ramming_line_width_multiplicator;
|
|
|
|
|
2018-02-28 15:04:56 +00:00
|
|
|
void line_parameters_changed();
|
|
|
|
};
|
|
|
|
|
|
|
|
|
2018-03-13 14:54:29 +00:00
|
|
|
class RammingDialog : public wxDialog {
|
|
|
|
public:
|
2018-03-15 13:04:12 +00:00
|
|
|
RammingDialog(wxWindow* parent,const std::string& parameters);
|
|
|
|
std::string get_parameters() { return m_output_data; }
|
2018-03-13 14:54:29 +00:00
|
|
|
private:
|
|
|
|
RammingPanel* m_panel_ramming = nullptr;
|
2018-03-15 13:04:12 +00:00
|
|
|
std::string m_output_data;
|
2018-03-13 14:54:29 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
2018-02-28 15:04:56 +00:00
|
|
|
|
|
|
|
class WipingPanel : public wxPanel {
|
|
|
|
public:
|
2018-03-16 12:58:58 +00:00
|
|
|
WipingPanel(wxWindow* parent,const std::vector<float>& data);
|
2018-02-28 15:04:56 +00:00
|
|
|
void fill_parameters(Slic3r::WipeTowerParameters& p);
|
|
|
|
|
|
|
|
private:
|
|
|
|
void fill_in_matrix();
|
|
|
|
|
|
|
|
std::vector<wxSpinCtrl*> m_old;
|
|
|
|
std::vector<wxSpinCtrl*> m_new;
|
|
|
|
std::vector<std::vector<wxTextCtrl*>> edit_boxes;
|
|
|
|
wxButton* m_widget_button=nullptr;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2018-03-15 13:04:12 +00:00
|
|
|
class WipingDialog : public wxDialog {
|
2018-02-28 15:04:56 +00:00
|
|
|
public:
|
2018-03-16 12:58:58 +00:00
|
|
|
WipingDialog(wxWindow* parent,const std::vector<float>& init_data);
|
|
|
|
std::vector<float> get_value() const { return m_output_data; }
|
2018-02-28 15:04:56 +00:00
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
WipingPanel* m_panel_wiping = nullptr;
|
2018-03-16 12:58:58 +00:00
|
|
|
std::vector<float> m_output_data;
|
2018-02-28 15:04:56 +00:00
|
|
|
|
|
|
|
std::string read_dialog_values() {
|
|
|
|
Slic3r::WipeTowerParameters p;
|
|
|
|
m_panel_wiping ->fill_parameters(p);
|
2018-03-15 13:04:12 +00:00
|
|
|
//return p.to_string();
|
2018-02-28 15:04:56 +00:00
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // _WIPE_TOWER_DIALOG_H_
|