void stacked_widget::finalize(std::vector<builder_grid_const_ptr> widget_builder) { assert(generator_); string_map empty_data; for(const auto & builder : widget_builder) { generator_->create_item(-1, builder, empty_data, nullptr); } swap_grid(nullptr, &get_grid(), generator_, "_content_grid"); select_layer(-1); }
void layer_manager::mouseReleaseEvent(QMouseEvent* e) { if (e->button() == Qt::LeftButton) { if ((e->modifiers() & Qt::ControlModifier) == 0) { auto layers = findChildren<layer_image*>(); foreach (auto item, layers) item->set_selected(false); } auto layer = qobject_cast<layer_image*>(childAt(e->pos())); if (layer) select_layer(layer, !layer->selected()); update(); }