Files
OrcaSlicer/src/slic3r/GUI/FilamentMapDialog.hpp
zhimin.zeng 1ada437979 FIX: enhance filament_map auto manual behavior
1. auto mode dragdrop is not allowed
2. not display filament_map when there is no result in auto mode

jira:none

Change-Id: I0800e0d832e27fe459a17bb1aa829b5e72d0ee8f
(cherry picked from commit 9ee85bef34aaabe7a4cef251f07e77f9af693a2f)
2025-08-24 23:18:11 +08:00

53 lines
1.3 KiB
C++

#ifndef slic3r_FilamentMapDialog_hpp_
#define slic3r_FilamentMapDialog_hpp_
#include "GUI.hpp"
#include <wx/simplebook.h>
#include <wx/dialog.h>
#include <wx/timer.h>
#include <vector>
namespace Slic3r {
class DynamicPrintConfig;
namespace GUI {
class DragDropPanel;
class FilamentMapDialog : public wxDialog
{
public:
FilamentMapDialog(wxWindow *parent,
const DynamicPrintConfig *config,
const std::vector<int> &filament_map,
const std::vector<int> &extruders,
bool is_auto,
bool has_auto_result
);
bool is_auto() const;
const std::vector<int>& get_filament_maps() const { return m_filament_map; }
private:
void on_ok(wxCommandEvent &event);
void on_cancle(wxCommandEvent &event);
void on_auto_radio(wxCommandEvent &event);
void on_manual_radio(wxCommandEvent &event);
private:
wxRadioButton* m_auto_radio;
wxRadioButton* m_manual_radio;
wxBoxSizer * m_extruder_panel_sizer;
DragDropPanel* m_manual_left_panel;
DragDropPanel* m_manual_right_panel;
DragDropPanel* m_auto_left_panel;
DragDropPanel* m_auto_right_panel;
private:
const DynamicPrintConfig* m_config;
std::vector<int> m_filament_map;
bool m_has_auto_result;
};
}} // namespace Slic3r::GUI
#endif /* slic3r_FilamentMapDialog_hpp_ */