From 70fa29839e1bdbcf5c7e028f8cac337698408cb3 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Thu, 19 Sep 2019 17:21:31 +0200 Subject: [PATCH] fix floating panels, save ppbr imported --- data/layout.xml | 4 ++-- src/app_layout.cpp | 7 +++++++ src/node_panel_brush.cpp | 1 + src/node_panel_quick.cpp | 1 + 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/data/layout.xml b/data/layout.xml index f4a91d0..220377d 100644 --- a/data/layout.xml +++ b/data/layout.xml @@ -140,7 +140,7 @@ - + @@ -178,7 +178,7 @@ - + diff --git a/src/app_layout.cpp b/src/app_layout.cpp index 5f70062..8f510e4 100644 --- a/src/app_layout.cpp +++ b/src/app_layout.cpp @@ -245,7 +245,10 @@ void App::init_sidebar() if (stroke->m_parent) { if (auto fp = dynamic_cast(stroke->m_parent->m_parent)) + { + stroke->remove_from_parent(); fp->destroy(); + } } layout[main_id]->add_child(stroke); stroke->SetSize(350, glm::max(100.f, screen.y - pos.y - 50.f)); @@ -321,7 +324,10 @@ void App::init_sidebar() if (layers->m_parent) { if (auto fp = dynamic_cast(layers->m_parent->m_parent)) + { + layers->remove_from_parent(); fp->destroy(); + } } layout[main_id]->add_child(layers); auto tick = layout[main_id]->add_child(); @@ -769,6 +775,7 @@ void App::init_menu_tools() fpanel->m_class = NodePanelFloating::kClass::Presets; fpanel->SetHeight(300); fpanel->SetMinHeight(300); + fpanel->SetMinWidth(100); if (!floating_presets) { floating_presets = fpanel->m_container->add_child_ref(); diff --git a/src/node_panel_brush.cpp b/src/node_panel_brush.cpp index 8f6250b..d0032b6 100644 --- a/src/node_panel_brush.cpp +++ b/src/node_panel_brush.cpp @@ -924,6 +924,7 @@ bool NodePanelBrushPreset::import_ppbr(const std::string& path) pb->increment(); } + save(); pb->destroy(); return true; diff --git a/src/node_panel_quick.cpp b/src/node_panel_quick.cpp index cc0b87c..2cc15ae 100644 --- a/src/node_panel_quick.cpp +++ b/src/node_panel_quick.cpp @@ -222,6 +222,7 @@ void NodePanelQuick::handle_button_brush_click(Node* button) tick->m_scale = { 1, 1 }; float hh = popup->m_container->m_children.size() > 10 ? (screen.y - 90.f) : 400.f; + popup->SetWidth(350); popup->SetHeight(glm::max(hh, 400.f)); popup->SetPositioning(YGPositionTypeAbsolute); popup->SetPosition(popup_pos);