render merged layers cache

This commit is contained in:
2019-04-25 11:33:59 +02:00
parent 5a1f6e48ce
commit 2da84ec63d
4 changed files with 597 additions and 255 deletions

View File

@@ -203,29 +203,34 @@ void App::init_sidebar()
layers->on_layer_opacity_changed = [this](Node*, int idx, float value) {
canvas->m_canvas->m_layers[canvas->m_canvas->m_order[idx]]->m_opacity = value;
canvas->m_canvas->m_unsaved = true;
canvas->m_canvas->draw_merge();
title_update();
};
layers->on_layer_visibility_changed = [this](Node*, int idx, bool visible) {
canvas->m_canvas->m_layers[canvas->m_canvas->m_order[idx]]->m_visible = visible;
canvas->m_canvas->m_unsaved = true;
canvas->m_canvas->draw_merge();
title_update();
};
layers->on_layer_alpha_lock_changed = [this](Node*, int idx, bool locked) {
canvas->m_canvas->m_layers[canvas->m_canvas->m_order[idx]]->m_alpha_locked = locked;
canvas->m_canvas->m_unsaved = true;
canvas->m_canvas->draw_merge();
title_update();
};
layers->on_layer_blend_mode_changed = [this](Node*, int idx, int mode) {
canvas->m_canvas->m_layers[canvas->m_canvas->m_order[idx]]->m_blend_mode = mode;
canvas->m_canvas->m_unsaved = true;
canvas->m_canvas->draw_merge();
title_update();
};
layers->on_layer_highlight_changed = [this](Node*, int idx, bool highlight) {
canvas->m_canvas->m_layers[canvas->m_canvas->m_order[idx]]->m_hightlight = highlight;
canvas->m_canvas->draw_merge();
};
if (auto* button = layout[main_id]->find<NodeButtonCustom>("btn-stroke"))
{