From 7600eac8a032ab9aea224788fc82a4d3bcd03681 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Tue, 24 Jan 2023 21:14:36 +0100 Subject: [PATCH 1/2] Fixed issue-1259 --- src/laybasic/laybasic/layLayoutViewBase.cc | 2 +- src/laybasic/unit_tests/layLayerProperties.cc | 1 + testdata/ruby/layLayoutView.rb | 15 +++++++++++++++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/laybasic/laybasic/layLayoutViewBase.cc b/src/laybasic/laybasic/layLayoutViewBase.cc index 2da6b200d..99ba21326 100644 --- a/src/laybasic/laybasic/layLayoutViewBase.cc +++ b/src/laybasic/laybasic/layLayoutViewBase.cc @@ -3314,7 +3314,7 @@ LayoutViewBase::create_layout (const std::string &technology, bool add_cellview, { const db::Technology *tech = db::Technologies::instance ()->technology_by_name (technology); - db::Layout *layout = new db::Layout (manager ()); + db::Layout *layout = new db::Layout (m_editable, manager ()); if (tech) { layout->dbu (tech->dbu ()); } diff --git a/src/laybasic/unit_tests/layLayerProperties.cc b/src/laybasic/unit_tests/layLayerProperties.cc index 64180e22c..f6175a348 100644 --- a/src/laybasic/unit_tests/layLayerProperties.cc +++ b/src/laybasic/unit_tests/layLayerProperties.cc @@ -1309,6 +1309,7 @@ TEST (16) int cv1 = view.create_layout ("", true, false); db::Layout &ly1 = view.cellview (cv1)->layout (); + EXPECT_EQ (ly1.is_editable (), is_editable ()); ly1.insert_layer (db::LayerProperties (1, 0)); ly1.insert_layer (db::LayerProperties (2, 0)); diff --git a/testdata/ruby/layLayoutView.rb b/testdata/ruby/layLayoutView.rb index 14b4b621d..9ec0bd57c 100644 --- a/testdata/ruby/layLayoutView.rb +++ b/testdata/ruby/layLayoutView.rb @@ -535,6 +535,21 @@ class LAYLayoutView_TestClass < TestBase end + # issue-1259 + def test_7 + + # standalone layout view + lv = RBA::LayoutView::new(true) + + assert_equal(lv.is_editable, true) + + lv.create_layout(true) + + layout = lv.active_cellview.layout + assert_equal(layout.is_editable, true) + + end + end load("test_epilogue.rb") From 85cc50e2c1ac1523909c675986542d5a1e91919c Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Tue, 24 Jan 2023 21:35:47 +0100 Subject: [PATCH 2/2] Flaw fixed: tech status persisted after last view was closed --- src/lay/lay/layMainWindow.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lay/lay/layMainWindow.cc b/src/lay/lay/layMainWindow.cc index 21b7917b0..be55259cc 100644 --- a/src/lay/lay/layMainWindow.cc +++ b/src/lay/lay/layMainWindow.cc @@ -2931,6 +2931,7 @@ MainWindow::close_view (int index) // last view closed + lay::LayoutView::set_current (0); current_view_changed (); clear_current_pos ();