Implemented a fix for issue #2191 (LIBNAME not saved)

The fix consists of moving that options into the case-specific
options like DBU, instead of having it in the format-specific,
default writer options. So they can be specified on a per-case
basis and taken from the current layout by default.

Specifically:
* SaveLayoutOptions#gds2_libname is deprecated and replaced
  by SaveLayoutOptions#libname
* -ol (buddy tools) is no longer format specific
* The GDS writer takes SaveLayoutOptions#libname, and
  if empty, substitutes by the current libname. As last
  resort, "LIB" is used, because LIBNAME cannot be an
  empty string.
* The libname got removed from the global writer options UI
* In the "Save As" options dialog, it now is part of the global
  options and initialized with the current layout's libname.
This commit is contained in:
Matthias Koefferlein
2025-10-19 13:36:07 +02:00
parent ec5de0ffe8
commit 937e557564
18 changed files with 194 additions and 197 deletions
-1
View File
@@ -319,7 +319,6 @@ LayoutHandle::update_save_options (db::SaveLayoutOptions &options)
}
if (specific_options.get ()) {
decl->initialize_options_from_layout_handle (specific_options.get (), *this);
options.set_options (specific_options.release ());
}
-12
View File
@@ -258,18 +258,6 @@ public:
{
return 0;
}
/**
* @brief Initialize the writer options from a layout handle
*
* The layout handle carries information about meta data read and similar. This
* method gives the plugin a chance to modify the options based on the meta data
* of the layout.
*/
virtual void initialize_options_from_layout_handle (db::FormatSpecificWriterOptions * /*options*/, const lay::LayoutHandle & /*lh*/) const
{
// the default implementation does nothing.
}
};
}