add buttons to change pen mode
This commit is contained in:
@@ -460,9 +460,49 @@ void App::initLayout()
|
|||||||
canvas->m_canvas->m_layers[canvas->m_canvas->m_order[idx]].m_alpha_locked = visible;
|
canvas->m_canvas->m_layers[canvas->m_canvas->m_order[idx]].m_alpha_locked = visible;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
canvas->m_canvas->layer_add("Default");
|
||||||
|
layers->add_layer("Default");
|
||||||
|
|
||||||
|
static glm::vec4 color_button_normal{.1, .1, .1, 1};
|
||||||
|
static glm::vec4 color_button_hlight{ 1, .0, .0, 1};
|
||||||
if (auto* button = layout[main_id]->find<NodeButton>("btn-pen"))
|
if (auto* button = layout[main_id]->find<NodeButton>("btn-pen"))
|
||||||
{
|
{
|
||||||
button->on_click = [this](Node*) {
|
button->on_click = [this](Node*) {
|
||||||
|
canvas->m_canvas->m_erase = false;
|
||||||
|
layout[main_id]->find<NodeButton>("btn-pen")->set_color(color_button_hlight);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-erase")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-line")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-cam")->set_color(color_button_normal);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
if (auto* button = layout[main_id]->find<NodeButton>("btn-erase"))
|
||||||
|
{
|
||||||
|
button->on_click = [this](Node*) {
|
||||||
|
canvas->m_canvas->m_erase = true;
|
||||||
|
layout[main_id]->find<NodeButton>("btn-pen")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-erase")->set_color(color_button_hlight);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-line")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-cam")->set_color(color_button_normal);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
if (auto* button = layout[main_id]->find<NodeButton>("btn-line"))
|
||||||
|
{
|
||||||
|
button->on_click = [this](Node*) {
|
||||||
|
canvas->m_canvas->m_erase = true;
|
||||||
|
layout[main_id]->find<NodeButton>("btn-pen")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-erase")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-line")->set_color(color_button_hlight);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-cam")->set_color(color_button_normal);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
if (auto* button = layout[main_id]->find<NodeButton>("btn-cam"))
|
||||||
|
{
|
||||||
|
button->on_click = [this](Node*) {
|
||||||
|
canvas->m_canvas->m_erase = true;
|
||||||
|
layout[main_id]->find<NodeButton>("btn-pen")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-erase")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-line")->set_color(color_button_normal);
|
||||||
|
layout[main_id]->find<NodeButton>("btn-cam")->set_color(color_button_hlight);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
if (auto* button = layout[main_id]->find<NodeButtonCustom>("btn-bucket"))
|
if (auto* button = layout[main_id]->find<NodeButtonCustom>("btn-bucket"))
|
||||||
|
|||||||
@@ -665,6 +665,11 @@ public:
|
|||||||
// m_border->parse_attributes(ka, attr);
|
// m_border->parse_attributes(ka, attr);
|
||||||
// m_text->parse_attributes(ka, attr);
|
// m_text->parse_attributes(ka, attr);
|
||||||
}
|
}
|
||||||
|
void set_color(const glm::vec4& c)
|
||||||
|
{
|
||||||
|
color_normal = c;
|
||||||
|
m_border->m_color = color_normal;
|
||||||
|
}
|
||||||
virtual kEventResult handle_event(Event* e) override
|
virtual kEventResult handle_event(Event* e) override
|
||||||
{
|
{
|
||||||
Node::handle_event(e);
|
Node::handle_event(e);
|
||||||
|
|||||||
Reference in New Issue
Block a user