fix popup menu on_select event

This commit is contained in:
2019-08-31 15:43:57 +02:00
parent b71abde9d7
commit 3b80386cf8
2 changed files with 13 additions and 2 deletions

View File

@@ -469,7 +469,7 @@ void NodePanelBrushPreset::init()
case 0: // download
break;
case 1: // import
App::I->pick_file({".abr", ".ABR"}, [] (std::string path) {
App::I->pick_file({"abr", "ppbr"}, [] (std::string path) {
std::thread([path] {
BT_SetTerminate();
App::I->stroke->import_abr(path);

View File

@@ -1,6 +1,7 @@
#include "pch.h"
#include "log.h"
#include "node_popup_menu.h"
#include "node_button_custom.h"
Node* NodePopupMenu::clone_instantiate() const
{
@@ -9,11 +10,11 @@ Node* NodePopupMenu::clone_instantiate() const
void NodePopupMenu::init()
{
m_flood_events = true;
SetPosition(0, 0);
SetWidth(100);
SetHeight(500);
SetPositioning(YGPositionTypeAbsolute);
m_flood_events = true;
m_mouse_ignore = false;
m_capture_children = false;
}
@@ -57,4 +58,14 @@ void NodePopupMenu::added(Node* parent)
m_mouse_ignore = false;
m_flood_events = true;
m_capture_children = false;
for (int i = 0; i < m_children.size(); i++)
{
if (auto b = std::dynamic_pointer_cast<NodeButtonCustom>(m_children[i]))
{
b->on_click = [this, i](Node* target) {
if (on_select)
on_select(this, i);
};
}
}
}