From 8d25f3aaafe14631ac13674fb45021acde6bfa32 Mon Sep 17 00:00:00 2001 From: Enrico Turri Date: Tue, 4 Dec 2018 15:17:24 +0100 Subject: [PATCH] Removal of tabs from plater -> fixed no-imgui case --- src/slic3r/GUI/GLGizmo.cpp | 2 +- src/slic3r/GUI/GUI_Preview.cpp | 12 ++++++++++++ src/slic3r/GUI/GUI_Preview.hpp | 4 ++++ src/slic3r/GUI/Plater.cpp | 17 +++++------------ 4 files changed, 22 insertions(+), 13 deletions(-) diff --git a/src/slic3r/GUI/GLGizmo.cpp b/src/slic3r/GUI/GLGizmo.cpp index d228e26411..e38345220c 100644 --- a/src/slic3r/GUI/GLGizmo.cpp +++ b/src/slic3r/GUI/GLGizmo.cpp @@ -2225,7 +2225,7 @@ GLGizmoCutPanel::GLGizmoCutPanel(wxWindow *parent) { enum { MARGIN = 5 }; - auto *sizer = new wxBoxSizer(wxHORIZONTAL); + auto *sizer = new wxBoxSizer(wxHORIZONTAL); auto *label = new wxStaticText(this, wxID_ANY, _(L("Cut object:"))); sizer->Add(label, 0, wxALL | wxALIGN_CENTER, MARGIN); diff --git a/src/slic3r/GUI/GUI_Preview.cpp b/src/slic3r/GUI/GUI_Preview.cpp index b3114e916d..a8ba5ba525 100644 --- a/src/slic3r/GUI/GUI_Preview.cpp +++ b/src/slic3r/GUI/GUI_Preview.cpp @@ -31,6 +31,9 @@ namespace GUI { View3D::View3D(wxWindow* parent, Model* model, DynamicPrintConfig* config, BackgroundSlicingProcess* process) : m_canvas_widget(nullptr) , m_canvas(nullptr) +#if !ENABLE_IMGUI + , m_gizmo_widget(nullptr) +#endif // !ENABLE_IMGUI , m_model(nullptr) , m_config(nullptr) , m_process(nullptr) @@ -70,8 +73,17 @@ bool View3D::init(wxWindow* parent, Model* model, DynamicPrintConfig* config, Ba m_canvas->enable_shader(true); m_canvas->enable_force_zoom_to_bed(true); +#if !ENABLE_IMGUI + m_gizmo_widget = new wxPanel(this, wxID_ANY, wxDefaultPosition, wxDefaultSize); + m_gizmo_widget->SetSizer(new wxBoxSizer(wxVERTICAL)); + m_canvas->set_external_gizmo_widgets_parent(m_gizmo_widget); +#endif // !ENABLE_IMGUI + wxBoxSizer* main_sizer = new wxBoxSizer(wxVERTICAL); main_sizer->Add(m_canvas_widget, 1, wxALL | wxEXPAND, 0); +#if !ENABLE_IMGUI + main_sizer->Add(m_gizmo_widget, 0, wxALL | wxEXPAND, 0); +#endif // !ENABLE_IMGUI SetSizer(main_sizer); SetMinSize(GetSize()); diff --git a/src/slic3r/GUI/GUI_Preview.hpp b/src/slic3r/GUI/GUI_Preview.hpp index bdbcdc83ae..dd2587d52a 100644 --- a/src/slic3r/GUI/GUI_Preview.hpp +++ b/src/slic3r/GUI/GUI_Preview.hpp @@ -35,6 +35,10 @@ class View3D : public wxPanel wxGLCanvas* m_canvas_widget; GLCanvas3D* m_canvas; +#if !ENABLE_IMGUI + wxPanel* m_gizmo_widget; +#endif // !ENABLE_IMGUI + Model* m_model; DynamicPrintConfig* m_config; BackgroundSlicingProcess* m_process; diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index 63209bc962..8a989b5aae 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -929,12 +929,12 @@ struct Plater::priv // EventGuard unbinds the handler in its d-tor. #endif // ENABLE_REMOVE_TABS_FROM_PLATER Sidebar *sidebar; -#if !ENABLE_IMGUI - wxPanel *panel3d; -#endif // not ENABLE_IMGUI #if ENABLE_REMOVE_TABS_FROM_PLATER View3D* view3D; #else +#if !ENABLE_IMGUI + wxPanel *panel3d; +#endif // not ENABLE_IMGUI wxGLCanvas *canvas3Dwidget; // TODO: Use GLCanvas3D when we can GLCanvas3D *canvas3D; #endif // !ENABLE_REMOVE_TABS_FROM_PLATER @@ -1063,17 +1063,13 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame) , guard_on_notebook_changed(notebook, wxEVT_NOTEBOOK_PAGE_CHANGED, &priv::on_notebook_changed, this) #endif // !ENABLE_REMOVE_TABS_FROM_PLATER , sidebar(new Sidebar(q)) -#if ENABLE_IMGUI #if !ENABLE_REMOVE_TABS_FROM_PLATER +#if ENABLE_IMGUI , canvas3Dwidget(GLCanvas3DManager::create_wxglcanvas(notebook)) -#endif // !ENABLE_REMOVE_TABS_FROM_PLATER #else , panel3d(new wxPanel(notebook, wxID_ANY)) -#if !ENABLE_REMOVE_TABS_FROM_PLATER , canvas3Dwidget(GLCanvas3DManager::create_wxglcanvas(panel3d)) -#endif // !ENABLE_REMOVE_TABS_FROM_PLATER #endif // ENABLE_IMGUI -#if !ENABLE_REMOVE_TABS_FROM_PLATER , canvas3D(nullptr) #endif // !ENABLE_REMOVE_TABS_FROM_PLATER , delayed_scene_refresh(false) @@ -1101,12 +1097,8 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame) _3DScene::add_canvas(canvas3Dwidget); this->canvas3D = _3DScene::get_canvas(this->canvas3Dwidget); this->canvas3D->allow_multisample(GLCanvas3DManager::can_multisample()); -#endif // !ENABLE_REMOVE_TABS_FROM_PLATER - #if ENABLE_IMGUI -#if !ENABLE_REMOVE_TABS_FROM_PLATER notebook->AddPage(canvas3Dwidget, _(L("3D"))); -#endif // !ENABLE_REMOVE_TABS_FROM_PLATER #else auto *panel3dsizer = new wxBoxSizer(wxVERTICAL); panel3dsizer->Add(canvas3Dwidget, 1, wxEXPAND); @@ -1119,6 +1111,7 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame) canvas3D->set_external_gizmo_widgets_parent(panel_gizmo_widgets); #endif // ENABLE_IMGUI +#endif // !ENABLE_REMOVE_TABS_FROM_PLATER #if ENABLE_REMOVE_TABS_FROM_PLATER view3D = new View3D(q, &model, config, &background_process);