protected void setSelectedLayout(Layout selectedLayout) {
        Layout oldValue = this.selectedLayout;
        this.selectedLayout = selectedLayout;
        this.selectedBuilder = selectedLayout != null ? selectedLayout.getBuilder() : null;
        if (oldValue != null) {
            saveProperties(oldValue);
        }

        injectGraph();
        if (selectedLayout != null) {
            loadProperties(selectedLayout);
        }
        firePropertyChangeEvent(SELECTED_LAYOUT, oldValue, selectedLayout);
    }
@Test
    public void testLocalPropertyReset() throws Exception {
        LayoutModelImpl layoutModel = Utils.newLayoutModel();
        MockLayout layout = new MockLayoutBuilder().buildLayout();
        Assert.assertNotEquals(42.0, layout.getLocalProperty(), 0.0);
        layoutModel.setSelectedLayout(layout);

        Assert.assertEquals(42.0, layout.getLocalProperty(), 0.0);
    }