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
53c173d01e
[consider merging] avoid a warning on writing cells/files in 'under_construction' mode when there is nothing to update
2025-08-30 21:49:27 +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
0187abfafc
[consider merging] Bugfix: internal error when trying to replace a shape in a standalone Shapes collection while preserving properties
2025-08-30 19:37:12 +02:00
Matthias Koefferlein
7f7a5bd3ac
Bugfix: properly integrating newborn plugins
2025-08-30 18:55:16 +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
90e25a7b75
WIP: debugging and polishing editor options pages interface for plugins
2025-08-27 00:12:55 +02:00
Matthias Koefferlein
c5d5557072
WIP: debugging config page setup in plugins
2025-08-26 22:36:48 +02:00
Matthias Koefferlein
88178fabd9
[consider merging] Bugfix on Plugin registration
...
This bug happened when a plugin package was installed. In
this case, the plugin was installed dynamically. The effect
was for example that the grid in a view became invisible.
Problem was, that the plugin registration re-generated all
plugins from the view, but did not reconfigure them. Hence
the grid had the default setting which was invisible grid.
2025-08-26 21:06:25 +02:00
Matthias Koefferlein
9e0d1d7ea7
WIP: new GSI declarations
2025-08-25 23:06:18 +02:00
Matthias Koefferlein
acfc2aae09
WIP: preparing integration of editor options pages and config pages into plugin API
2025-08-25 00:04:56 +02:00
Matthias Koefferlein
ac9a589d6f
WIP: two convenience methods for plugin API
2025-08-24 22:29:47 +02:00
Matthias Koefferlein
26682c1a38
Trying again to fix Windows builds
2025-08-24 21:54:42 +02:00
Matthias Koefferlein
2806efd803
Trying again to fix Windows builds
2025-08-24 21:43:59 +02:00
Matthias Koefferlein
626f5809bc
Trying to fix Windows builds
2025-08-24 21:22:33 +02:00
Matthias Koefferlein
f55a4824b7
Disabling features that are not used currently.
2025-08-23 23:05:14 +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
91946165fd
Hardening: more consistent handling of current layer index in layer view (was deferred before and getter wasn't getting the latest value sometimes)
2025-08-23 20:36:49 +02:00
Matthias Koefferlein
e1c9de67d8
Adding sample via PCell for Python
2025-08-23 19:39:03 +02:00
Matthias Koefferlein
4821a5d71a
[consider merging] Bugfix on Plugin registration
...
This bug happened when a plugin package was installed. In
this case, the plugin was installed dynamically. The effect
was for example that the grid in a view became invisible.
Problem was, that the plugin registration re-generated all
plugins from the view, but did not reconfigure them. Hence
the grid had the default setting which was invisible grid.
2025-08-23 17:33:11 +02:00
Matthias Koefferlein
d89aae6d97
Properly handling editor hooks on edit layer change - also on via
2025-08-23 16:08:42 +02:00
Matthias Koefferlein
ee89bc43c4
Refactoring of edt services, bug fixes
2025-08-23 00:41:37 +02:00
Matthias Koefferlein
ee0b5e3bd9
[consider merging] fixing a crash on 'show parameter names' in PCell dialog
2025-08-22 23:54:01 +02:00
Matthias Koefferlein
3068c1da29
WIP: introducing grids in vias
2025-08-22 23:46:24 +02:00
Matthias Koefferlein
d77eb32db4
WIP: computation of via size, bug fixes
2025-08-22 23:21:53 +02:00
Matthias Koefferlein
3df715f078
WIP: some debugging
2025-08-21 22:32:22 +02:00
Matthias Koefferlein
59432fb6ed
WIP: some rework, targetting proper use of recent attributes when entering an editor tool
2025-08-21 21:56:15 +02:00
Matthias Koefferlein
9137919894
WIP: Implementing initial via
2025-08-20 23:51:03 +02:00
Matthias Koefferlein
d3d2eda54a
WIP: undo, backspace implementation, bug fixes
2025-08-19 23:12:43 +02:00
Matthias Koefferlein
57cd512bf9
WIP: via up and via down
2025-08-18 23:33:44 +02:00
Matthias Koefferlein
331d16ab7c
WIP: fixing undo, implement layout cleanup
2025-08-18 23:21:18 +02:00
Matthias Koefferlein
39c8e0ca15
WIP: some refactoring, introducing cut layer in via definition
2025-08-18 22:53:45 +02:00
Matthias Koefferlein
33ffa6367f
WIP: updating via cell at the front of a path segment.
2025-08-17 22:54:11 +02:00
Matthias Koefferlein
42d32ecbb7
Some refactoring - putting some methods into db::Cell
2025-08-17 22:53:17 +02:00
Matthias Koefferlein
99462792bb
Fixed a few build warnings.
2025-08-17 22:52:40 +02:00
Matthias Koefferlein
d8e271339e
WIP: some refactoring, vias switch layers now.
2025-08-17 21:50:02 +02:00
Matthias Koefferlein
0da4f694ca
WIP: cleanup of handling of multi-CV cases for editing (use and switch to active CV), reuse previous configuration on switch or use of layer in editor features.
2025-08-17 19:44:59 +02:00
Matthias Koefferlein
a1feb676ee
WIP
2025-08-16 23:01:12 +02:00
Matthias Koefferlein
61ee2305eb
[consider merging] Fixed marker display - don't render error layers, that's more difficult because of font selection etc., use contour for text labels
2025-08-16 22:35:41 +02:00
Matthias Koefferlein
6fdad4649a
WIP
2025-08-16 21:44:41 +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
5d253d3094
WIP
2025-08-16 19:17:58 +02:00
Matthias Koefferlein
0e1ba44eaf
WIP
2025-08-16 18:05:32 +02:00
Matthias Koefferlein
8c53fb934e
Merge branch 'devel' into vias-development
2025-08-16 16:49:36 +02:00
Matthias Koefferlein
491dd3bb26
Basic implementation of the 'layer binding' feature of issie #2116
2025-08-15 22:58:03 +02:00
Matthias Koefferlein
a73aa1115f
Preparations
2025-08-15 21:25:53 +02:00
Matthias Koefferlein
437c48c1fb
Some refactoring (getting rid of an unused attribute)
2025-08-15 17:36:00 +02:00
Matthias Koefferlein
5bd74b73bb
Enhancement: 'select highlighted objects' from properties dialog (object tree context menu)
2025-08-15 17:06:33 +02:00
Matthias Koefferlein
872eaabb75
Enhancement: 'relative' option of properties dialog is persisted now.
2025-08-15 15:24:00 +02:00
Matthias Koefferlein
ef2b164e1a
Bugfix: properly supporting Undo on 'apply technology' (layer properties were cleared)
2025-08-15 15:00:10 +02:00
Matthias Koefferlein
5eb8c760d8
Merge branch 'master' into devel
2025-08-15 14:21:13 +02:00
Matthias Köfferlein
681d7eeb4b
Merge pull request #2118 from KLayout/feature/issue-2110
...
Feature/issue 2110
2025-08-15 14:20:26 +02:00
Matthias Köfferlein
c77fa56768
Merge pull request #2114 from KLayout/bugfix/issue-2111
...
Fixing issue #2111 (internal error on tesselation R extractor)
2025-08-15 14:19:59 +02:00
Matthias Koefferlein
513f87c07f
Reverted drawing of text strings to text plane for cell names as then 'hide texts' would disable them.
2025-08-12 23:38:33 +02:00
Matthias Koefferlein
2e1afc846a
Small bug fixed
2025-08-10 23:33:02 +02:00
Matthias Koefferlein
55171859cf
Fixed display under presence of layer transformations
2025-08-10 21:34:17 +02:00
Matthias Koefferlein
fdb28800f7
Introducing fallback transformation variants for empty layer lists. This allows editing layouts without any layers and only instances.
2025-08-10 21:29:53 +02:00
Matthias Koefferlein
7667932a00
Some adjustments:
...
* Fixed instance marker when the cell is made from empty ones only
* 'fit' will include empty instances
2025-08-10 16:49:51 +02:00
Matthias Koefferlein
bdbf690764
Added some tests
2025-08-10 16:11:57 +02:00
Matthias Koefferlein
0e263ff4d8
Implemented solution for #2110 (small cells and ghost cells)
...
The solution consists of a second path to bounding boxes of
cells - namely "bbox_with_empty". This bounding box is a
(0,0;0,0)-box if the cell is empty. Correspondingly, empty
and ghost cells are displayed as single points. Ghost cells
also behave like hidden cells now.
2025-08-10 15:33:50 +02:00
Matthias Koefferlein
2c873bcbce
WIP
2025-08-10 15:15:50 +02:00
Matthias Koefferlein
0bc904515c
WIP
2025-08-10 15:13:10 +02:00
Matthias Koefferlein
75125b7a85
WIP
2025-08-10 14:34:22 +02:00
Matthias Koefferlein
1c15d851ee
WIP
2025-08-10 13:59:26 +02:00
Matthias Koefferlein
786d231acd
WIP
2025-08-10 13:51:47 +02:00
Matthias Koefferlein
651fc8cbc7
WIP
2025-08-10 13:49:22 +02:00
Matthias Koefferlein
b4bbc26d6a
WIP
2025-08-10 13:43:19 +02:00
Matthias Koefferlein
29cc603466
WIP
2025-08-09 23:54:01 +02:00
Matthias Koefferlein
cb70620ad1
Fixing issue #2111 (internal error on tesselation R extractor)
...
Problem was a runaway triangulation case where outside edges
exist without being segments.
2025-08-09 18:40:24 +02:00
Matthias Koefferlein
6232db33b4
Fixing issue #2112
2025-08-09 00:52:55 +02:00
Matthias Koefferlein
8da28a0f72
Trying to fix issue #2108
2025-08-06 18:57:33 +02:00
Matthias Koefferlein
b60210e076
Python stubs regenerated
2025-08-05 23:28:17 +02:00
Matthias Koefferlein
7ac32cec0b
Removing debug code.
2025-08-05 20:58:07 +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
Matthias Koefferlein
4dbc103523
Bugfix: File watcher was dropping files when they were temporarily unavailable
2025-08-04 18:47:39 +02:00
Matthias Koefferlein
f289fa9483
A small enhancement (dbu argument in LayoutToNetlist#evaluate_nets), maybe fixing issues on old Ruby versions
2025-08-03 22:11:59 +02:00
Matthias Koefferlein
b6fba7bb69
Bug fixes, new test details
2025-08-03 21:31:55 +02:00
Matthias Koefferlein
7c0934ec8a
Fixing unit tests after making byte array and strings equal citizens in variants
2025-08-03 20:33:47 +02:00
Matthias Koefferlein
381baf7453
Merge remote-tracking branch 'origin/master' into feature/measurements
2025-08-03 19:53:06 +02:00
Matthias Koefferlein
8a5e83bf5d
Consistently differenting between double and int values as property keys (otherwise there may be a confusing mix present in the property repository)
2025-08-03 19:46:31 +02:00
Matthias Koefferlein
4773bb3227
Added a test for cumulative antenna ratio
2025-08-03 18:00:25 +02:00
Matthias Koefferlein
bade7489d8
Fixing doc
2025-08-03 15:23:49 +02:00
klayoutmatthias
642cbd6831
[consider merging] fixing Qt-less builds
2025-08-03 14:19:02 +02:00
Matthias Koefferlein
c8568e8aed
DRC binding for property computation, filtering
2025-08-03 13:55:14 +02:00
GavinAnderberg
55b58a20cc
Correct typo gsiDeclDbNetlist.cc
...
Corrected a typo that has the docs say the Netlist.read method 'Writes the netlist to the given file'. It now accurately matches the function behavior.
2025-08-02 19:55:31 -04:00
Matthias Koefferlein
2193f28e2a
WIP
2025-08-02 23:38:43 +02:00
Matthias Koefferlein
73681755ed
Rename some functions, DRC binding for 'evaluate_nets'
2025-08-02 23:06:22 +02:00
Matthias Koefferlein
61aa08cd64
Added tests for more features
2025-08-02 22:23:03 +02:00
Matthias Koefferlein
a224c11833
WIP: bugfix
2025-08-02 22:14:53 +02:00
Matthias Koefferlein
c3ba0acc02
Added unit test
2025-08-02 21:43:39 +02:00
Matthias Koefferlein
8151feac56
Some debugging, skipping clusters without shapes on primary layer for example
2025-08-02 21:28:48 +02:00
Matthias Koefferlein
d001f7fa04
Introducing variables to property filters, computation functions, generalizing net function for net measurement
2025-08-02 19:50:11 +02:00
Matthias Koefferlein
e82ebf6733
WIP: measure_net function for LayoutToNetlist
2025-08-02 19:17:23 +02:00
Matthias Koefferlein
8e95f6a8e1
Fixing a few doc issues, updating DRC doc.
2025-08-02 16:19:12 +02:00
Matthias Koefferlein
ffafebcaae
Adding 'merge_props' and 'merged_props' to DRC
2025-08-02 16:12:49 +02:00
Matthias Koefferlein
f9ea9af466
Fixed unit tests
2025-08-02 15:13:23 +02:00
Matthias Koefferlein
d1e1f626c7
WIP (join properties on merge for flat regions)
2025-08-02 13:36:17 +02:00
Matthias Koefferlein
4b79c4c362
Fixing backward compatibility issue with pseudo-labels
...
Problem: pseudo-labels are represented by polygons with
properties. If those get merged onto normal polygons
with "join_properties_on_merge", these are regarded
labels and translated to texts later. We avoid this
by skipping all objects with pseudo-label properties
on region merge in "join_properties_on_merge" mode.
2025-08-01 22:59:38 +02:00
Matthias Koefferlein
786c60a28e
Fixing unit tests
2025-07-31 23:54:55 +02:00
Matthias Koefferlein
37f9feaadd
WIP: joining of properties in deep region
2025-07-31 22:38:48 +02:00
Matthias Koefferlein
653384fce5
WIP
2025-07-31 21:16:35 +02:00
Matthias Koefferlein
b89ff76a84
Fixing issue #2102 (internal error on R extraction)
...
Problem was a conceptual problem: the triangulation for
Hertel-Mehlhorn decomposition must not contain internal
vertexes. So we need a different solution for including
vertex ports.
2025-07-30 23:24:34 +02:00
Matthias Koefferlein
9d4e3c525b
Fixed issue #2100 (wrong coordinates on PEX nodes)
2025-07-29 23:17:54 +02:00
Matthias Koefferlein
1ff6f36076
Shapes#insert(region) now supports properties
2025-07-29 23:10:15 +02:00
Matthias Koefferlein
c0bdc2874a
'put' function is property computation processors
2025-07-29 21:11:34 +02:00
Matthias Koefferlein
792c06b3a2
WIP: unit tests for new features
2025-07-28 23:40:01 +02:00
Matthias Koefferlein
3a612f9b04
WIP: integration of new features
2025-07-28 23:11:21 +02:00
Matthias Koefferlein
8d7919e054
WIP
2025-07-28 22:38:44 +02:00
Matthias Koefferlein
2a50c87969
WIP
2025-07-27 22:49:21 +02:00
Matthias Koefferlein
5b3ce9ff30
[consider merging] tl::Variant now considers byte arrays and strings equivalent for sloppy compare. This is important for Ruby string property keys as they are often kept as byte arrays when not UTF-8 encoded.
2025-07-27 22:15:52 +02:00
Matthias Koefferlein
ede15ffcc0
WIP
2025-07-27 19:48:38 +02:00
Matthias Koefferlein
427ac0ae16
WIP
2025-07-27 17:43:01 +02:00
Matthias Koefferlein
1c1555f31c
Fixed unit tests
2025-07-26 18:25:36 +02:00
Matthias Koefferlein
80276f8799
Refactoring: shape processors now allow modifying properties
2025-07-26 18:09:31 +02:00
Matthias Koefferlein
2369c69f69
Implemented feature request: a method to clear properties on shapes, instances, cells and layout
2025-07-26 15:26:47 +02:00
Matthias Koefferlein
d4e3872142
DRC::def_output: A simple yet useful extension to obtain the output layout and to manipulate it (within limits)
2025-07-21 22:21:33 +02:00
Matthias Koefferlein
cb4511b721
Fixed a pending TODO from issue #1470
2025-07-21 20:56:32 +02:00
Matthias Koefferlein
2d5778a860
'tap': do not consider texts as detecting them requires capturing a large area - which is against performance
2025-07-21 20:40:01 +02:00
Matthias Koefferlein
57025a7f9f
Added fill tests with differen origins and tiled mode
2025-07-19 22:37:38 +02:00
Matthias Koefferlein
e48e030521
Fixing DRC fill in tiled mode - must not use overlapping tiles with shifting origin
2025-07-19 22:30:06 +02:00
Matthias Koefferlein
1a9c12ce18
Merge branch 'master' into devel
2025-07-19 21:27:52 +02:00
Matthias Koefferlein
9d4a578a5e
Merge branch 'bugfix/issue-2088'
2025-07-19 19:00:33 +02:00
Matthias Köfferlein
71202ea9d3
Merge pull request #2098 from KLayout/bugfix/issue-2094
...
Fixing issue #2094 (slow insert into Shapes)
2025-07-19 18:58:04 +02:00
Matthias Köfferlein
ff7d7f20ee
Merge pull request #2089 from KLayout/bugfix/issue-2087
...
Bugfix/issue 2087
2025-07-19 18:57:25 +02:00
Matthias Köfferlein
131f36a4e0
Merge pull request #2084 from KLayout/feature/issue-2044
...
Feature/issue 2044
2025-07-19 18:57:10 +02:00
Matthias Köfferlein
316a58eca5
Merge pull request #2079 from KLayout/bugfix/issue-2075
...
Fixing issue #2075 (strm2oas ignores def net routing wire extensions)
2025-07-19 18:56:35 +02:00
Matthias Koefferlein
4ab64ca5d3
Fixing issue #2094 (slow insert into Shapes)
...
Solution is to use a temporary container instead
of locking (only if needed).
2025-07-19 15:08:09 +02:00
Matthias Koefferlein
e6fa072bee
Fixing 'tap' feature
...
After introducing the "do not select shapes
or instances if they overlap the viewport entirely"
feature, 'tap' was not finding shapes which extended
beyond the view's borders.
This got fixed and for 'tap', such shapes are
considered again.
2025-07-18 23:00:23 +02:00
Matthias Koefferlein
d0b935d9e5
Fixed issue #2088 in reader and writer
...
Reader fix: the reader will not error out duplicate cell
names, but rename the cells.
Writer fix: the writer will uniquify cell names *after*
illegal character substitution.
2025-07-15 22:52:49 +02:00
Matthias Koefferlein
1dc0a56633
Bugfix on layout query
...
The following query did not render the correct box
for top-level objects:
select path_dtrans*shape.dbbox.center,cell_name from shapes on layer 1/0 from instances of .*..
Reason was that "path_dtrans" returned a ICplxTrans for top
level instead of a DCplxTrans object.
2025-07-13 21:42:35 +02:00
Matthias Koefferlein
67994a2f8a
Introducing convenience method ObjectInstPath#cell
2025-07-13 21:27:26 +02:00
Matthias Koefferlein
83913f07bd
Updated documentation
2025-07-13 21:20:37 +02:00
Matthias Koefferlein
87bc1a60e1
Introducing macro attributes and Macro#current
2025-07-13 21:14:53 +02:00
Matthias Koefferlein
cc796317a0
Safeguard against broken code table in OASIS CBLOCKs
2025-07-13 19:31:47 +02:00
Matthias Koefferlein
a6a012beac
Added DRC full scale tests, first is Greyhound with M1 IHP fill
2025-07-12 22:02:44 +02:00
Matthias Koefferlein
e7bc997e9f
Further compressing fill cell arrays in x direction
2025-07-12 14:28:42 +02:00
Matthias Koefferlein
76f7c620f6
[consider merging] Enabling Shapes-based RecursiveShapeIterators for MT-use
...
This fixes a crash when using DRC fill in tiled mode with multiple
threads.
2025-07-12 13:59:06 +02:00
Matthias Koefferlein
70a609e995
[consider merging] Bugfix in polygon rasterizer
2025-07-11 23:57:03 +02:00
Matthias Koefferlein
46f9fba0ab
Generalizing fill tool code
2025-07-11 23:56:40 +02:00