Commit Graph

914 Commits

Author SHA1 Message Date
Matthias Köfferlein e955e4e987
Merge pull request #2193 from KLayout/feature/issue-2147
Feature/issue 2147
2025-10-21 21:52:55 +02:00
Matthias Köfferlein df261559b0
Merge pull request #2189 from KLayout/feature/issue-2180
Feature/issue 2180
2025-10-21 21:52:41 +02:00
Matthias Köfferlein 0ce335d8cf
Merge pull request #2192 from KLayout/bugfix/issue-2191
Implemented a fix for issue #2191 (LIBNAME not saved)
2025-10-19 19:45:37 +02:00
Matthias Köfferlein b885cf64e7
Merge pull request #2184 from KLayout/bugfix/issue-2169
Fixed issue #2169: adding path to 'python' and 'ruby' subfolders to i…
2025-10-19 19:44:50 +02:00
Matthias Koefferlein 0d09ef6df7 Refinement: do not merge library cells that are already present 2025-10-19 18:34:54 +02:00
Matthias Koefferlein 6d234d4ea5 Merge branch 'master' into feature/issue-2147 2025-10-19 18:20:53 +02:00
Matthias Koefferlein 06aa0c48cd Commit local changes before merge 2025-10-19 18:00:43 +02:00
Matthias Koefferlein c9fde4c3cd Implemented solution for #2147 (merge multiple files into one library)
The complication is auto-load: in case one file changed and needs to
get merge, the whole library needs to be updated. Solution is to do
a rescan of the whole folder in case something has changed there.
2025-10-19 17:47:02 +02:00
Matthias Koefferlein 937e557564 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.
2025-10-19 13:36:07 +02:00
Matthias Koefferlein 19dc5e8edb Implemented a solution for #2180
Implements a new option to show/hide unresolved references
(ghost cells). The option is found in "Display/Cells"
in the Setup dialog and also in the View menu.
2025-10-18 23:40:50 +02:00
Matthias Koefferlein 84c76096cb Fixed issue #2169: adding path to 'python' and 'ruby' subfolders to interpreter search path also for technologies, not only for packages. 2025-10-18 15:01:44 +02:00
Matthias Koefferlein 67de518611 'Refresh Libraries' feature in File menu, new GSI method Library#refresh_all (static) 2025-10-11 21:14:56 +02:00
Matthias Koefferlein b3ec482eb8 WIP (also for other issue #2172)
- New virtual method "reload" for Library
- Implementing that for file-based libraries
- Integrating that into "refresh"
- GSI binding for Library#rename, Library#unregister
- Trigger changed event on Library#unregister
- Library#_destroy will unregister the library
- Typos fixed
2025-10-11 16:24:25 +02:00
Matthias Koefferlein de72b05334 Moving code around so that laybasic can again be host for Plugin class - this enables putting that into the Python module without having Qt. 2025-09-24 23:17:43 +02:00
Matthias Koefferlein 97b6d82358 Moving lay.ButtonState, KeyCode and Cursor to Qt-less space again 2025-09-24 22:28:07 +02:00
Matthias Koefferlein 8659e165d5 Adjusting one sample 2025-09-10 18:21:59 +02:00
Matthias Koefferlein e2b5c29131 Some refactoring, bug fix 2025-09-08 19:30:07 +02:00
Matthias Koefferlein 20a3dbeaf8 Some refactoring (generalizing edt:: functions, basing move tool on lay::EditorService and support for 'tab' key (calls 'move by') 2025-09-08 18:54:00 +02:00
Matthias Koefferlein 128b1e596c [consider merging] MainWindow should be managed (derived from gsi::ObjectBase) 2025-09-07 21:40:07 +02:00
Matthias Koefferlein 6ada4cb6f9 [consider merging] fixed build without Qt bindings 2025-09-06 13:41:14 +02:00
Matthias Koefferlein 8901359957 Merge branch 'master' into devel 2025-09-06 13:26:11 +02:00
Matthias Koefferlein 3b86448a0a Fixed issue #2133 (crash in editor search&replace) 2025-09-04 21:36:54 +02:00
Matthias Koefferlein 128f92c427 Doc update 2025-09-04 19:53:36 +02:00
Matthias Koefferlein b3123d385a Updating samples to include focus pages 2025-09-04 19:24:49 +02:00
Matthias Koefferlein b9115fc0a2 WIP: Enhancements to EditorOptionsPages API
- Make RBA::LayoutViewBase derived from Dispatcher, so we can pass LayoutView
  to methods asking for a dispatcher
- For this, the Dispatcher needs to be the first base class of LayoutViewBase
  and gsiDeclLayDispatcher is moved to laybasic
- API for editor options pages and message passing (callbacks)
2025-09-03 00:02:18 +02:00
Matthias Koefferlein 2b04ecb1f7 WIP: experimental - modal editor options pages 2025-09-02 00:45:42 +02:00
Matthias Koefferlein 53a7414757 Merge branch 'master' into devel 2025-08-31 21:53:43 +02:00
Matthias Koefferlein 1e570351fb Refactoring (GSI base class for EditorOptionsPage), preparations for 'focus_page' feature 2025-08-31 20:37:48 +02:00
Matthias Koefferlein e21eb6aafc Typo fixed 2025-08-31 17:52:04 +02:00
Matthias Koefferlein 4d9f924466 Refactoring: providing GSI binding to plugin base class, so the super implementation can be called. 2025-08-31 17:49:13 +02:00
Matthias Koefferlein 57a4984959 WIP: refactoring of heavy Plugin GSI binding functions 2025-08-31 15:50:26 +02:00
Matthias Koefferlein 43454962d4 Improving ruler snapping (after move_transform, snap to objects, visual snap details hint ...) 2025-08-30 23:30:51 +02:00
Matthias Koefferlein 6a9269a9ae [consider merging] Bugfix: internal error when copying while move/copy operation of images and rulers 2025-08-30 21:30:15 +02:00
Matthias Koefferlein 340c1ef6e9 Some refactoring, editor options are shown more consistently now
Specifically, in move mode, now the editor options
are shown too. This makes sense as some of these
options there are also effective in move mode.
2025-08-30 18:39:41 +02:00
Matthias Koefferlein f1c16a0242 Adding samples for new plugin features, doc update. 2025-08-30 14:53:46 +02:00
Matthias Koefferlein e396b6ec29 WIP: bug fixes and more tests 2025-08-30 13:35:01 +02:00
Matthias Koefferlein b133bde1c7 WIP: doc updates 2025-08-30 13:24:30 +02:00
Matthias Koefferlein 7d2113ffe1 Some debugging, tests added 2025-08-30 00:34:35 +02:00
Matthias Koefferlein 3eff75433c WIP 2025-08-29 17:50:03 +02:00
Matthias Koefferlein c77a732875 WIP: more features exposed for plugins (snapping) 2025-08-28 23:38:04 +02:00
Matthias Koefferlein c5d5557072 WIP: debugging config page setup in plugins 2025-08-26 22:36:48 +02:00
Matthias Koefferlein b079398b02 Added an editor hooks example for Ruby 2025-08-23 22:52:42 +02:00
Matthias Koefferlein 972514454b Added a Python sample for editor hooks 2025-08-23 20:54:20 +02:00
Matthias Koefferlein cad905eb63 Ruby via PCell sample 2025-08-23 20:45:08 +02:00
Matthias Koefferlein e2e4c1a827 Via PCell samples 2025-08-23 20:37:35 +02:00
Matthias Koefferlein e1c9de67d8 Adding sample via PCell for Python 2025-08-23 19:39:03 +02:00
Matthias Koefferlein 99462792bb Fixed a few build warnings. 2025-08-17 22:52:40 +02:00
Matthias Koefferlein a4f3d9a33b [consider merging] More robust reading of session files and image strings 2025-08-16 20:01:32 +02:00
Matthias Koefferlein 872eaabb75 Enhancement: 'relative' option of properties dialog is persisted now. 2025-08-15 15:24:00 +02:00
Matthias Koefferlein 847ec03f52 Bugfix: macros will be executed automatically again after package installation. Maybe less restarts needed. 2025-08-05 20:57:38 +02:00