fix indices bug
This commit is contained in:
@@ -197,13 +197,14 @@ void NodePanelLayer::remove_layer(NodeLayer* layer)
|
||||
{
|
||||
auto it = std::find(m_layers.begin(), m_layers.end(), m_current_layer);
|
||||
auto i = m_layers_container->get_child_index(m_current_layer);
|
||||
int old_idx = (int)std::distance(m_layers.begin(), it);
|
||||
m_layers_container->remove_child(m_current_layer);
|
||||
m_layers.erase(it);
|
||||
i = std::min<int>(i, (int)m_layers.size() - 1);
|
||||
m_current_layer = m_layers[i];
|
||||
m_current_layer->m_selected = true;
|
||||
if (on_layer_delete)
|
||||
on_layer_delete(this, (int)std::distance(m_layers.begin(), it));
|
||||
on_layer_delete(this, old_idx);
|
||||
if (on_layer_change)
|
||||
on_layer_change(this, -1, i);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user