Commit Graph

5613 Commits

Author SHA1 Message Date
Matthias Koefferlein 38a3b8305e Fixing issue #1651 (errors when adding polygons with 4 points) - needs some testing 2024-03-23 15:24:18 +01:00
Matthias Koefferlein b4d170fa66 Implemented issue #1656 (Display-->Goto Position dialog should accept + as well as - for number prefixes) 2024-03-23 14:53:34 +01:00
Matthias Koefferlein fe61627b96 Some cleanup 2024-03-23 08:45:38 +01:00
Matthias Koefferlein a79d286f61 Cleanup 2024-03-22 23:27:08 +01:00
Matthias Koefferlein 1874e95d67 Doc update 2024-03-22 23:26:52 +01:00
Matthias Koefferlein 554fff1d23 Added a large test case for soft connections 2024-03-22 22:44:58 +01:00
Matthias Koefferlein 91dae8b471 [consider merging] stray bug: fixed a small issue with error messages on missing resources (redundant 'ERROR') 2024-03-22 22:36:59 +01:00
Matthias Koefferlein f4df6ec4ff Doc updates 2024-03-22 19:04:13 +01:00
Matthias Koefferlein 10cf9c0bb6 More tests 2024-03-21 22:46:05 +01:00
Matthias Koefferlein 917439b84e New testdata, bugfix: considering the case of partial net formation through soft, upward inter-instance connections. Enhanced reporting (report multiple partial nets of the same circuit at different instances) 2024-03-21 21:31:20 +01:00
Matthias Koefferlein 366249645a Another test 2024-03-20 23:37:10 +01:00
Matthias Koefferlein 265b5680de Added soft-connect test for valid layout 2024-03-20 23:29:25 +01:00
Matthias Koefferlein 400becb6b6 Bugfix: proper handling of soft-connected instance connectors 2024-03-20 02:03:53 +01:00
Matthias Koefferlein a0122f49d9 Netlist browser: log tab will be visible also for L2N database now 2024-03-19 23:25:50 +01:00
Matthias Koefferlein 33d8befa1b [consider merging] avoid a segfault when loading a l2n db with '-mn' into KLayout 2024-03-19 21:25:06 +01:00
Matthias Koefferlein a04bcbc9a3 Some refactoring (renaming) 2024-03-19 20:41:42 +01:00
Matthias Koefferlein 92a9b49139 Added images for doc 2024-03-17 23:08:20 +01:00
Matthias Koefferlein 3011e77439 Need to differentiate between non-connected pins and pins with up+down connection - introducing a pin direction mode 2024-03-17 20:42:30 +01:00
Matthias Koefferlein 203a62f0af Place diodes in debug mode for soft connections, but still generate log entries 2024-03-17 20:41:45 +01:00
Matthias Koefferlein 6f48893cdb Enabling special mode (hidden) for generating diodes for soft connections 2024-03-17 20:40:44 +01:00
Matthias Koefferlein c04d468c55 Providing log entries with indents (for details) 2024-03-17 20:40:11 +01:00
Matthias Koefferlein 8984531a8c Small enhancements of netlist browser: multiple items can be selected in log view (for manyfold geometries), highlights are cleared on tab change 2024-03-17 18:36:49 +01:00
Matthias Koefferlein b10cda574c Reporting 2024-03-17 17:39:39 +01:00
Matthias Koefferlein b9baa24d3a Refactoring (split source code file) 2024-03-16 21:56:39 +01:00
Matthias Koefferlein 9ab7a5a84f Soft connection analysis, first algorithm 2024-03-16 21:38:35 +01:00
Matthias Koefferlein db2ae89521 WIP 2024-03-16 19:03:41 +01:00
Matthias Koefferlein 5e95b32ac4 WIP 2024-03-16 00:10:35 +01:00
Matthias Koefferlein 44edd8d26a Added a regression test for netlist extractor with soft connections 2024-03-16 00:02:44 +01:00
Matthias Koefferlein 417309acf1 Added a basic test 2024-03-15 23:15:21 +01:00
Matthias Koefferlein 5fbb57750b WIP 2024-03-15 22:02:57 +01:00
Matthias Koefferlein 92f887c319 WIP 2024-03-14 23:27:06 +01:00
Matthias Koefferlein befbde0f43 WIP 2024-03-14 22:14:20 +01:00
Matthias Koefferlein c4fb287eb7 [consider merging] robustness of cross reference view against temporary loss of xref object reference 2024-03-14 19:36:19 +01:00
Matthias Koefferlein dca287b724 WIP 2024-03-14 01:02:56 +01:00
Matthias Koefferlein 6db937d9df WIP 2024-03-14 00:22:46 +01:00
Matthias Köfferlein fa14afbbf3
Pcell limits (#1654)
* Klayout PyCell integration
-added tl::optional as derivate of std::optional for c++17 and above, reduced
 implementation otherwise
-fixed missing include for c++17 and above
-added range constraints for PCell parameter

Signed-off-by: ThomasZecha <zecha@ihp-microelectronics.com>

* tl::optional now based on internal implementation, added tests and tl::to_string binding

* Refactoring the range into min_value and max_value attributes without action and resolution.

* Integration of feature into PCell framework

* Cleanup and fixed some compile issues

* Cleanup, added tests

* [consider merging] Added pymod distutil_src files to dependencies.

* Updated Python stubs

* User feedback: upon entering an invalid value string into an edit box, do not reset the field

---------

Signed-off-by: ThomasZecha <zecha@ihp-microelectronics.com>
Co-authored-by: ThomasZecha <zecha@ihp-microelectronics.com>
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-03-13 21:50:48 +01:00
Matthias Koefferlein 8de70c742a WIP 2024-03-13 00:25:19 +01:00
Matthias Koefferlein 89c281f87a Integration API into LVS+DRC 2024-03-12 23:24:54 +01:00
Matthias Koefferlein 2d91f7f90c [consider merging] Bugfix: connect_explicit did not accept an array of nets as single argument 2024-03-12 00:08:52 +01:00
Matthias Koefferlein d87e3de436 Merge branch 'lvs-issues' into 1598-support-for-soft-connections 2024-03-11 22:50:51 +01:00
Matthias Koefferlein 59a572344c [consider merging] Bugfix: connect_explicit did not accept an array of nets as single argument 2024-03-11 22:42:33 +01:00
Matthias Koefferlein fd8ca56caf Some tests for Connectivity 2024-03-11 21:14:00 +01:00
Matthias Koefferlein 284a907ffb First steps: equipping the Connectivity object with soft connections 2024-03-10 23:35:56 +01:00
Matthias Koefferlein 7c4133b9e4 Fixed issue #1632 (at least partially): introducing non-const versions of RDB iterators and access methods 2024-03-09 21:54:17 +01:00
Matthias Koefferlein d60583a9b4 Robustness of tests 2024-03-09 18:46:45 +01:00
Matthias Köfferlein 230bacf725
Merge pull request #1601 from KLayout/drc-procs-and-filters
Region/Edges/EdgePairs/Texts operators and filters
2024-03-09 18:10:37 +01:00
Matthias Köfferlein 408a30164e
Maybe fixing weird menu texts (issue #1631) (#1634)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-03-09 09:36:08 +01:00
Matthias Koefferlein 8886c152be Changing location of test file so we don't spoil WebDAV tests from previous versions 2024-03-09 09:35:24 +01:00
Matthias Koefferlein d906f870b0 Warning level was ignored for some warnings in LEF/DEF reader 2024-03-09 01:22:32 +01:00
Matthias Koefferlein a92029b722 Merge branch 'master' into drc-procs-and-filters 2024-03-09 01:21:56 +01:00
Matthias Koefferlein 30df7a708e Merge branch 'master' into wip 2024-03-09 01:18:43 +01:00
Matthias Koefferlein ffffe7327c Preparing for merge with master 2024-03-09 01:10:34 +01:00
Matthias Koefferlein 1c836de07e Merge branch 'master' into xor-performance 2024-03-09 01:02:07 +01:00
Matthias Koefferlein 45950f20d6 Supporting remote must-connect connections
So far, must-connect connections had to be made
one level up in the hierarchy or promoted further
using labels and such. Now, must-connect connections
can be made at any point up in the hierarchy.
2024-03-09 01:00:52 +01:00
Matthias Koefferlein 856fe4a8d3 LVS: Consider net names identical that differ in signal type suffix only - e.g. 'NET:I' is identical to 'NET' 2024-03-09 00:59:48 +01:00
Matthias Koefferlein 091995a5ff Limit effort spent on analyzing failed matches in LVS compare 2024-03-09 00:59:43 +01:00
Matthias Koefferlein 5597eceece Region#edges: Don't include an polygon to edge processor unless required 2024-03-07 23:03:36 +01:00
Matthias Koefferlein 28e96ee0c3 Added not_... versions of edge modes 2024-03-07 22:29:33 +01:00
Matthias Koefferlein ab5f215417 DRC doc 2024-03-07 22:08:45 +01:00
Matthias Koefferlein 853de5b0ae Introducing edge modes for DRC 'edges' function - allows easy extraction of convex edges only 2024-03-07 21:51:52 +01:00
Matthias Koefferlein 156f0f4477 More consistent behavior of dots in context of booleans, added tests
dots vs. polygon booleans now work as well.
This includes "&" and "-" and "inside_part", "outside_part"
and the "split_..." versions.
2024-03-07 18:34:12 +01:00
Matthias Koefferlein d505767bf1 Added test for edge interactions with count 2024-03-07 15:30:52 +01:00
Matthias Koefferlein 9d6a6258aa edge merge does not destroy dots now 2024-03-06 22:17:01 +01:00
Matthias Koefferlein 4ecf6a9ce1 Edge vs. dot booleans for edge collections 2024-03-06 21:46:33 +01:00
Matthias Koefferlein fc787b19e3 Flat edge booleans enhancements
- Basic support for dots (only dots-vs.-dots)
- Some shortcuts for efficiency
2024-03-06 18:46:52 +01:00
Matthias Koefferlein 91e68cef02 Fixed a number of issues with edge booleans in deep mode
- andnot was falling back to flat
- "intersections" with second argument empty was delivering wrong results
- output of "intersections" is raw now to preserve dots
- enhanced tests for these cases
2024-03-06 17:39:30 +01:00
Matthias Koefferlein 03b04daa61 texts_as_dots returns raw edges (dots must not be merged) 2024-03-03 23:51:03 +01:00
Matthias Koefferlein f9b4bb13c8 aligning deep and flat edge collections with respect to handling of degenerated edges 2024-03-03 23:24:51 +01:00
Matthias Koefferlein 65ccbabc26 Updating db::Edges tests 2024-03-03 22:58:13 +01:00
Matthias Koefferlein 80b86878b5 Added tests for new edge features 2024-03-03 22:35:39 +01:00
Matthias Koefferlein 8e09dfc016 Edge boolean robustness improvement 2024-03-03 22:35:14 +01:00
Matthias Koefferlein db168d8a55 Considering degenerated edges for partial edge selectors 2024-03-03 22:34:19 +01:00
Matthias Koefferlein 8b6ed7f663 Update of testdata, edge 'outside' needs merged input too. 2024-03-02 21:40:57 +01:00
Matthias Koefferlein c532a3a7e6 WIP 2024-03-02 19:32:51 +01:00
Matthias Koefferlein ebc96d8de4 [consider merging] Bugfix: 'edge outside polygon' now consistently ignores the border of the polygon 2024-03-02 19:32:33 +01:00
Matthias Koefferlein c5433a349a WIP 2024-03-02 17:55:13 +01:00
Matthias Koefferlein 863935d664 WIP 2024-03-02 17:28:09 +01:00
Matthias Koefferlein df3205282d WIP 2024-03-02 16:57:23 +01:00
Matthias Koefferlein 1e323a0421 WIP 2024-03-01 23:32:22 +01:00
Matthias Koefferlein a431f70ad4 Polygon#break, DPolygon#break, SimplPolygon#break, DSimplePolygon#break 2024-02-29 22:57:28 +01:00
Matthias Koefferlein c2187e0bf0 OASIS reader creates layers listed in layer map also if empty 2024-02-29 22:31:23 +01:00
Matthias Koefferlein 26fc81624c Updating tests 2024-02-29 21:45:56 +01:00
Matthias Koefferlein 9548f5109a Implementing automatic .gz support for https and pipe URIs 2024-02-29 21:42:32 +01:00
Matthias Koefferlein 012447c31b Fixed a small flaw: pipe stream did not report source in errors 2024-02-28 22:41:09 +01:00
Matthias Koefferlein f7411b52d2 Fixed a typo in DRC doc of 'corners' 2024-02-21 22:20:20 +01:00
Matthias Koefferlein 4789e2effb Merge tag 'v0.28.17' 2024-02-18 22:30:05 +01:00
Matthias Koefferlein 890b389102 Merge branch 'wip2' 2024-02-18 22:27:17 +01:00
Matthias Koefferlein 8947c9992f Added configuration options for XOR tool to switch between with merge-before and without. 2024-02-17 21:20:52 +01:00
Matthias Koefferlein 5187ddbfc0 Do not insert the same point twice into edge set in EdgeProcessor - this improves performance in the case of manifold intersecions in one point. Also: added edge count API 2024-02-17 21:20:24 +01:00
Matthias Koefferlein 250c23eb97 Update of Python stubs 2024-02-16 15:51:40 +01:00
Matthias Koefferlein 0e15fa0ed2 GSI binding for tech specific grids 2024-02-16 15:21:03 +01:00
Matthias Koefferlein 4ed64fdfa1 GSI binding for tech specific grids 2024-02-16 15:19:32 +01:00
Matthias Koefferlein 1094fd2dd8 Merge branch 'master' into tech-specific-grids 2024-02-16 15:02:52 +01:00
Matthias Köfferlein 859a09bbeb First proposal for feature (#1626)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-15 13:34:26 +01:00
Matthias Köfferlein 0270c5dc19 Issue 1623 (#1624)
* Fixing issue #1623 (Package installation with '-y' from command line does not work for URL or file)

* Another bugfix: package installation with -y from file structure did not work as 'grain.xml' is not added to grain URL

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 16:59:15 +01:00
Matthias Köfferlein b799391ec9
Issue 1623 (#1624)
* Fixing issue #1623 (Package installation with '-y' from command line does not work for URL or file)

* Another bugfix: package installation with -y from file structure did not work as 'grain.xml' is not added to grain URL

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 16:58:09 +01:00
Matthias Koefferlein 1e7bd5b765 Updating Pythong stubs and doc. 2024-02-12 11:36:28 +01:00
Matthias Köfferlein 1eefbf35ad Maybe fixing issue #1619 (crash on Fedora-39 upon initialization) (#1622)
* Maybe fixing issue #1619 (crash on Fedora-39 upon initialization)

* Python 3.6 compatibility

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 08:41:46 +01:00
Matthias Köfferlein 9a94b5f535 Maybe fixing issue #1602 (#1621)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 08:41:40 +01:00
Matthias Köfferlein 0c02976cdd DRC switch to exclude the kissing corner configuration (and more) (#1600)
* Some refactoring, introducing new configuration option for edge pair check core algorithm for zero distance handling.

* Bugfix

* Renaming for clarification of collinear edges vs. distance which is defined otherwise.

* Implemented low-level option for collinear edge handling in Edges and Region

* DRC integration of new features

* Simple test for collinear mode feature

* Updating documentation

* Experiment: extending collinear mode towards 'zero distance'

* DRC 'collinear mode' becomes 'zero distance mode'

With this change, the default implementation for kissing corners
is changed from collinear edges only to touching edges in general.

The original mode can be restored by using:

l1.space(600.nm, DRCZeroDistanceMode::new(RBA::ZeroDistanceMode::IncludeZeroDistanceWhenCollinearAndTouching)).output(103, 0)

* Adding test data

* Fixed unit tests

* Fixed unit test

* Renamed new DRC options to: without_touching_corners and without_touching_edges as this is more consistent

* Fixed GSI binding, so no internal error is thrown when generating the doc

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 08:41:35 +01:00
Matthias Köfferlein cc7622b6b4
Maybe fixing issue #1619 (crash on Fedora-39 upon initialization) (#1622)
* Maybe fixing issue #1619 (crash on Fedora-39 upon initialization)

* Python 3.6 compatibility

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 08:40:39 +01:00
Matthias Köfferlein a4ab59ba6f
Maybe fixing issue #1602 (#1621)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 08:40:23 +01:00
Matthias Köfferlein a1c08c0f89
DRC switch to exclude the kissing corner configuration (and more) (#1600)
* Some refactoring, introducing new configuration option for edge pair check core algorithm for zero distance handling.

* Bugfix

* Renaming for clarification of collinear edges vs. distance which is defined otherwise.

* Implemented low-level option for collinear edge handling in Edges and Region

* DRC integration of new features

* Simple test for collinear mode feature

* Updating documentation

* Experiment: extending collinear mode towards 'zero distance'

* DRC 'collinear mode' becomes 'zero distance mode'

With this change, the default implementation for kissing corners
is changed from collinear edges only to touching edges in general.

The original mode can be restored by using:

l1.space(600.nm, DRCZeroDistanceMode::new(RBA::ZeroDistanceMode::IncludeZeroDistanceWhenCollinearAndTouching)).output(103, 0)

* Adding test data

* Fixed unit tests

* Fixed unit test

* Renamed new DRC options to: without_touching_corners and without_touching_edges as this is more consistent

* Fixed GSI binding, so no internal error is thrown when generating the doc

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 08:40:00 +01:00
Matthias Koefferlein 4a89304152 Merge branch 'master' into wip2 2024-02-11 14:23:47 +01:00
Matthias Koefferlein 2ba48998fd Ported a test framework fix from master branch 2024-02-11 13:58:40 +01:00
Matthias Koefferlein da3e7ab4f7 [consider merging] Removed some debug nonsense 2024-02-11 13:05:57 +01:00
Matthias Koefferlein db7b8d19a8 [consider merging] Removed some debug nonsense 2024-02-11 13:05:37 +01:00
Matthias Köfferlein 26cb2be83e Lefdef all should not map boundary (#1614)
* As suggested by Stefan Thiede: LEF/DEF 'ALL' purpose should not match obs and fill

* Updated unit tests

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:39:28 +01:00
Matthias Köfferlein 97c746fbad
Lefdef all should not map boundary (#1614)
* As suggested by Stefan Thiede: LEF/DEF 'ALL' purpose should not match obs and fill

* Updated unit tests

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:38:53 +01:00
Matthias Köfferlein 4dc5981288 Fixed issue #1592 (DXF reader issue) (#1595)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:38:02 +01:00
Matthias Köfferlein 09dea68e40
Fixed issue #1592 (DXF reader issue) (#1595)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:37:47 +01:00
Matthias Köfferlein 386b5677f2 Fixed issue #1594 (#1596)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:36:56 +01:00
Matthias Köfferlein 3ab442bfc0
Fixed issue #1594 (#1596)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:36:44 +01:00
Matthias Köfferlein bae0870015 Fixed issue #1603 (weird layout of parameters) (#1612)
Also fixed a problem with icons that did not get hidden when visibility was changed.
This fix needed some rework of the layout scheme of PCell parameter pages.

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:36:01 +01:00
Matthias Köfferlein 8d4da8b374
Fixed issue #1603 (weird layout of parameters) (#1612)
Also fixed a problem with icons that did not get hidden when visibility was changed.
This fix needed some rework of the layout scheme of PCell parameter pages.

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:35:36 +01:00
Matthias Köfferlein 51bad461a1 Issue 1608 (#1615)
* Fixed issue #1608 (Device extractor error shape)

* New test data

* Add-on: pressing Esc on the netlist or marker browser clears markers

* Updated test data

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:34:44 +01:00
Matthias Köfferlein f37e37340c
Issue 1608 (#1615)
* Fixed issue #1608 (Device extractor error shape)

* New test data

* Add-on: pressing Esc on the netlist or marker browser clears markers

* Updated test data

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:34:21 +01:00
Matthias Köfferlein 5712c8a85c Issue 1609 (#1613)
* Fixed issue #1609 (Cell.read doesn't read LayoutMetaInfo)

This also includes some more functions:
- Layout#merge_meta_info, Layout#copy_meta_info
- Layout#clear_all_meta_info
- Cell#merge_meta_info, Cell#copy_meta_info

In addition, meta info is merged when importing a layout from
another file (Layout/Import -> Other Layouts into current).

* Meta info support in layout diff (for testing), implemented meta info merge for GDS and OASIS readers with special conflict resolution modes

* Undo support for meta info - this way we do not loose meta info when we delete a cell and undo

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:33:27 +01:00
Matthias Köfferlein df59641cad
Issue 1609 (#1613)
* Fixed issue #1609 (Cell.read doesn't read LayoutMetaInfo)

This also includes some more functions:
- Layout#merge_meta_info, Layout#copy_meta_info
- Layout#clear_all_meta_info
- Cell#merge_meta_info, Cell#copy_meta_info

In addition, meta info is merged when importing a layout from
another file (Layout/Import -> Other Layouts into current).

* Meta info support in layout diff (for testing), implemented meta info merge for GDS and OASIS readers with special conflict resolution modes

* Undo support for meta info - this way we do not loose meta info when we delete a cell and undo

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:32:56 +01:00
Matthias Koefferlein 3d9b665263 [consider merging] bugfix issue #1616 - typo in DRC doc 2024-02-11 10:29:22 +01:00
Matthias Koefferlein 5d74a5e8c6 [consider merging] OASIS Reader: error on duplicate CELLNAMEs 2024-02-11 10:29:18 +01:00
Matthias Koefferlein 58032a5d5a [consider merging] cross-hair cursor should not use selection default line width and styles (halo etc.) 2024-02-11 10:29:15 +01:00
Matthias Koefferlein a0dd7db96e [consider merging] Fixed rendering of color selector buttons on high-DPI screens 2024-02-11 10:29:12 +01:00
Matthias Köfferlein 787d9b481a Fixed issue #1610: leaking reference in Python debugger (#1618)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:29:05 +01:00
Matthias Köfferlein 2be4066856
Fixed issue #1610: leaking reference in Python debugger (#1618)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:27:53 +01:00
Matthias Koefferlein 1e1aa02251 [consider merging] bugfix issue #1616 - typo in DRC doc 2024-02-10 18:48:44 +01:00
Matthias Koefferlein babf799016 [consider merging] OASIS Reader: error on duplicate CELLNAMEs 2024-02-10 18:45:56 +01:00
Matthias Koefferlein aef8161c82 [consider merging] cross-hair cursor should not use selection default line width and styles (halo etc.) 2024-02-05 21:22:47 +01:00
Antony Lee 65e41aa270 Fix tabbing order in "Editor Options / Instance / Array Instance" UI.
Currently, in the Array Instance sub-UI that appears when inserting a new
array instance, trying to use the "tab" key to move through the entry
widgets results in going through them in a strange order (column step x,
column step y, row step y, row step x, dimension columns, dimension
rows).  This patch declares the correct tabbing order for the widgets.
2024-02-04 15:58:37 +01:00
Matthias Koefferlein dd9d2bfddd First proposal for feature 2024-02-03 22:42:21 +01:00
Matthias Koefferlein 1e51cf6901 Fixing Windows installation without path initialization file 2024-01-30 20:26:22 +01:00
Matthias Koefferlein 7a91a4fd42 [consider merging] Fixed rendering of color selector buttons on high-DPI screens 2024-01-30 00:11:30 +01:00
Matthias Koefferlein c4fee2cbc4 Fixed a linker issue 2024-01-28 23:51:37 +01:00
Matthias Koefferlein 7634c77c23 Generalization of polygon rasterizer to DPolygon for higher precision of pixel area values. 2024-01-28 23:18:49 +01:00
Matthias Koefferlein 596c6c0aac Grayscale rasterizer for Region 2024-01-28 22:27:02 +01:00
Matthias Koefferlein 1dbb3917c8 Edge-measure rulers too. 2024-01-28 19:02:51 +01:00
Matthias Koefferlein 9184bef6f8 Transient mode for auto-measure ruler 2024-01-28 18:25:02 +01:00
Matthias Koefferlein c1394eadef Disabled assignment and copy for operators and filter objects 2024-01-28 16:14:53 +01:00
Matthias Koefferlein 8d6125dd74 More processors and tests 2024-01-28 15:57:01 +01:00
Matthias Koefferlein ce88affa67 EdgePairs generic processor 2024-01-26 16:09:01 +01:00
Matthias Koefferlein b7277631c3 Renaming of 'processor' to 'operator' to avoid name clash with EdgeProcessor, added edge operators. 2024-01-26 15:19:44 +01:00
Matthias Koefferlein 1a126ede45 Generic polygon to polygon processors 2024-01-26 13:05:09 +01:00
Matthias Koefferlein 9fbc926d67 Generic filters also for edge pair, edge and text collections 2024-01-26 11:49:15 +01:00
Matthias Koefferlein 2dca4158f2 Some refactoring. 2024-01-26 10:30:03 +01:00
Matthias Koefferlein 0b77ef996b Removed unneccessary code 2024-01-25 23:27:39 +01:00
Matthias Koefferlein b34f539fe1 Generic filter for polygons 2024-01-25 23:10:12 +01:00
Matthias Koefferlein 4b7c117cfd Trying to fix one more unit test 2024-01-25 20:20:31 +01:00
Matthias Koefferlein 4f9effab7e Trying to fix Python 3.6 builds + tests 2024-01-25 13:35:23 +01:00
Matthias Koefferlein 01deb480bf Merge remote-tracking branch 'mine/fix-win-python' 2024-01-24 00:33:34 +01:00
klayoutmatthias ef4cbb045b On Windows, Python needs to have a proper PYTHONHOME, otherwise a warning is issued 2024-01-24 00:30:15 +01:00
Matthias Koefferlein 6ad1f3f73f Fixed a numerical issue leading to an infinite loop on some compilers 2024-01-23 16:31:46 +01:00
Matthias Koefferlein 9a52095dd0 Merge branch 'master' into wip 2024-01-07 17:25:11 +01:00
Matthias Koefferlein 0ae2ed49f8 Merge branch 'master' into wip 2024-01-06 17:28:51 +01:00
Matthias Köfferlein 3143b54bd9
Merge pull request #1588 from KLayout/issue-1586
Implementation of fix for issue #1586
2024-01-06 11:30:36 +01:00
Matthias Koefferlein f26fac58fd Implementation of fix for issue #1586
- the "to_dtrans" now behaves as expected
- the conversion constructors have been generalized by adding a 'dbu' argument
- the conversion constructors now are favoured instead of the to_xxx functions
- some of the to_xxx functions are ill-named and are deprecated
2024-01-05 23:24:50 +01:00
Matthias Koefferlein 88c3d30982 Implemented solution for issue #1583
- new attribute "title" for MainWindow to get and set title
  (includes extrapolation to add dynamic content)
- also added LayoutView#is_dirty for emulation of the
  standard behavior
- plus side effect: LayoutView#synchronous is now readable
2024-01-05 19:40:09 +01:00
Matthias Koefferlein ec7cf786d4 Initial tip dialogs should now appear on same screen than application 2024-01-04 17:02:18 +01:00
Matthias Koefferlein d9f41c1585 Now fixing unit tests for 32bit coordinates :( 2024-01-04 16:43:27 +01:00
Matthias Koefferlein 5e096bd433 Fixing unit tests for 64 bit coordinates 2024-01-04 00:33:21 +01:00
Matthias Koefferlein 38de2d685f Fixed 64bit coordinate mode: numerical stability for DRC and LVS enabling. Main problem is representation of the 'world' box which does not transform properly when going through double. 2024-01-03 01:57:27 +01:00
Matthias Koefferlein 2b4a583f05 Update copyright year 2024-01-01 17:27:59 +01:00
Matthias Koefferlein d248bfddf3 Updating copyright to new year 2024-01-01 17:06:23 +01:00
Matthias Koefferlein 7d74c265e5 Fixing issue #1539 (Misleading description in 'Flatten Cell') 2024-01-01 17:01:50 +01:00
Matthias Koefferlein c09f84919a Skip one test if no private test data 2023-12-29 23:21:08 +01:00
Matthias Koefferlein 36f531685c Fixed a test fail when private test data is not available 2023-12-29 23:18:07 +01:00
Matthias Koefferlein f335ab69af More compatibility with Ruby <2.7 2023-12-29 23:00:06 +01:00
Matthias Koefferlein b37002cf7f Compatibility with Ruby 2.0 2023-12-28 23:39:07 +01:00
Matthias Koefferlein 0b64241e13 Generalizing implementation for more Ruby versions. 2023-12-28 22:42:49 +01:00
Matthias Koefferlein 775c331bae Fixing an unit test 2023-12-28 22:33:47 +01:00
Matthias Koefferlein 6ceb77cf73 Trying to fix the ambiguity issue in Ruby < 3.0 with hash arguments vs. keyword arguments 2023-12-28 21:53:38 +01:00
Matthias Koefferlein 11fbad0104 eliminating some unnamed arguments 2023-12-28 21:35:14 +01:00
Matthias Koefferlein 61d99f9920 Keyword arguments: Doc updates 2023-12-28 20:44:34 +01:00
Matthias Koefferlein e2ba78185c Tests for GSI kwargs, test framework enhanced to print the total number of tests 2023-12-28 19:44:44 +01:00
Matthias Koefferlein f685fe3adf WIP: keyword arguments for expressions 2023-12-28 01:03:21 +01:00
Matthias Koefferlein 4a4db5ea6e [consider merging] Avoids a segfault
This happens when an expression returns a class
object and that is converted to a string.
2023-12-28 00:55:14 +01:00
Matthias Koefferlein 940ef5319a WIP: refinement of Python and Ruby support for keyword arguments. 2023-12-27 22:56:11 +01:00
Matthias Koefferlein 8f9b904d87 WIP: keyword arguments for Ruby 2023-12-27 22:17:39 +01:00
Matthias Koefferlein 702bcbe924 WIP: keyword arguments (for now: Python) + transformation alignment
pya.CplxTrans and pya.Trans are good classes for testing the
ability to resolve arguments through keyword parameters.

Keyword parameters are introduced to substitute positional
arguments.
2023-12-26 23:27:25 +01:00
Matthias Koefferlein b128ffc70b Avoid macro IDE events during update of the recent properties list (that is a problem when script errors are present) 2023-12-23 21:44:06 +01:00
Matthias Koefferlein 2db378b872 Fixed a merge issue 2023-12-23 18:28:56 +01:00
Matthias Koefferlein 92d04d2e15 Fixed some merge issues 2023-12-23 18:25:17 +01:00
Matthias Koefferlein d1695b88af Merge branch 'wip' 2023-12-23 18:05:54 +01:00
Matthias Köfferlein 2c59d4190f
Merge pull request #1570 from KLayout/issue-1569
Implemented solution for issue #1569
2023-12-16 20:29:16 +01:00
Matthias Koefferlein b39f28fcad Removed a duplicate line 2023-12-14 23:16:16 +01:00
Matthias Koefferlein 2a5b019730 Bonus track: 'visibility follows selection' 2023-12-14 23:11:16 +01:00
Matthias Köfferlein 0c0f52ae28
Merge pull request #1568 from KLayout/issue-1565
Issue 1565
2023-12-14 22:17:23 +01:00
Matthias Koefferlein 7bdb1c6cd1 Implemented solution for issue #1569 2023-12-12 23:16:32 +01:00
Matthias Koefferlein 46d868ef95 Fixed issue #1566 (Cannot shrink Marker Browser window) 2023-12-12 00:02:41 +01:00
Matthias Koefferlein 9525cfd1cd Fixed #1565 (quit() raises an error in KLayout Python Console) 2023-12-11 23:55:57 +01:00
Matthias Koefferlein 16766a21f9 Updating python stubs 2023-12-08 22:07:22 +01:00
Matthias Köfferlein f757a0a944
Merge pull request #1564 from KLayout/issue-1563
Issue 1563
2023-12-08 17:44:29 +01:00
Matthias Koefferlein 8ec3805c87 Fixed issue #1563 2023-12-08 17:42:07 +01:00
Matthias Köfferlein 3550d81c6f
Merge pull request #1555 from KLayout/issue-1531
Fixed issue #1531 (DEF format not recognized in symlink): use origina…
2023-12-08 07:26:07 +01:00
Matthias Köfferlein 3533adf8ab
Merge pull request #1554 from KLayout/issue-1549
Fixing issue #1549 (error layer handling in RecursiveShapeIterator)
2023-12-08 07:25:51 +01:00
Matthias Köfferlein b4a74821c4
Merge pull request #1556 from KLayout/issue-1528
Implemented a solution for issue #1528 (LEF WIDTHTABLE)
2023-12-08 07:25:20 +01:00
Matthias Koefferlein 3e114bd69c Fixed doc. 2023-12-08 07:24:46 +01:00
Matthias Koefferlein b6d3f8be93 Added Edge#euclidian_distance 2023-12-07 23:09:04 +01:00
Matthias Koefferlein 787114fee2 Trying to fix CentOS 7 builds (segfault because of late initialization of Mutex) 2023-12-07 21:28:07 +01:00
Matthias Koefferlein 86866e52d3 Fixed part of issue #1559 (not snapping to some diagonals) 2023-12-07 20:48:39 +01:00
Matthias Koefferlein 821b0395b6 Maybe fixing issue #1560 - needs testing 2023-12-07 19:57:14 +01:00
Matthias Koefferlein 293074c2af Enhanced API for environment variable handling 2023-12-07 19:32:19 +01:00
Matthias Koefferlein 04ba7d3040 Some enhancements to package manager dialog: mute an assertion that sometimes happened due to update events, avoid too many requests for running macros after download and specifically avoid them after remove of packages. 2023-12-06 22:29:08 +01:00
Matthias Koefferlein d5f484bf92 Added EdgePair#distance 2023-12-05 22:09:57 +01:00
Matthias Koefferlein ce77909c3f Include proxy in Git configuration
Follows the suggestion from there: https://www.klayout.de/forum/discussion/2404.
Using $KLAYOUT_GIT_HTTP_PROXY so it does not interfere with curl.
2023-12-05 21:33:19 +01:00
Matthias Koefferlein b701390e6a Enabling cheats for edges and (implicit) polygon merges
DRC "cheats" have not been effective on "size"
for example. Also they have not been effective at
all for edges.
2023-12-03 21:50:03 +01:00
Matthias Koefferlein 7b4a5c3878 More consistent behavior of Marker Browser / Scan Shapes
* Scan Shapes Hierarchical will scan from current cell, not all cells
* Marker browser shows markers propertly also in descended mode
* Marker database description of shown in selection box
2023-12-03 17:22:48 +01:00
Matthias Koefferlein ebb35b1f2b Makes macro editor search feature less jumpy 2023-12-03 16:51:53 +01:00
Matthias Koefferlein 1017026362 Implemented a solution for issue #1528 (LEF WIDTHTABLE)
The WIDTHTABLE is evaluated for normal and WRONGDIRECTION.
The first value is taken as min width and as default width.
2023-12-02 22:55:51 +01:00
Matthias Koefferlein caf54bd77b Fixed issue #1531 (DEF format not recognized in symlink): use original path to determine format 2023-12-02 22:10:31 +01:00
Matthias Koefferlein c05f7c8bd9 Fixing issue #1549 (error layer handling in RecursiveShapeIterator) 2023-12-02 19:00:43 +01:00
Matthias Koefferlein 832d29d2e0 Trace all nets: open the layer stack config dialog on the right screen 2023-12-01 22:24:49 +01:00
Matthias Koefferlein a9694b5fb3 Trace all nets: do not trace nets on symbols that are not used in connections 2023-12-01 22:18:29 +01:00
Matthias Koefferlein 3dc3349d88 'Trace all nets': provide a selection dialog for the stack. 2023-12-01 22:02:26 +01:00
Matthias Koefferlein 8da6a131e8 Merge branch 'master' into wip2 2023-11-26 22:19:37 +01:00
Matthias Köfferlein 6c4e082fc1
Merge pull request #1547 from KLayout/issue-1542
Issue 1542 - crash on exit
2023-11-26 22:19:04 +01:00
Matthias Köfferlein 3b83230de0
Merge pull request #1546 from KLayout/issue-1530
Issue 1530 - size-2 tuples for points
2023-11-26 22:18:52 +01:00
Matthias Köfferlein 0e9849c32b
Merge pull request #1545 from KLayout/issue-1535
Issue #1535 - calling str(x) implicitly in RBA and pya
2023-11-26 22:18:33 +01:00
Matthias Koefferlein 5a0b7e9fb5 Trying to fix MSVC builds 2023-11-26 18:51:06 +01:00
Matthias Koefferlein b7d1d22fb2 Fixed Windows builds, enhanced unit test framework with error messages upon exceptions. 2023-11-26 17:04:44 +01:00
Matthias Koefferlein cb1589b2ba Ported upgrade to expressions too 2023-11-26 16:19:09 +01:00
Matthias Koefferlein 0efdbd4ebe Doc updates 2023-11-26 10:32:26 +01:00
Matthias Koefferlein 03c5a29682 Merge branch 'master' into wip2 2023-11-26 09:59:13 +01:00
Matthias Koefferlein 2b93dc2dc7 Implemented implicit constructor from array/tuples also for Ruby 2023-11-26 09:55:29 +01:00
Matthias Koefferlein a95706baaa Tests for implict construction from tuple or list arguments 2023-11-26 09:55:26 +01:00
Matthias Koefferlein b2b950041d [consider merging] Avoids an assertion when using tuples for out vector parameters 2023-11-26 09:55:23 +01:00
Matthias Koefferlein 38d7d34642 [consider merging] Fixed Python Exit Exception - Python test fails were not recognized 2023-11-26 09:55:20 +01:00
Matthias Koefferlein b1ddb702b8 Experimental: implicitly calling constructors from arguments passed tuples or lists for objects - this allows using a (x,y) tuple for Vector or Point arguments 2023-11-26 09:55:15 +01:00
Matthias Koefferlein ef9d73f178 Experimental: calling str(x) implicitly in RBA and pya 2023-11-26 09:28:24 +01:00
Matthias Koefferlein 0ea2610bf4 Reworking technology API a little: providing a way to register a new technology object, clarification of doc 2023-11-25 16:56:56 +01:00
Matthias Koefferlein dd0cfe9b97 Trying to fix issue 2023-11-25 01:00:20 +01:00
Kazunari Sekigawa 267a5ee7b0 Overhauled the build system for MacOS ['Monterey', 'Ventura', 'Sonoma'] to build KLayout-0.28.13 or later with support for libgit2. 2023-11-23 15:13:41 +09:00
Matthias Koefferlein 5961eab84b Regenerating stubs and DRC/LVS doc 2023-11-21 23:10:10 +01:00
Matthias Koefferlein 9565a55a3b Fixed issue #1522 (Changing ruler/annotation from script weirdly interferes with pya.Application.commit_config) 2023-11-19 21:52:29 +01:00
Matthias Koefferlein 8b805d8815 Implemented fix for issue #1527 (Marker Database Browser: add context menu to Info widget) 2023-11-19 21:24:10 +01:00
Matthias Koefferlein 6e589e2bb3 Fixed issue #1533 (KLayout crashing with two consecutive calls of the same LayoutView::show_layout command) 2023-11-19 21:14:32 +01:00
Matthias Koefferlein 1e09bee1b6 Fixed issue #1534 (Layout::dup does not copy properties) 2023-11-19 20:48:44 +01:00
Matthias Koefferlein bc8e1c38f2 Salt package doc update 2023-11-19 10:35:46 +01:00
Matthias Koefferlein 4222de9034 Avoiding one invalid error message 2023-11-19 10:18:37 +01:00
Matthias Koefferlein c9ddfbe4e3 Merge branch 'master' of github.com:KLayout/klayout 2023-11-19 09:06:19 +01:00
Matthias Koefferlein ede16aacfb Do not show two templates for DRC scripts 2023-11-19 01:24:31 +01:00
Matthias Koefferlein b57bfa0f34 More resources enabled for non-Qt builds 2023-11-19 00:24:16 +01:00
Matthias Koefferlein 86c1e6ad2b Some more refactoring 2023-11-19 00:14:46 +01:00
Matthias Koefferlein c2df163b8a Added cell variants to polygon to edge processor 2023-11-18 23:27:20 +01:00
Matthias Koefferlein dd81fda27d Refactoring with the goal to reduce the overhead for variant computation 2023-11-18 21:42:24 +01:00
Matthias Koefferlein b0648e1c45 Experimental: sparse cell variants table 2023-11-18 21:21:00 +01:00
Matthias Koefferlein d0172d57f3 Further optimization/refactoring 2023-11-18 19:12:13 +01:00
Matthias Koefferlein 06afaf8692 Some refactoring 2023-11-18 18:57:08 +01:00
Matthias Koefferlein 877646d959 Debugging sized operator for generic DRC, new tests 2023-11-18 13:40:50 +01:00
Matthias Koefferlein c368710253 Further bug fixes in generic DRC domain 2023-11-18 12:35:34 +01:00
Matthias Koefferlein 37334d40b9 WIP 2023-11-18 11:09:31 +01:00
Matthias Koefferlein 1b01d6e20a First version that works with the test case 2023-11-17 00:21:15 +01:00
Matthias Koefferlein 01b65d3699 WIP 2023-11-17 00:13:20 +01:00
Matthias Koefferlein 795aeba322 WIP 2023-11-17 00:11:59 +01:00
Matthias Koefferlein 284182cf3a Compatibility with libgit <0.28.0 2023-11-12 22:57:40 +01:00
Matthias Koefferlein 80241ae7c2 Compatibility with libgit <0.28.0 2023-11-12 22:31:39 +01:00
Matthias Koefferlein 139723ed5d Enabling db resource for the '-without-qt' case, specifically the default font 2023-11-12 22:25:53 +01:00
Matthias Koefferlein 6d55f6bc7d Trying to improve curl implementation by providing a seek implementation 2023-11-12 22:01:45 +01:00
Matthias Koefferlein 1b1e2f573c Compatibility with Qt 6.6 2023-11-12 00:29:00 +01:00
Matthias Koefferlein a5a7b1d8e4 Merge branch 'wip2' into wip2b 2023-11-11 23:09:10 +01:00
Matthias Koefferlein 969ceb84bb FEATURE: Added Layout#error_layer. 2023-11-11 23:09:05 +01:00
Matthias Koefferlein 647a52dc70 Also enabling LVS for non-qt builds 2023-11-11 21:18:19 +01:00
Matthias Koefferlein 10b1f984a3 Enabling DRC engine also without Qt 2023-11-11 18:41:56 +01:00
Matthias Koefferlein bcec400e09 Fixed a crash with -without-qt: Python appears to need a non-empty application path upon initialization 2023-11-11 10:47:39 +01:00
Matthias Koefferlein c6dc723227 Fixing build issue on some platforms with noqt 2023-11-10 23:36:35 +01:00
klayoutmatthias 170b2829db A little more consistent build script 2023-11-10 00:19:56 +01:00
klayoutmatthias fcfc69529c Fixing a static initialization problem on Windows 2023-11-09 22:03:23 +01:00
Matthias Koefferlein 4a152583e8 Trying to fix a problem on Windows 2023-11-09 21:56:55 +01:00
klayoutmatthias 9161d18711 Allowing tl::rm_file to remove files even if write protected 2023-11-09 21:42:07 +01:00
Matthias Koefferlein 4cda860090 Compatibility with older libgit2 versions 2023-11-09 20:14:28 +01:00
Matthias Koefferlein e4823a8343 Trying to fix an issue on windows with recursive file remove 2023-11-09 19:26:02 +01:00
Matthias Köfferlein 041fb53d04
Merge pull request #1518 from KLayout/git-for-packages
Git for packages
2023-11-07 21:36:01 +01:00
Matthias Köfferlein 5edbc0b03f
Merge pull request #1504 from KLayout/issue-1503
Fixed issue #1503 (Import LEF/DEF - LEF files given in list are ignor…
2023-11-07 21:35:49 +01:00
Matthias Köfferlein 42183efb76
Merge pull request #1502 from KLayout/issue-1499
Fixed issue #1499 (strm2oas: support LAYER <layername> TYPE OVERLAP ;…
2023-11-07 21:35:34 +01:00
Matthias Köfferlein 6a587456e0
Merge pull request #1501 from KLayout/issue-1482
Fixed issue #1482 (strict mode oasis should write the S_CELL_OFFSET i…
2023-11-07 21:35:21 +01:00
Matthias Köfferlein 8d51124fd4
Merge pull request #1491 from KLayout/issue-885
Issue 885
2023-11-07 21:35:04 +01:00
Matthias Koefferlein 4e00a91e91 Debugging git package download 2023-11-05 23:04:48 +01:00
Matthias Koefferlein 08a790d7f7 Proper handling of credential requests in Git client 2023-11-05 22:27:54 +01:00
Matthias Koefferlein 9d589b38f5 Different approach to exclude libgit2 for pymod 2023-11-01 23:41:28 +01:00
Matthias Koefferlein a6a958838d Trying to fix file utils unit test on Windows - cannot remove file when still open? 2023-11-01 21:16:18 +01:00
Matthias Koefferlein 2d2b0f34b3 Maybe fixing Windows implementation 2023-11-01 19:07:04 +01:00
Matthias Koefferlein 0474884a87 Fixed Windows builds 2023-11-01 18:23:15 +01:00
Matthias Koefferlein b78f01387f Generalization of temporary file and directory creation 2023-11-01 18:18:26 +01:00
Matthias Koefferlein 880c8fbb05 Introducing sparse tag for salt mine repo to indicate it is not required to always download package information 2023-10-31 23:31:22 +01:00
Matthias Koefferlein 579bee3b75 Implemented package information cache in package manager 2023-10-31 22:30:52 +01:00
Matthias Koefferlein 82a0ef7791 First git-enabled package manager dialog 2023-10-31 22:05:29 +01:00
Matthias Koefferlein 9b969c25be Enabling progress for Git checkout 2023-10-29 22:22:53 +01:00
Matthias Koefferlein a4df1eb10f Some bug fixing 2023-10-29 21:44:31 +01:00
Matthias Koefferlein 3e34d205e8 Fixed Git parsed URL scheme to align to SVN emulation of GitHub 2023-10-29 20:24:28 +01:00
Matthias Koefferlein e83b3c1477 Trying to avoid package downloads when possible, taking the information from the index 2023-10-29 17:37:11 +01:00
Matthias Koefferlein 6dec3b0348 Using parsed URLs for packages 2023-10-29 16:04:12 +01:00
Matthias Koefferlein bd785279ef A helper class for parsing Salt Grain URLs into protocol, branch, subfolder 2023-10-29 15:30:08 +01:00
Matthias Koefferlein 2ed44e27ad Git support: default checkout strategy to 'force' to support older versions of libgit2 2023-10-28 23:49:50 +02:00
Matthias Koefferlein b56220d36d [consider merging] Functional ut_runner binary also with -without-qt 2023-10-28 23:48:56 +02:00
Matthias Koefferlein ba19b3374a Fixed build issue with old versions of libgit2 2023-10-28 21:54:56 +02:00
Matthias Koefferlein 2e16a1e3e4 Refined solution for git clone: now accepts tags too. 2023-10-28 21:37:58 +02:00
Matthias Koefferlein 2a41b13efd Compatibility with old libgit2 2023-10-25 23:08:20 +02:00
Matthias Koefferlein 73460016c0 Compatibility with old libgit2 2023-10-25 23:03:18 +02:00
Matthias Koefferlein 17fd5e9238 Basic Git client implemented. 2023-10-25 21:57:48 +02:00
Matthias Koefferlein 40bdd63ee4 First integration of libgit2 2023-10-25 00:15:52 +02:00
Matthias Koefferlein b1d8234b61 Trying to fix fails on Windows 2023-10-19 23:03:46 +02:00
Matthias Koefferlein d6728afd5c LEF/DEF - Removing via size from warning message 2023-10-19 22:06:35 +02:00
Matthias Koefferlein 58f609ab0f LEF/DEF: Removing VIA size tagging of upper and lower metals of vias in map file 2023-10-19 22:02:22 +02:00
Matthias Koefferlein 1cf34b0ee9 Merge branch 'wip' of github.com:KLayout/klayout into wip 2023-10-19 21:25:07 +02:00
Matthias Koefferlein 261d0249e8 Merge branch 'wip' 2023-10-19 21:23:07 +02:00
Matthias Koefferlein f76b6eda45 Added option -k for copying the log to a file 2023-10-19 21:02:48 +02:00
Matthias Koefferlein 45f3216530 Fixed issue #1510 (cross hair cursor, with options to enable from menu, color and line style can be configured) 2023-10-19 02:00:31 +02:00
Matthias Koefferlein 67d934194f Added line style selection widget 2023-10-19 01:59:35 +02:00
Matthias Koefferlein f8268746e3 Fixed a typo 2023-10-19 01:58:19 +02:00
Matthias Koefferlein 3c297a28d8 Fixed issue #1512 ('get_image' of LayoutView should also work on inactive views) 2023-10-18 21:21:05 +02:00
Matthias Koefferlein 4bdfcd4549 Fixed issue #1511 (typo) 2023-10-18 20:55:18 +02:00
Matthias Koefferlein ac4b02c53a Fixed interpretation of TYPE OVERLAP, added test 2023-10-17 20:49:37 +02:00
Matthias Koefferlein 7560201dc5 Fixed issue #1503 (Import LEF/DEF - LEF files given in list are ignored for DEF import) 2023-10-06 23:38:04 +02:00
Matthias Koefferlein c62480c49b Fixed issue #1499 (strm2oas: support LAYER <layername> TYPE OVERLAP ; for L-shaped abstracts) 2023-10-06 11:41:16 +02:00
Matthias Koefferlein 53d1491cf1 Fixed issue #1482 (strict mode oasis should write the S_CELL_OFFSET into the CELLNAME table) 2023-10-06 10:54:55 +02:00
Matthias Koefferlein 35832923fa Snapping to grid on partial edit 2023-10-05 23:14:10 +02:00
Matthias Koefferlein 3fbdb065fd Editor option for controlling snapping (snap to grid while moving), more consistent snap behavior, instance snapping 2023-10-05 22:25:30 +02:00
Matthias Koefferlein 99742581c2 WIP (cleanup) 2023-10-03 19:52:49 +02:00
Matthias Koefferlein cc346343fb [consider merging] Avoid a warning about open transaction while moving 2023-10-03 19:52:24 +02:00
Matthias Koefferlein 0a546ef41d WIP 2023-10-02 23:18:36 +02:00
Matthias Koefferlein 1a0d54d2ae Fixed issue #1486 (Some macros are configured to run automatically - when changing reader options) 2023-10-01 20:08:42 +02:00
Matthias Koefferlein 75e3c3131f Fixed issue #1485 (Incorrectly set output cell name if using DRC::cell) 2023-10-01 18:32:36 +02:00
Matthias Koefferlein 2558bdec39 Fixed FinFET example for 2.5d view 2023-10-01 18:08:19 +02:00
Matthias Koefferlein 72278b90ec Added 'top_level' feature to tell LVS to perform in top level mode 2023-09-27 21:45:06 +02:00
Matthias Koefferlein cd5204fdf1 Backwards compatible definition of LogDataEntry#to_s 2023-09-27 21:14:11 +02:00
Matthias Koefferlein 001c2240e2 Highlight error marker from netlist browser 2023-09-26 23:39:46 +02:00
Matthias Koefferlein 883b7e7db8 Fixed category assignement in device extractor 2023-09-26 22:45:13 +02:00
Matthias Koefferlein 30a5954f77 Fixed tests 2023-09-26 22:42:15 +02:00
Matthias Koefferlein b3992ab25c Simplified test code 2023-09-26 22:18:33 +02:00
Matthias Koefferlein e71a4dfb92 Simplified test code 2023-09-26 22:13:19 +02:00
Matthias Koefferlein 5b9087c864 Added LVS tests 2023-09-26 21:58:04 +02:00
Matthias Koefferlein e9eb8e7ebc Using categories for device extractor errors 2023-09-26 21:57:50 +02:00
Matthias Koefferlein 2c88f7753d Bug fix 2023-09-26 21:57:16 +02:00
Matthias Koefferlein 579f5ffca4 Doc updates 2023-09-25 23:33:15 +02:00
Matthias Koefferlein 44d9ae91cc Some bug fixes 2023-09-24 22:43:36 +02:00
Matthias Koefferlein 27f67cf9c2 Added tests 2023-09-24 22:27:23 +02:00
Matthias Koefferlein 2a85ae8e5c Added tests 2023-09-24 21:33:28 +02:00
Matthias Koefferlein 6412c534b8 Updated tests 2023-09-24 19:01:30 +02:00
Matthias Koefferlein 1b4c81ac7b Rework: unifying device extractor logger entries and LayoutToNetlist ones 2023-09-24 18:16:19 +02:00
Matthias Koefferlein a5bee51046 Updated tests 2023-09-24 00:07:50 +02:00
Matthias Koefferlein 439e10c982 Bug fixes 2023-09-23 23:58:43 +02:00
Matthias Koefferlein 1fbb907c5b Fixed some unit tests
The flatten test now reduces pins of subcircuits if they
would connect to the same net internally
2023-09-23 23:47:08 +02:00
Matthias Koefferlein 4d41ca6f5c Fixed tests. Note that now a net with two labels carries a combined net name and does not qualify for connect_implicit if one label matches 2023-09-23 21:44:35 +02:00
Matthias Koefferlein c81388d830 Updated tests 2023-09-23 17:33:44 +02:00
Matthias Koefferlein b09d63e780 Doc update, test updates 2023-09-23 00:57:57 +02:00
Matthias Koefferlein b72dfe34b4 WIP: aligned new implementation better with original one 2023-09-23 00:35:11 +02:00
Matthias Koefferlein 4f3522961e WIP 2023-09-22 23:35:09 +02:00
Matthias Koefferlein e56cdaeaab WIP 2023-09-22 22:59:43 +02:00
Matthias Koefferlein 2f1cbf2e01 WIP 2023-09-22 21:45:34 +02:00
Matthias Koefferlein 1639ffdf34 WIP 2023-09-19 23:42:19 +02:00
Matthias Koefferlein 034a2673d0 Implemented must-connect check 2023-09-19 23:39:02 +02:00
Matthias Koefferlein e7a8569052 WIP: reimplementing connect_implicit on netlist basis 2023-09-19 23:10:51 +02:00
Matthias Koefferlein 033d630992 Log tab now shows max severity of logs 2023-09-17 23:33:47 +02:00
Matthias Koefferlein 2fe611a75c Log model enhanced for extractor messages 2023-09-17 23:21:34 +02:00
Matthias Koefferlein 93c570a6f9 [consider merging] Fixed an unitialized pointer 2023-09-17 22:04:36 +02:00
Matthias Koefferlein 1333856337 WIP 2023-09-17 19:58:22 +02:00
Matthias Koefferlein 7c1fd487d6 [consider merging] Bugfix for LayoutToNetlistReader 2023-09-17 19:58:04 +02:00
Matthias Koefferlein 7126375646 WIP 2023-09-17 19:26:18 +02:00
Matthias Koefferlein 8212b7cefd Updated Python stubs 2023-09-12 07:46:38 +02:00
Matthias Köfferlein 3dff137e9f
Merge pull request #1480 from KLayout/issue-1307
Issue 1307
2023-09-12 07:22:51 +02:00
Matthias Köfferlein 70dcef25ce
Merge pull request #1476 from KLayout/issue-1474
Fixing issue-1474 (throw a FATAL ERROR when multiple cellname have th…
2023-09-12 07:22:37 +02:00
Matthias Koefferlein 5a6b358880 Merge branch 'wip2' into issue-1307 2023-09-12 00:07:32 +02:00
Matthias Koefferlein ddfa64c517 Warnings fixed 2023-09-12 00:02:51 +02:00
Matthias Koefferlein 40948b9e87 Merge branch 'wip2' into issue-1472 2023-09-12 00:01:31 +02:00
Matthias Koefferlein 3870a02a98 Less verbose warnings on joined paths 2023-09-11 23:34:52 +02:00
Matthias Koefferlein b360df16e3 Fixed problem discussed in the form (#2365) - processEvents needed for LayoutView#get_image etc. 2023-09-11 23:04:56 +02:00
Matthias Koefferlein 1e65abb7bf Fixed issue-1307 (partial, UNPLACED component placements render placement if they come with point and orientation) 2023-09-11 21:39:06 +02:00
Matthias Koefferlein 8d2d5bcf47 Fixed more weird paths in issue-1472 2023-09-11 21:16:36 +02:00
Matthias Koefferlein e9429320bb Merge branch 'issue-1472' into wip2 2023-09-11 20:24:15 +02:00
Matthias Koefferlein 50c0ec2738 New test data for LEFDEF parser 2023-09-11 20:08:39 +02:00
Matthias Koefferlein d31a084748 Fixed issue-1477 (Macro IDE: changing the colors does not have an effect) 2023-09-11 01:06:49 +02:00
Matthias Koefferlein 5c0f810006 Also fixed issue #1470 (def pinname VDD.extra1 should be written as VDD TEXT in gds/oasis) 2023-09-10 23:42:30 +02:00
Matthias Koefferlein d52087fab4 Also fix issue-1471 (lef: make warning about 'FOREIGN differs from MACRO name' more informative) 2023-09-10 23:42:26 +02:00
Matthias Koefferlein 9bb8b4e548 Bugfix: PCellDeclarationHelper was not present after 'import * from pya', more modern version of PCell samples 2023-09-10 23:41:51 +02:00
Matthias Koefferlein 109696a1e0 Preventing issues with debugger and PCell parameter dialog - callbacks were issued while a breakpoint was triggered 2023-09-10 23:36:54 +02:00
Matthias Koefferlein 64bcc6bb65 Bugfixed last commit 2023-09-10 22:51:22 +02:00
Matthias Koefferlein 22bab6d6a6 Some refactoring 2023-09-10 22:05:08 +02:00
Matthias Koefferlein b7ee16b63f Performance enhancement for instance sorting - done only on demand 2023-09-10 19:47:43 +02:00
Matthias Koefferlein e2fa88fcfb Progress for CIF reader, avoid duplicate sorting 2023-09-10 16:49:06 +02:00
Matthias Koefferlein 8adc14d22b Fixing issue-1474 (throw a FATAL ERROR when multiple cellname have the same refnum) 2023-09-09 22:13:05 +02:00
Matthias Koefferlein 8e42c7b4e9 Fixed issue-1472 (strm2oas: def path with first/last segment length < halfwidth are read wrong) 2023-09-09 21:28:46 +02:00
Matthias Koefferlein 8312a468ca Fixed issue-1473 (Ignore 'Summarize missing layers' when sending XOR result to other layout) 2023-09-08 00:40:40 +02:00
Matthias Koefferlein c6d7b3e7fc Fixed a issue with the search box on the macro editor: when switching to the replace text box, focus was passed to the text editor instead 2023-09-06 21:30:02 +02:00
Matthias Koefferlein 4d00a19862 Small enhancements for macro editor dialog geometry 2023-09-05 00:56:17 +02:00
Matthias Koefferlein 12f9ad33f4 Some enhancements to package manager
- So not update macros while installing: avoids
  transient error messages
- Offer to autorun macros also after package
  update (so far only on package new installation)
2023-09-05 00:35:49 +02:00
Matthias Koefferlein 3a6fecc71d Bugfix: cleanup after deleting cells in partial mode - no new top cells appear. 2023-09-03 18:09:39 +02:00
Matthias Koefferlein b2ab89214d Better integration of partial mode - for example 'interactive move' now also acts on partial selection 2023-09-03 18:05:34 +02:00
Matthias Koefferlein 10f3380023 Enhancement: 'copy interactive' will maintain selection 2023-09-03 16:14:44 +02:00
Matthias Koefferlein 4a475a7e21 Bugfix: moving a text with a non-centered vertical alignment now uses the right location 2023-09-02 23:47:40 +02:00
Matthias Koefferlein 81e6141245 Fixed issue #1464 - Layout#get_info and Layout#set_info don't segfault on wrong layer index 2023-09-02 19:37:43 +02:00
Matthias Koefferlein 6cc796e4be Fixed issue #1460 - CellRename dialog is larger now initially 2023-09-02 19:29:57 +02:00
Matthias Koefferlein 862f8a5c65 Restored a method which was renamed by mistake 2023-09-02 19:18:43 +02:00
Matthias Koefferlein 470c2acf5a Qt4 compatibility 2023-09-02 19:17:19 +02:00
Matthias Koefferlein bd7f0f3955 Macro editor: provide a 'Tabs' context menu for the tab bar which allows selecting a tab from a list 2023-09-02 01:15:15 +02:00
Matthias Koefferlein 3ddd2046c4 Ignoring __pycache__ directories in macro editor
This feature can be configured by providing a colon-separated list of directory names
to ignore in the $KLAYOUT_IGNORE_MACRO_DIRS env var.
2023-09-02 00:49:53 +02:00
Matthias Koefferlein 3d0bb8516b Non-modal notifications for macro editors too 2023-09-02 00:36:17 +02:00
Matthias Koefferlein c4e57d2bce Don't clear search when switching macro editor pages 2023-09-01 23:16:50 +02:00
Matthias Koefferlein fdf3a67a9e Fixed an issue preventing to run Ruby unit tests from klayout batch mode 2023-08-30 21:49:15 +02:00
Matthias Koefferlein 512183d55c Fixed a documentation error 2023-08-30 21:48:09 +02:00
Matthias Koefferlein 1391bd7219 Enhancement: crash log now is shown in a more reliable way - but less fancy. In addition, a crash log is written 'klayout_crash.log' in the home path and the crash message is printed to error. 2023-08-27 11:29:42 +02:00
Matthias Koefferlein 38f08d3e90 Bugfix: avoid a segfault in the properties dialog 2023-08-27 11:28:20 +02:00
Matthias Koefferlein 695ec041af Enhancement: Allowing to select cells by error markers too (so that PCells with errors can be selected) 2023-08-27 11:27:46 +02:00
Matthias Koefferlein 4e83cab061 Proper Python stack trace in debugger for Python 3.10 2023-08-26 15:44:54 +02:00
Matthias Koefferlein e6c9872ea2 Bugfix: re-run of include-expanded DRC/LVS wasn't working
Reworked include-expansion scheme for DRC/LVS such that
include expansion is done by the interpreter, hence is
also available for re-running the script from the
marker/netlist browser.

This also affects the D25 implementation.
2023-08-25 22:49:54 +02:00
Matthias Koefferlein 304800e4c5 Maybe fixing issue-1465 2023-08-25 20:33:54 +02:00
Matthias Koefferlein 06321cdea7 Bugfix: deep region 'transform' with plain shift was not working properly with scaled instances 2023-08-24 22:55:55 +02:00
Matthias Koefferlein 87fcbbecfa Fixed some includes which where not there 2023-08-23 21:47:06 +02:00
Matthias Koefferlein 5075cad46a Further trying to fix Windows builds 2023-08-23 20:43:58 +02:00
Matthias Koefferlein 8ac4113abc Further trying to fix Windows builds 2023-08-23 20:39:03 +02:00
Matthias Koefferlein 3313f5588e Trying to fix more Windows build issues 2023-08-23 20:33:41 +02:00
Matthias Koefferlein 6027510c19 Fixing Windows build 2023-08-23 00:03:59 +02:00
Matthias Koefferlein 9153763a1c Fixing Windows build - template point<C> and vector<C> are fully inlined and 'to_string' function pointer for SFINAE creates duplicate symboles 2023-08-22 23:27:10 +02:00
Matthias Koefferlein aef2979896 Fixed unit tests 2023-08-20 23:32:12 +02:00
Matthias Koefferlein d01589c26c Fixed a build issue 2023-08-20 22:52:24 +02:00
Matthias Koefferlein 5941ee688a Fixed a build error. 2023-08-20 22:33:06 +02:00
Matthias Koefferlein 4e8c83e7b6 Fixed a build error. 2023-08-20 22:31:45 +02:00
Matthias Koefferlein 2c2fbea94f Some useful aliases for RBA as in-place operators do not really do what they are supposed to in Ruby. 2023-08-20 19:15:08 +02:00
Matthias Koefferlein 83243f06be Triangles: solving a numerical issue 2023-08-20 16:48:58 +02:00
Matthias Koefferlein 1b60adf6c1 WIP 2023-08-20 10:19:11 +02:00
Matthias Koefferlein 5de45000db Triangles: integration into Region processor 2023-08-19 21:50:05 +02:00
Matthias Koefferlein e416c04a1c Triangles: enhanced API 2023-08-19 20:40:15 +02:00
Matthias Koefferlein dfe6699ef9 Triangles: some cleanup 2023-08-19 19:24:56 +02:00
Matthias Koefferlein 18a3c53c2d Triangles: WIP + more tests 2023-08-19 18:56:51 +02:00
Matthias Koefferlein 0a67aa361c Triangles: Added a more complex test case for triangulation and providing a min_length parameter for stopping infinite recursion 2023-08-19 15:25:21 +02:00
Matthias Koefferlein 31caa8a04d Small optimization 2023-08-19 13:29:37 +02:00
Matthias Koefferlein ef7a5a1331 Triangle: some performance optimization 2023-08-19 13:16:19 +02:00
Matthias Koefferlein c6b7908499 Triangles: Memory optimization 2023-08-19 01:55:04 +02:00
Matthias Koefferlein ae3588ab16 Triangles: potential performance improvement in degenerate point set (circle) case. 2023-08-19 01:13:09 +02:00
Matthias Koefferlein 5c46cdfda3 Triangles: Performance improvement 2023-08-19 00:39:31 +02:00
Matthias Koefferlein 2f8144b507 Performance optimization of Triangle insert 2023-08-17 21:50:22 +02:00
Matthias Koefferlein 1e3e918b90 Debugging. 2023-08-17 01:05:15 +02:00
Matthias Koefferlein 5679540c85 Some refactoring 2023-08-16 22:21:49 +02:00
Matthias Koefferlein 2acedfde6f Fixed some compiler warnings 2023-08-16 22:20:25 +02:00
Matthias Koefferlein da1251ada2 Fixed a numerical issue with vprod_sign etc. - was using a too coarse precision value to decide about the sign 2023-08-16 22:19:33 +02:00
Matthias Koefferlein fe90164a8a Fixed some compiler warnings 2023-08-16 22:18:53 +02:00
Matthias Koefferlein 7d07aeb9fa Enhancing unit test framework by LE/LT/GE/GT test functions 2023-08-16 22:17:52 +02:00
Matthias Koefferlein e07d802500 Delaunay refinement, tests etc. 2023-08-16 00:05:46 +02:00
Matthias Koefferlein 26f1219cc5 Triangle: bug fixes 2023-08-15 21:05:08 +02:00
Matthias Koefferlein bfccd24016 Triangles: Better numerical stability 2023-08-15 19:57:11 +02:00
Matthias Koefferlein 7351810e55 WIP 2023-08-15 15:56:15 +02:00
Matthias Koefferlein 512cf604d0 Triangles: new test, bugfix 2023-08-15 15:49:11 +02:00
Matthias Koefferlein 03497f05b8 Triangles: tests fixed 2023-08-15 15:33:17 +02:00
Matthias Koefferlein 6e9eb922a2 Triangles: constrain 2023-08-15 14:55:41 +02:00
Matthias Koefferlein 3cc35ce3ee Triangles: ensure_edge 2023-08-15 14:05:20 +02:00
Matthias Koefferlein a2e91532c4 WIP: remove vertex implemented for triangles 2023-08-13 21:40:09 +02:00
Matthias Koefferlein 576eacd0bf WIP 2023-08-13 21:14:58 +02:00
Matthias Koefferlein 82b49dfb77 WIP 2023-08-13 18:40:24 +02:00
Matthias Koefferlein 88fd5ad8ca WIP 2023-08-13 18:13:33 +02:00
Matthias Koefferlein 745eb9b625 First tests pass for triangles. 2023-08-13 16:37:01 +02:00
Matthias Koefferlein 255f2dd572 WIP 2023-08-12 21:34:45 +02:00
Matthias Koefferlein b710b32fbe WIP 2023-08-12 21:23:00 +02:00
Matthias Koefferlein 1756ddfafa WIP 2023-08-12 20:44:30 +02:00
Matthias Koefferlein 0941bc214c WIP 2023-08-12 20:27:05 +02:00
Matthias Koefferlein f86f56fbb0 WIP 2023-08-12 19:20:02 +02:00
Matthias Koefferlein 789ae93b52 WIP 2023-08-12 18:45:13 +02:00
Matthias Koefferlein a242336834 WIP 2023-08-12 18:30:00 +02:00
Matthias Koefferlein dfa0a0619b WIP 2023-08-12 18:12:44 +02:00
Matthias Koefferlein 14f8c1a61b WIP 2023-08-12 16:21:10 +02:00
Matthias Koefferlein c93e490968 WIP 2023-08-12 15:30:29 +02:00
Matthias Koefferlein 079c4f9760 WIP 2023-08-12 15:13:44 +02:00
Matthias Koefferlein b69cf67c14 WIP 2023-08-12 10:43:57 +02:00
Matthias Koefferlein fa301b0d32 WIP 2023-08-12 10:38:04 +02:00
Matthias Koefferlein 495da3de23 WIP 2023-08-12 00:46:23 +02:00
Matthias Koefferlein 7bf23e7471 Fixed Python module name 2023-08-11 21:48:00 +02:00
Matthias Koefferlein 254015617d Merge branch 'wip' into wip2 2023-08-11 19:17:01 +02:00
Matthias Köfferlein a29bef496a
Merge pull request #1456 from KLayout/issue-1433
Fixed #1433 (def syntax error not captured)
2023-08-08 07:19:06 +02:00
Matthias Koefferlein ef493795cc Updated stubs 2023-08-07 22:42:00 +02:00
Matthias Köfferlein 8edcab0cf7
Merge pull request #1455 from KLayout/wip2
Wip2
2023-08-07 21:59:17 +02:00
Matthias Koefferlein 8241e8347d Merge branch 'master' into wip2 2023-08-07 18:44:35 +02:00
Matthias Koefferlein 534188017c Fixed a problem with the decorated line edits - did not properly handle mouse events 2023-08-07 18:44:05 +02:00
Matthias Koefferlein 4742e255fc Fixes issue #1453: fixed performance issue which was caused by a deep search for texts in transient selection 2023-08-07 18:23:05 +02:00
Matthias Koefferlein 28e0b36155 Fixed Qt6 builds 2023-08-07 17:30:16 +02:00
Matthias Koefferlein 141f7d78cd Hopefully fixing Windows builds 2023-08-07 00:25:01 +02:00
Matthias Köfferlein ce4178aa73
Merge pull request #1451 from KLayout/issue-1307-partial
Fixed part of issue #1307: using pin names for the pin labels in DEF …
2023-08-06 22:16:13 +02:00
Matthias Köfferlein 25ff5b79eb
Merge pull request #1450 from KLayout/issue-1440
Issue 1440
2023-08-06 22:15:59 +02:00
Matthias Köfferlein 112d0843a7
Merge pull request #1443 from KLayout/issue-1441
Fixed issue #1441 (RDB support for text attributes like size, font, h…
2023-08-06 22:15:45 +02:00
Matthias Koefferlein 7daa54e347 Update of LEF/DEF testdata (changed because of different labels and properties) 2023-08-06 19:16:58 +02:00
Matthias Koefferlein 29e1bf9860 Implemented relative margin for shape and instance browser 2023-08-06 10:25:35 +02:00
Matthias Koefferlein 4a51365ef2 Implemented relative marker size for search & replace 2023-08-06 10:02:04 +02:00
Matthias Koefferlein 3642cff120 Implemented relative mode for marker browser config. Can read existing config. 2023-08-05 23:20:46 +02:00
Matthias Koefferlein 3f80d7bbe1 Added lay::Margin object 2023-08-05 22:17:28 +02:00
Matthias Koefferlein 4701f3884e Fixed a DXF reader issue: should not generate degenerated paths for SPLINE entities 2023-08-05 21:40:27 +02:00
Matthias Köfferlein 0cae7b0f93
Merge pull request #1442 from KLayout/issue-1438
Fixed issue #1438 (Provide a configuration option to switch back to o…
2023-08-05 21:09:51 +02:00
Matthias Koefferlein d958d71e2e Fixed unit tests and MSVC build 2023-08-05 21:02:26 +02:00
Matthias Koefferlein 5b7e336b33 Added test for LEF/DEF map file NAME substitute 2023-08-05 01:02:37 +02:00
Matthias Koefferlein 32fdb46649 Allowing PINNAME and LEFPINNAME purposes in LEF/DEF .map files for a more consistent format (avoids the NAME notation) 2023-08-05 00:58:16 +02:00
Matthias Koefferlein cbc9123db4 Mitigate the effect of overriding a globally-defined technology with -nn on the command line by creating tech variants 2023-08-05 00:42:05 +02:00
Matthias Koefferlein f518d1aa1d Added variable/expression interpolation to LEF paths so it is possible use environment variables there. 2023-08-03 23:27:31 +02:00
Matthias Koefferlein 44901f8885 Fixed part of issue #1307: using pin names for the pin labels in DEF importer, generating pin names on pin name property + generating net names on net name property for pin shapes. 2023-08-03 23:03:39 +02:00
Matthias Koefferlein 7d749140f7 Enhancements for macro editor's search and replace: replace single wasn't working properly and now there is find next and previous 2023-08-03 21:35:37 +02:00
Matthias Koefferlein f583d5e3db Fixed a potential segfault of application exit 2023-08-03 19:22:11 +02:00
Matthias Koefferlein 7509e7a18c Fixed a typo 2023-08-03 00:01:44 +02:00
Matthias Koefferlein 2eca865bd8 Added tests for last change 2023-08-02 23:56:51 +02:00
Matthias Koefferlein cfc84252ab DRC/LVS: Fixed a typo + allowing 'report' also for cases without default layout (only 'layout' specs) 2023-08-02 23:47:45 +02:00
Matthias Koefferlein 6bfd2a7368 Fixed warning in case of Qt bindings not being compiled in 2023-08-02 23:27:44 +02:00
Matthias Koefferlein 76a1450f32 Fixed issue #1441 (RDB support for text attributes like size, font, halign/valign) 2023-08-01 22:48:28 +02:00
Matthias Koefferlein bf95e51332 Resolve include-coded lines for DRC/LVS logs in verbose mode 2023-08-01 22:06:46 +02:00
Matthias Koefferlein 476c7156ab Merge branch 'master' into wip2 2023-08-01 21:48:00 +02:00
Matthias Koefferlein 6014ba9fed Fixed issue #1438 (Provide a configuration option to switch back to old-style text selection (at origin only) 2023-08-01 21:40:54 +02:00
Matthias Köfferlein ae3c8c27f6
Merge pull request #1435 from KLayout/issue-1432
Issue 1432
2023-08-01 20:43:31 +02:00
Matthias Köfferlein 12169cb11d
Merge pull request #1436 from KLayout/new-image-constructor
Added Image constructor from PixelBuffer and QImage
2023-08-01 20:43:01 +02:00
Matthias Koefferlein 559c45a585 it's -> its 2023-07-30 14:50:53 +02:00
Matthias Koefferlein 3736b59156 it's -> its 2023-07-30 14:46:58 +02:00
Matthias Koefferlein 2ae01a3e91 Do not duplicate cells+layers on "Duplicate"
See https://www.klayout.de/forum/discussion/2335 for the rationale
2023-07-30 13:50:49 +02:00
Matthias Köfferlein 39fd811d03
Merge pull request #1434 from KLayout/issue-1430
Fixed issue #1430 (Add option to filter out geometric primitives from…
2023-07-30 12:53:31 +02:00
Matthias Köfferlein 9f5b8faf60
Merge pull request #1429 from KLayout/issue-1428
Fixed #1428 (allow XML include files in macros)
2023-07-30 12:52:55 +02:00
Matthias Koefferlein fb84d8b32d Fixed non-Qt builds 2023-07-30 12:51:01 +02:00
Matthias Koefferlein 42baaef031 Fixed #1433 (def syntax error not captured) 2023-07-30 11:40:24 +02:00
Matthias Koefferlein aa4eeebfbb Added Image constructor from PixelBuffer and QImage 2023-07-29 10:34:59 +02:00
Matthias Koefferlein 4f7da687d4 Removed a question comment 2023-07-29 09:50:58 +02:00
Matthias Koefferlein ae48740107 Merge branch 'points-for-marker' into wip2 2023-07-29 09:49:34 +02:00
Matthias Koefferlein 3b9f3eae20 Fixed issue #1432 (strm2oas def ignores path segment) 2023-07-29 02:45:17 +02:00
Matthias Koefferlein 8051e43583 Fixed issue #1430 (Add option to filter out geometric primitives from Marker Database Browser Info widget) 2023-07-29 02:19:57 +02:00
Matthias Koefferlein ad114f6137 Fixed unit tests (error messages now have the message class attached) 2023-07-29 01:13:25 +02:00
Matthias Koefferlein e53d432117 Better support for point-like handles
PCells have been featuring point-like handles but
they suffered some issues because they have been
mapped to degenerated boxes:

- hardly visible
- could be destroyed using partial editing

Now, the database offers points, hence it is
possible to store points explicitly, so no
tricks need to be played to make them visible.

Editing has been implemented to some extent,
so it is possible for example to configure
handles in the properties dialogs.
2023-07-29 01:01:50 +02:00
Matthias Koefferlein 6e4ac71442 WIP 2023-07-28 23:48:34 +02:00
Matthias Koefferlein e766b12c3e Allowing PCell layer parameters without default (-> empty) 2023-07-28 21:52:51 +02:00
Matthias Koefferlein 7ac51337ca Script errors now include the class for better readability in Python, normalizing errors in Python 2023-07-28 21:28:09 +02:00
Matthias Koefferlein a7e648c82b Fixed a doc typo 2023-07-28 21:27:16 +02:00
Matthias Koefferlein 8b44a3ba13 Fixing PCellDeclaration helper (correct use of 'raise' 2023-07-28 21:26:05 +02:00
Matthias Koefferlein 8840a7ac54 Fixed #1428 (allow XML include files in macros) 2023-07-24 23:25:35 +02:00
Matthias Koefferlein 58417d5700 pya: adding hint about disambiuation of methods/properties to Python specific doc. 2023-07-23 18:35:36 +02:00
Matthias Koefferlein 0f47a9e54d Refined solution for #1425 (exact match has priority in find_layers), doc updates 2023-07-23 18:19:21 +02:00
Matthias Koefferlein 393aacbcff Fixed issue #1425: enhancement - allow searching for layers in layouts by name even if they have layer/datatype 2023-07-23 10:05:20 +02:00
Matthias Köfferlein abf2970438
Merge pull request #1423 from KLayout/wip2
Wip2
2023-07-23 09:40:33 +02:00
Matthias Koefferlein 99df15a5ff Update on issue 1422 fix - fixing an array index out of bounds issue; do no use control points for first and last point as splines may not be designed to terminate at those. 2023-07-22 18:14:14 +02:00
Matthias Koefferlein 292892d1ae Some performance enhancement for Python binding 2023-07-15 22:50:29 +02:00
Matthias Koefferlein e965f87f58 Merge branch 'master' into wip 2023-07-15 22:48:53 +02:00
Matthias Koefferlein 35e42a8117 Fixed issue-1422 (DXF file parsing error)
Problem were two spline interpolation issues:
1. wrong stop criterion for recursion
2. wrong implementation of single-point interpolation
2023-07-15 16:05:40 +02:00
Matthias Koefferlein 563f1026e8 Bugfix: tilde expansion wasn't working on layout write 2023-07-15 13:37:07 +02:00
Matthias Koefferlein 0b50d9e87a Performance improvement of DRC in the small layout case (log view overhead reduced) 2023-07-15 12:58:09 +02:00
Matthias Koefferlein b4502d1766 Enhancement: wheel events do no longer change combo box entries 2023-07-15 12:37:31 +02:00
Matthias Koefferlein c831ed15f8 Enhance the selection behavior of partial edit mode: allow selection of edge ends if edges overlap, graphical indicator for selected partial 2023-07-15 00:22:17 +02:00
Matthias Koefferlein 67436d81a5 Add default extension to file names unless one is given 2023-07-14 22:04:38 +02:00
Matthias Koefferlein 7bcbd607b7 Meta infos in GDS2 files do not make old KLayout versions fail always
Only these cases are not supported by old versions:
* Layout-object meta info
* Meta info on top cell (renders an empty layout)
2023-07-11 01:01:43 +02:00
Matthias Koefferlein 2ed27ff937 Preparations for 0.28.10 2023-07-05 18:53:45 +02:00
Matthias Köfferlein 6b1aa882eb
Merge pull request #1412 from KLayout/wip2
Wip2
2023-07-05 18:31:38 +02:00
Matthias Koefferlein 37cf773a70 Introduces a 'greedy hierarchy' mode for DeepShapeStore for special applications (e.g. strmxor) 2023-07-04 07:56:58 +02:00
Matthias Koefferlein 3980476455 Trying to improve deep mode performance by avoiding multiple cell mapping operations due to partial hierarchy transfer. On the cost side, the hierarchy is always duplicated. 2023-07-04 00:19:55 +02:00
Matthias Koefferlein ee19ed06e9 Avoiding segfaults where no manager is present 2023-07-03 22:53:12 +02:00
Matthias Koefferlein ab9a1283b6 Inherit layout's editable mode from LayoutView instead of application (which is not there for Qt-less Python module) 2023-07-03 22:21:43 +02:00
Matthias Koefferlein f28236c694 Fixed #1409 (Text edit issue) 2023-07-03 22:18:55 +02:00
Matthias Koefferlein 01f2868e5d Fixed issue #1407 (clip does not support polygons with holes) 2023-07-02 22:14:13 +02:00
Matthias Koefferlein 07b8362368 Small performance enhancement of cell mapping 2023-06-29 23:09:16 +02:00
Matthias Koefferlein 86bd700aab Made 'time' parameter optional for MainWindow#message 2023-06-26 14:33:38 +02:00
Matthias Koefferlein 6a8d18ed05 Doc update 2023-06-26 14:19:29 +02:00
Matthias Koefferlein 41c5d3f4ff Issue-1397: possible solution 2023-06-13 00:44:42 +02:00
Matthias Koefferlein 3a5ac0d901 Based python stubs on PyPI module now instead of pymod (no Qt dependencies) 2023-06-11 16:47:15 +02:00
Matthias Koefferlein 92e213aaab Preparations for 0.28.9, updated python stubs 2023-06-10 10:17:52 +02:00
Matthias Koefferlein 63f6abf734 Fixed a unit test failing in non-editable mode 2023-06-10 09:17:00 +02:00
Matthias Koefferlein 7f8eeb3a09 Fixed issue #1281 (Layout diff should ignore shape or instance duplicates)
A new option in the diff tool and strmcmp has been added
(-1|--ignore-duplicates in strcmp).
In RBA/pya, the "IgnoreDuplicates" flag has been added.
2023-06-10 09:11:39 +02:00
Matthias Koefferlein 5bcb9e0207 Merge branch 'xor-perf-trial' into wip2 2023-06-09 23:32:14 +02:00
Matthias Koefferlein a0c70a2cc7 Another small optimization of hierarchical processor, makes a small difference 2023-06-09 23:31:39 +02:00
Matthias Koefferlein 0959676b5a Another shortcut for two-input box scanner, but does not make a large difference 2023-06-09 23:26:49 +02:00
Matthias Koefferlein d604003e3f Changing XOR implementation to mapped
The previous implementation for two layouts
was based on the twofold traversal of hierarchies
but that is less efficient than first mapping and
then doing the XOR within the single layout.
2023-06-08 19:03:57 +02:00
Matthias Koefferlein 078258bf09 New branch for XOR performance improvement in deep mode 2023-06-06 23:35:40 +02:00
Matthias Koefferlein 9817f12385 Speedup of hierarchy processor (context computation) in case if deeply hierarchical two-input cases 2023-06-04 09:13:20 +02:00
Matthias Koefferlein 5438b9a82f configuration for debugger scope override 2023-06-03 21:25:30 +02:00
Matthias Koefferlein 2d5c67f74f Allowing DRC decks with only layout inputs (no default input) 2023-06-01 20:28:17 +02:00
Matthias Koefferlein f11500996f New methods: Layout#copy_layer, Layout#move_layer and Layout#clear_layer with shape selector, Shapes#clear with shape selector 2023-05-31 22:49:02 +02:00
Matthias Koefferlein c3bda162cb DRC: Added 'write' method to output channels, enabling GC in profile mode to get a more realistic memory usage picture 2023-05-29 01:44:57 +02:00
Matthias Koefferlein de2ace4be3 GDS2 reader: robustness against some broken files - should not segfault 2023-05-28 23:34:03 +02:00
Matthias Koefferlein c28fd425db DRC bugfix 2023-05-28 23:33:32 +02:00
Matthias Koefferlein 7f3950f582 Fixed DRC profile feature 2023-05-28 23:21:14 +02:00
Matthias Koefferlein 2e33cf1442 Added unit tests for new features 2023-05-28 23:14:07 +02:00
Matthias Koefferlein 78dbabcde1 DRC enhancements: bug fixes 2023-05-28 23:02:16 +02:00
Matthias Koefferlein a582eabc22 DRC: doc updates 2023-05-28 21:57:40 +02:00
Matthias Koefferlein 2882fa42ee DRC: support multiple outputs through 'new_report', 'new_target' 2023-05-28 21:37:47 +02:00
Matthias Koefferlein 2fdbd9f4ea WIP: profile feature 2023-05-28 00:49:12 +02:00
Matthias Koefferlein df9a5e4125 WIP: profile feature in DRC and LVS 2023-05-28 00:13:02 +02:00
Sebastian Goeldi 293590acb0
fix add_meta_info of Layout and Cell 2023-05-25 13:45:46 +02:00
Matthias Köfferlein fa9e7e7c12
Merge pull request #1379 from KLayout/wip2
Wip2
2023-05-23 19:44:49 +02:00
Matthias Koefferlein c1e0b1a40b Small update: code patch for fixing debug output 2023-05-21 21:07:43 +02:00
Matthias Koefferlein 01eeee1b76 WIP: simplification, needs testing 2023-05-21 20:20:46 +02:00
Matthias Koefferlein ca05f59168 WIP: some performance enhancement, but not compatible 2023-05-21 20:02:46 +02:00
Matthias Koefferlein 0400261641 Added testcase for issue-1366 2023-05-20 23:26:20 +02:00
Matthias Koefferlein 44965bf19c Approx 2x performance improvement of issue-1366 testcase due to more efficient filling of scanline queue 2023-05-20 23:10:03 +02:00
Matthias Koefferlein c37be0884c Potential performance fix for issue #1366 2023-05-20 23:10:01 +02:00
Matthias Koefferlein 331bb5aed4 Fixing a performance issue on hole insertion for polygons with many holes 2023-05-20 23:09:57 +02:00
Matthias Koefferlein 53fa78c01f Ruby debugger performance boost
Problem was that the file-to-id cache was cleared
upon calling internal Ruby functions (begin_exec
was triggered). In one test case, the execution
performance improved from 6s/320s (without/with debugger)
to 6s/7s (without/with debugger)
2023-05-18 19:43:44 +02:00
Matthias Koefferlein ba0aaef132 Merge branch 'master' into wip2 2023-05-18 19:00:24 +02:00
Matthias Koefferlein bd33640471 Merge branch 'master' of github.com:KLayout/klayout 2023-05-18 19:00:01 +02:00
Matthias Koefferlein f31efad0ef Removed a duplicate QLayout on the LayoutView 2023-05-18 16:09:06 +02:00
Matthias Koefferlein 3e60aabe7a Fixed issue #1373 (shapes with user properties are skipped from second input of flat region's '+' operator) 2023-05-14 22:48:31 +02:00
Matthias Koefferlein b30837411e Merge branch 'master' into wip2 2023-05-14 18:34:17 +02:00
Matthias Koefferlein 8f25c3470d Small enhancement to 'decompose_convex' with the goal to avoid thin slivers 2023-05-14 18:33:53 +02:00
Matthias Köfferlein ae07629599
Merge pull request #1372 from KLayout/issue-1219
Solved issue #1219: 'close' button works now in macro IDE, printing n…
2023-05-14 00:02:09 +02:00
Matthias Köfferlein 5c55e2736a
Merge pull request #1371 from KLayout/issue-1348
Implemented a solution for issue #1348 (Reload Files popup prevents c…
2023-05-14 00:01:55 +02:00
Matthias Köfferlein 8423616db2
Merge pull request #1370 from KLayout/issue-1324
Implemented fix for issue #1324
2023-05-14 00:01:33 +02:00
Matthias Köfferlein fe0a3dd20e
Merge pull request #1369 from KLayout/issue-1357
Implemented fix for issue #1357 (RBA/pya binding for QObject#findChil…
2023-05-14 00:01:16 +02:00
Matthias Köfferlein 570d1a36f6
Merge pull request #1368 from KLayout/issue-1345
Fixed issue-1345 (feature request: create a def single/mulitpart path…
2023-05-14 00:00:59 +02:00
Matthias Koefferlein 67db8dfc96 Trying to fix Qt4 builds 2023-05-13 19:41:37 +02:00
Matthias Koefferlein d40ed70fb9 Implemented a solution for issue #1348 (Reload Files popup prevents closing KLayout): now the reload notification is shown as a notification bar at the top of the layout view 2023-05-13 18:44:20 +02:00
Matthias Koefferlein 8704fa1b86 Solved issue #1219: 'close' button works now in macro IDE, printing name of macro which is run to avoid confusion between 'run current' and 'run this' 2023-05-13 16:04:42 +02:00
Matthias Koefferlein 33d16a1e28 Implemented fix for issue #1324 2023-05-13 15:34:11 +02:00
Matthias Koefferlein 6c7064fa23 Implemented fix for issue #1357 (RBA/pya binding for QObject#findChildren) 2023-05-13 01:37:41 +02:00
Matthias Köfferlein 7169910607
Merge pull request #1362 from KLayout/issue-1360
Fixed issue #1360 (LayoutViewBase not promoted to LayoutView). Proble…
2023-05-12 23:31:41 +02:00
Matthias Köfferlein 641d2404d2
Merge pull request #1358 from KLayout/wip2
Wip2
2023-05-12 23:31:26 +02:00
Matthias Koefferlein f25d20be20 [bugfix] making 'R', 'L' and 'C' parameters too for the respective Spice elements (beside 'value') 2023-05-11 23:40:20 +02:00
Matthias Koefferlein da52eeb7c3 Fixed text bbox computation under the presence of global view transformations and 'apply text transformation' false 2023-05-11 20:05:28 +02:00
Matthias Koefferlein 424c039b7e More precise testing of edges on mouse hit - without this patch, the selected objects in dense regions are not at the mouse pointer's tip, but somewhat away 2023-05-11 19:03:41 +02:00
Matthias Koefferlein 1422dfb93d Bugfix, text reference made the program assert 2023-05-11 18:57:24 +02:00
Matthias Koefferlein c45d1d70d4 Debugging 2023-05-09 23:16:03 +02:00
Matthias Koefferlein c6f159d720 Adding frame to text display, debugging 2023-05-09 22:36:56 +02:00
Matthias Koefferlein 45394b801a Debugging TextInfo, added tests 2023-05-09 21:37:15 +02:00
Matthias Koefferlein df7311ddf7 Fixed issue #1360 (LayoutViewBase not promoted to LayoutView). Problem was that GSI binding of LayoutView happened before LayoutView was fully constructed. 2023-05-09 20:06:34 +02:00
Matthias Koefferlein 89177b5ffd Fixed a build issue on Qt <5.15 2023-05-09 19:01:16 +02:00
Matthias Koefferlein 0b0f62130c WIP: refactoring, debugging needed 2023-05-07 23:29:02 +02:00
Matthias Koefferlein e8048d6686 WIP: preparations - introducing TextInfo 2023-05-07 19:51:15 +02:00
Matthias Koefferlein 7b4ff5d823 Zoom in/out menu functions now use mouse position for zoom center instead of center (if mouse is inside window) 2023-05-06 21:40:36 +02:00
Matthias Koefferlein 7ff9b4d8e6 [consider merging] more consistent behavior of RBA/pya: enum classes are properly made available (was for example RBA::Qt::Qt_Keys instead of RBA::Qt_Keys and pya.Qt.Keys was no fully initialized type object) 2023-05-06 00:04:14 +02:00
Matthias Koefferlein 5fd54fa40a Netlist reader: anonymous circuits are not checked for known parameters 2023-05-06 00:00:56 +02:00
Matthias Koefferlein 67276c4922 Merge branch 'enhanced-meta-info' into wip2 2023-05-05 23:22:33 +02:00
Matthias Koefferlein d531418ad2 Layout statistics form - caching, refactoring, printing statistics for 'all' shapes 2023-05-05 23:20:03 +02:00
Matthias Köfferlein 0bc97df381
Merge pull request #1355 from KLayout/issue-1349
Fixed issue-1349 (Add application events for indicating start/finish …
2023-05-05 23:12:53 +02:00
Matthias Koefferlein 4afa029297 Partial edit mode fixes
- do not remove last point of closed paths
- fixed removal of redundant points in polygon/path edit
- on-grid point insertion in paths and polygons for skew angle edges
2023-05-05 23:05:49 +02:00
Matthias Koefferlein 2e4153c04a Some more enhancements for search & replace in macro editor 2023-05-03 21:38:10 +02:00
Matthias Koefferlein 71487af411 Some fixes for macro editor
- added missing icons for back/forward
- trying to improve behavior or find, search&replace
- fixed tool tips of buttons
- Ctrl-R, Ctrl+Shift+R for replace and "replace all"
2023-05-03 00:22:39 +02:00
Matthias Koefferlein 7bdc8efc81 Displaying meta info in user properties dialog box for information
Copy of meta info from cell to other layout now preserves names.

In addition two bugs have been fixed:
* Display of meta info for layout on statistics page did not show description
* ghost cell status now is copied on cell copy
2023-05-02 21:48:13 +02:00
Matthias Koefferlein 9690c5d1bc Merge branch 'master' into enhanced-meta-info 2023-04-30 14:59:38 +02:00
Matthias Koefferlein 3bc14e1e79 Fixed issue-1345 (feature request: create a def single/mulitpart path import option)
The option is called "--lefdef-joined-paths" for strm* buddy tools
and "joined_paths" for pya/RBA.

Wires with multiple segments are combined into long paths when
possible - this fails on anisotropic widths and 45 degree segments.
2023-04-30 14:47:52 +02:00
Matthias Koefferlein 08570aeae8 Fixed issue-1349 (Add application events for indicating start/finish of restoring session)
The new events are called
* MainWindow#on_session_about_to_be_restored
  (called before the session is restored)
* MainWindow#on_session_restored
  (called after the session was restored)
2023-04-30 13:49:06 +02:00
Matthias Koefferlein ffd47e1341 Fixed issue-1353 (problem with recursive instance iterator) 2023-04-29 23:28:20 +02:00
Matthias Koefferlein 707ebc4114 Copying meta information of cells on various occasions too (e.g. clipboard copy & paste) 2023-04-29 23:27:42 +02:00
Matthias Koefferlein c8d97871fd Enabling build of version agnostic plugins 2023-04-22 21:26:39 +02:00
Matthias Koefferlein 34d147f1ce Fixed LVS doc 2023-04-22 15:28:55 +02:00
Matthias Koefferlein 70b6306635 Tests for complex data for meta info, doc updates 2023-04-22 00:16:12 +02:00
Matthias Koefferlein d9e0d107b1 Bug fixes, RBA tests for meta info 2023-04-21 23:33:42 +02:00
Matthias Koefferlein d1f962a228 Implementing meta data persistency also with strict OASIS and forward references 2023-04-20 23:47:47 +02:00
Matthias Koefferlein bc30887488 Include table-at-end tests for OASIS writer/reader 2023-04-19 23:49:01 +02:00
Matthias Koefferlein 551a80b70b Preparing OASIS test mode for forward references 2023-04-19 23:28:38 +02:00
Matthias Koefferlein 56fbba60c1 Debugging & testing 2023-04-19 01:22:46 +02:00
Matthias Koefferlein 3361802a20 Tests and bugfixing for meta info persistence in OASIS + GDS 2023-04-19 00:51:11 +02:00
Matthias Koefferlein b35113b80e Bugfix. 2023-04-18 22:52:05 +02:00
Matthias Koefferlein b36eb04afa Meta info persistency also for OASIS 2023-04-18 22:34:11 +02:00
Matthias Koefferlein 78da3effa2 Next steps - persistency of meta info 2023-04-18 21:24:26 +02:00
Matthias Koefferlein b14c630ce9 Scheduling update for 0.28.8 2023-04-16 21:40:53 +02:00
Matthias Koefferlein 541f9a377f Small refactoring, added persisted flag for meta info 2023-04-16 21:31:25 +02:00
Matthias Koefferlein 1a0542f155 Fixed two compiler warnings of hidden virtual methods 2023-04-16 21:31:02 +02:00
Matthias Koefferlein df4221cfc9 First features to support cell meta data 2023-04-16 20:25:30 +02:00
Matthias Köfferlein 5083e6e45e
Merge pull request #1340 from KLayout/issue-1339
Added a method 'widget' to LayoutView to deliver the QWidget object f…
2023-04-16 15:09:28 +02:00
Matthias Köfferlein d560027790
Merge pull request #1334 from KLayout/issue-1327
Issue #1327 fixed (segfault in pymod finalization code)
2023-04-13 22:55:02 +02:00
Matthias Köfferlein 31b34eeb8c
Merge pull request #1333 from KLayout/issue-1328
Fixed issue #1328 (width of layer selection boxes too small)
2023-04-13 22:54:48 +02:00
Matthias Köfferlein 69097bbf04
Merge pull request #1332 from KLayout/issue-1322
Issue #1322 (Net tracer tech component manipulation methods)
2023-04-13 22:54:29 +02:00
Matthias Köfferlein fc014efe80
Merge pull request #1331 from KLayout/issue-1321
Implemented tilde expansion, internal stream path names are now absol…
2023-04-13 22:54:12 +02:00
Matthias Koefferlein dc689e52d1 Added a method 'widget' to LayoutView to deliver the QWidget object for the view 2023-04-13 22:50:58 +02:00
Matthias Koefferlein 317617a14a Fixed unit tests for Windows 2023-04-08 09:08:31 +02:00
Matthias Koefferlein 015263fb0e Trying to fix unit test fails 2023-04-07 17:34:23 +02:00
Matthias Koefferlein 9c1da8d3e1 Fixed issue #1328 (width of layer selection boxes too small)
Also: clip and fill dialog now display layer names from
the layer view. Fixed geometry of fill dialog.

Hope I got all places where the layer selection box was
configured as adjust size = on first show.
2023-04-07 11:44:20 +02:00
Matthias Koefferlein 63a4fe8d77 Issue #1327 fixed (segfault in pymod finalization code) 2023-04-07 10:59:30 +02:00
Matthias Koefferlein 30d2992f56 Issue #1322 (Net tracer tech component manipulation methods) 2023-04-07 10:20:17 +02:00
Matthias Koefferlein 0802bc845d Extended unit test 2023-04-07 10:07:26 +02:00
Matthias Koefferlein 19fbc5c144 Implemented tilde expansion, internal stream path names are now absolute, fixed tests 2023-04-07 00:19:10 +02:00
Matthias Koefferlein 0fd052baa6 Simplify pymod test for better CI integration 2023-04-01 09:13:32 +02:00
Matthias Koefferlein 2166437480 Compatibility with other Python version 2023-03-30 20:09:17 +02:00
Matthias Koefferlein 692e5b4a01 Fixed a reference counting bug (Python) 2023-03-29 23:33:00 +02:00
Matthias Koefferlein cb0f2b4166 Enabling pya initialization for app and ut_runner only. 2023-03-29 00:09:26 +02:00
Matthias Koefferlein 1cfe7b10ba Another attempt trying to fix the DLL load issue for pya on Windows - force-load all DLL that are needed by pyacore into the app before importing the module 2023-03-28 00:39:32 +02:00
Matthias Koefferlein 5c57f5ddf8 Maybe fixing ut_runner errors on MSVC 2023-03-28 00:11:34 +02:00
Matthias Koefferlein ed20ced941 Using data holder approach also for Qt4 QImage 2023-03-27 21:59:41 +02:00
Matthias Koefferlein 80987a6408 Provide more lifetime management in Qt bindings also for Qt4 2023-03-26 22:51:06 +02:00
Matthias Koefferlein acd9d6b8c5 Backward compatibility to Qt 5.12.8 and 5.12.11, fixed some test fails for Qt4 2023-03-26 22:47:56 +02:00
Matthias Koefferlein 0cae15c6fa Docu updates 2023-03-26 22:11:05 +02:00
Matthias Koefferlein 7d41078e8c Avoid a segfault: an event may kill the event object itself indirectly. 2023-03-26 21:29:06 +02:00
Matthias Koefferlein 1cd033e168 Qt bindings: preventing signals to shadow properaties, added script to generate tables 2023-03-26 18:01:22 +02:00
Matthias Koefferlein fa61f96194 GSI: enabling enums as hash keys and int(enum) in Python 2023-03-26 17:52:33 +02:00
Matthias Koefferlein 2e2ba41250 [consider merging] more consistent behavior of RBA/pya: enum classes are properly made available (was for example RBA::Qt::Qt_Keys instead of RBA::Qt_Keys and pya.Qt.Keys was no fully initialized type object) 2023-03-26 14:21:30 +02:00
Matthias Koefferlein 79ad6b3fae Qt binding: Removing ambiguitiy between QLatin1String and const char * 2023-03-26 00:56:01 +01:00
Matthias Koefferlein 40d3fd41b1 Regenerating Qt binding sources with the event/property caches 2023-03-26 00:35:46 +01:00
Matthias Koefferlein ba27951991 Regenerating Qt6 bindings with the latest Qt5 enhancements 2023-03-26 00:19:21 +01:00
Matthias Koefferlein 31aa45dce4 Qt5 binding enhancements
- Based on Qt 5.12.12 now (tested to build on 5.15)
- QImage constructor with binary data
- More classes, specifically QLibraryInfo for Qt version
- QLayout and derivatives take ownership over widgets added
2023-03-25 22:54:54 +01:00
Matthias Koefferlein 9a1c776475 Make sure the Python modules are found from the application's installation by prepending their path to sys.path 2023-03-24 19:15:57 +01:00
Matthias Koefferlein fd0c60761f Merge branch 'master' into wip 2023-03-24 15:56:48 +01:00
Matthias Koefferlein 02e9f605d9 Implemented .lib for Spice reader - issue #1320 2023-03-24 14:31:49 +01:00
Matthias Koefferlein a39441cdbd Some alignment of Spice reader details with ngspice (not all possible ways of specifying R, L or C elements are supported currently) 2023-03-24 13:29:14 +01:00
Matthias Koefferlein b979219007 Fixed previous implementation - was not fully effective 2023-03-16 20:06:07 +01:00
Matthias Koefferlein 178cb29773 Fixed a function call typo 2023-03-16 10:05:36 +01:00
Matthias Koefferlein 1182979a5c Fixed issue #1315 (Cannot export layers from Marker Browser in viewer mode) 2023-03-15 23:35:39 +01:00
Matthias Koefferlein 2166f2bb21 Some memory optimization potential with tiled processor to improve XOR memory footprint (box-like polygons stored as boxes, polygon references) 2023-03-15 23:22:04 +01:00
Matthias Koefferlein ffbcfc5490 Trying to reduce memory overhead of tiling processor - using box objects when possible 2023-03-12 22:10:49 +01:00
Matthias Koefferlein bcaefefded Cleanup of box scanner implementation 2023-03-12 19:45:39 +01:00
Matthias Koefferlein 741c9d9ac5 Performance enhancement of flat space DRC in some cases 2023-03-12 19:45:24 +01:00
Matthias Koefferlein 55dbf85b4b Some refactoring of Spice reader with the goal to simplify delegate implementation, removing static instance of default delegate 2023-03-12 17:03:15 +01:00
Matthias Koefferlein db8f9d5bcb Spice reader enhancements
Basic goal is to align ngspice and KLayout Spice
format comprehension. ".options scale" was implemented
together with a number of other patches.
Consistency has been confirmed with respect to these
features and formula evaluation.
2023-03-12 15:36:50 +01:00
Matthias Koefferlein f5fd47bd4b Fixed standalone Python module builds 2023-03-12 00:53:42 +01:00
Matthias Koefferlein 6955d7d0c7 Better handling of inputs in deep mode after manipulating the hierarchy of the input layout 2023-03-12 00:26:18 +01:00
Matthias Koefferlein 047455c560 Merge branch 'master' into wip2 2023-03-12 00:10:23 +01:00
Matthias Koefferlein 5a1e845a64 [consider merging] regenerating pyi stubs, sorting methods by name for better stability of files, small patch (missing box ctor arg names) 2023-03-11 19:56:02 +01:00
Matthias Koefferlein ebac0796e0 [consider merging] Fixed Qt Binding for Qt 5.15.2 where an include is missing 2023-03-11 19:55:59 +01:00
Matthias Koefferlein bee3d11f62 [consider merging] avoid an assertion in the Python exit code for accessing an already destroyed Python object 2023-03-11 19:55:51 +01:00
Matthias Koefferlein ce31f47918 [consider merging] regenerating pyi stubs, sorting methods by name for better stability of files, small patch (missing box ctor arg names) 2023-03-11 19:55:06 +01:00
Matthias Koefferlein 18ae970671 Fixed Qt bindings in pya module 2023-03-11 01:03:50 +01:00
Matthias Koefferlein d97942ac3a [consider merging] Fixed Qt Binding for Qt 5.15.2 where an include is missing 2023-03-11 00:24:21 +01:00
Matthias Koefferlein 293a898ae0 [consider merging] avoid an assertion in the Python exit code for accessing an already destroyed Python object 2023-03-10 23:45:37 +01:00
Matthias Koefferlein 068849a634 Refactoring, primary goal is to centralize the definition of PCellDeclarationHelper in Python 2023-03-10 23:22:30 +01:00
Matthias Koefferlein 8b7e2b2b40 Refactoring of pya - using external module defintions for pya initialization 2023-03-10 21:58:01 +01:00
Matthias Koefferlein 92204915a4 Refactoring: pya is a native binary package now. It's available to pymod, but may also be the basis of the built-in pya module. 2023-03-08 23:54:32 +01:00
Matthias Koefferlein 0253c25b30 Avoids a Qt warning internally 2023-03-08 22:37:56 +01:00
Matthias Koefferlein 35d9cdb656 Reworked Python initialization
KLAYOUT_PYTHONPATH is copied into PYTHONPATH, so it
is essentially equivalent (no more copying of internally
generated paths).

The installation's pymod folder is added to the path, so
that we can put "klayout.db" etc. there.
2023-03-08 01:15:53 +01:00
Matthias Koefferlein 0204f293b5 Generic environment set/clear functions, file function to get app exe path 2023-03-08 00:52:42 +01:00
Matthias Koefferlein c3e831f96f Enhancing pymod tests (added lib, more robust, added pya also for Qt bindings off) 2023-03-07 23:44:12 +01:00
Matthias Koefferlein 3e8f03ef5f Synchronizing Python PCellDeclarationHelper between the two implementations (for standalone module + build-in for app) 2023-03-07 23:43:12 +01:00
Matthias Koefferlein 7d0964655d Experimental: allow importing klayout.x pymods into KLayout itself. 2023-03-06 23:51:58 +01:00
Matthias Koefferlein 9cfc284b8c Synonyms: connect/disconnect for events to get closer to PyQt5 2023-03-06 23:04:55 +01:00
Matthias Koefferlein 1b3e8e14c5 Netlist reader: anonymous circuits are not checked for known parameters 2023-03-06 22:38:10 +01:00
Matthias Koefferlein be0d155848 Fixed issue #1309
Fixed polygon rasterizer.
Reason was the clip edge function that delivered
vertical edges from skew ones due to rounding.
These must not be skipped when exactly on a pixel
boundary as true vertical edges are.
2023-03-04 22:20:06 +01:00
Matthias Koefferlein feb50f49dd Enabling some more PNG related features by falling back to Qt without libpng 2023-03-04 20:32:44 +01:00
Matthias Köfferlein 2facc75807
Merge pull request #1305 from KLayout/issue-1304
Fixed issue #1304 (terminal order for MOS devices)
2023-03-04 19:32:46 +01:00
Matthias Köfferlein f413635deb
Merge pull request #1303 from KLayout/issue-1302
Implemented solution for issue #1302 (Select filter is not applied in…
2023-03-04 19:32:29 +01:00
Matthias Köfferlein addb7148f6
Merge pull request #1301 from KLayout/wip
Wip
2023-03-04 19:32:06 +01:00
Matthias Köfferlein 3e325763d9
Merge pull request #1296 from KLayout/issue-1271
Issue 1271
2023-03-04 19:31:39 +01:00
Matthias Koefferlein 1b13d8b591 Merge branch 'master' into issue-1271 2023-03-03 18:42:53 +01:00
Matthias Koefferlein 9335ef8c21 Fixed builds on MSVC 2023-03-03 18:00:24 +01:00
Matthias Koefferlein 6db6e77458 Tired of patching around __version__ ...
This doesn't work. Either Python is too old, import_metadata
isn't there or Azure pipelines do not support that.
Stopping that. Good old plain C++ is still the best solution.
Take that dynamic language hackers!
2023-03-01 00:50:30 +01:00
Matthias Koefferlein 4ead7b46a1 Test updates 2023-02-27 21:27:19 +01:00
Matthias Koefferlein 2236ced5ae Refining solution for issue-1249: properly reading the edge we project to in single-edge partial move mode 2023-02-27 20:49:45 +01:00
Matthias Koefferlein af647e2efd Test updates 2023-02-27 19:37:59 +01:00
Matthias Koefferlein 1ce221794b More test data updates 2023-02-27 01:08:37 +01:00
Matthias Koefferlein ceb82a15d8 Fixed merge issues 2023-02-27 00:27:23 +01:00
Matthias Koefferlein ebcf242a9e Merge branch 'more-spice' into issue-1304 2023-02-27 00:21:20 +01:00
Matthias Koefferlein 69d975c736 Update to test data 2023-02-27 00:19:14 +01:00
Matthias Koefferlein 0fa9bc6e2b Fixed issue #1304 (terminal order for MOS devices) 2023-02-26 23:30:17 +01:00
Matthias Koefferlein 90cf06b3ac More precise help text for generic reader options. 2023-02-26 21:57:04 +01:00
Matthias Koefferlein 3ac1385d87 Another testcase for Spice reader with parametric subcircuits, .param statements, bug fixes 2023-02-26 21:31:34 +01:00
Matthias Koefferlein 2e3c859cd3 Specified release version for Spice reader enhancements 2023-02-26 19:52:05 +01:00
Matthias Koefferlein 82b372ab14 Implemented solution for issue #1302 (Select filter is not applied in partial mode) 2023-02-26 17:07:04 +01:00
Matthias Koefferlein 04626f9c2b python module: import klayout.lay implies klayout.db now to always enable stream readers 2023-02-25 12:14:19 +01:00
Matthias Koefferlein a3ff671eb9 Python debugger compatible with PyQt
Problem was that PyQt generates spontaneous Python events
that do not originate from KLayout itself. This made the
IDE detect a stop request and the application crashed.
2023-02-23 17:07:41 +01:00
Matthias Koefferlein 90b59ca14d Bugfix - properly removing plugins when they are unregistered (unlikely) 2023-02-23 17:07:22 +01:00
Matthias Koefferlein 08bfbbae81 Test updates 2023-02-22 16:08:48 +01:00
Matthias Koefferlein d20e4b2128 Bug fixes, adjusted test data 2023-02-22 15:54:28 +01:00
Matthias Koefferlein be5e16c125 WIP: bug fixing, new test cases 2023-02-22 13:11:30 +01:00
Matthias Koefferlein 44e123f343 WIP: Spice reader - resolve model and net names by variables 2023-02-22 10:20:48 +01:00
Matthias Koefferlein 18f2b57c3d WIP: generlizing parameter values for spice reader - can be strings too 2023-02-22 10:15:05 +01:00
Matthias Koefferlein 51c4b7ed28 WIP 2023-02-22 09:48:08 +01:00
Matthias Koefferlein 715c7ed282 WIP: rewriting Spice expression parser to support more functions 2023-02-21 18:10:36 +01:00
Matthias Koefferlein b421f1e499 WIP: added tests for variant fuzzy compare 2023-02-21 16:05:45 +01:00
Matthias Koefferlein e709218db9 WIP: fuzzy compare for tl::Variant with float values 2023-02-21 15:57:54 +01:00
Matthias Koefferlein 80fa7e47e2 WIP: tests pass 2023-02-21 00:49:23 +01:00
Matthias Koefferlein 49d3edd26a WIP: debugging, first tests pass. 2023-02-21 00:17:41 +01:00
Matthias Koefferlein ac5616a583 WIP 2023-02-21 00:15:22 +01:00
Matthias Koefferlein 736676701d WIP 2023-02-20 23:54:04 +01:00
Matthias Koefferlein 459de47448 WIP: spice reader refactoring to support parametric subcircuits 2023-02-20 23:25:23 +01:00
Matthias Koefferlein 2214345df2 WIP 2023-02-20 22:59:03 +01:00
Matthias Koefferlein 40fd350d85 WIP 2023-02-20 22:06:45 +01:00
Matthias Koefferlein 432b542f3c Merge branch 'master' into wip 2023-02-19 20:30:49 +01:00
Matthias Köfferlein a04f2940ac
Merge pull request #1298 from KLayout/lefdef-wip
Lefdef wip
2023-02-19 20:29:03 +01:00
Matthias Koefferlein 817bb396f6 PNG support for PixelBuffer taken from Qt also if Qt bindings are off 2023-02-19 20:25:21 +01:00
Matthias Koefferlein 79868c40cd Some enhancements for image editing (e.g. selection remains after moving handles) 2023-02-19 19:54:40 +01:00
Matthias Koefferlein df562f502a Avoid a segfault while editing a ruler. This happens is both a selection and a transient selection is active. 2023-02-19 19:00:02 +01:00
Matthias Koefferlein 8038acc236 Updated test data 2023-02-18 09:50:34 +01:00
Matthias Koefferlein 4e3c106b27 Merge branch 'master' into issue-1249 2023-02-18 09:44:48 +01:00
Matthias Köfferlein 868650a61c
Merge pull request #1295 from KLayout/issue-1294
Fixed issue #1294 (grid snap not working in partial mode)
2023-02-18 00:11:45 +01:00
Matthias Koefferlein f6edc9c802 Implemented solution for issue #1249 (persist layer properties in session) 2023-02-17 23:41:36 +01:00
Matthias Koefferlein 4eb48738e4 Confirming that issue #1282 is fixed 2023-02-17 00:02:59 +01:00
Matthias Koefferlein 33c858924f Some LEF reader fixes based on the complete sample 2023-02-16 23:51:11 +01:00
Matthias Köfferlein 3eee8a6404
Merge pull request #1289 from KLayout/issue-1287
Fixed issue #1287
2023-02-16 21:26:02 +01:00
Matthias Koefferlein 7903b9d70d Fixed issue #1294 (grid snap not working in partial mode) 2023-02-16 21:23:59 +01:00
Matthias Koefferlein 66a6832594 Some enhancements to DEF reader based on the 'complete' example. VIAs in FILL und PIN, a variety of syntax fixes. 2023-02-15 22:11:12 +01:00
Thomas Ferreira de Lima 3c9507ab63 added test for issue 1265 (writing and reading pngs) 2023-02-15 11:01:47 -05:00
Thomas Ferreira de Lima 094768997f backporting importlib.metadata for python<3.8 2023-02-15 10:14:55 -05:00
Matthias Koefferlein f73b229024 WIP 2023-02-15 00:29:43 +01:00
Matthias Koefferlein 93d9298b51 Formally minkowsky sum now is allowed with empty polygon arguments 2023-02-15 00:29:26 +01:00
Matthias Koefferlein a54ea1f273 DEF reader bug fixes, turned some errors into warnings temporarily. 2023-02-15 00:28:41 +01:00
Matthias Koefferlein dd466beca8 Simple implementation of __version__ 2023-02-14 22:41:03 +01:00
Matthias Koefferlein a2aead8c5c Fixed issue #1287
The problem was introduced during implementation
of multi-segment rulers.

This patch also fixes the tab order of the ruler
properties dialog and adds some tests.
2023-02-12 22:10:27 +01:00
Matthias Koefferlein 026e0fa591 Fixed issue #1275 (size after smooth does not work) 2023-02-04 19:56:06 +01:00
Matthias Koefferlein 48ec208843 Bugfix: LVS - same_nets should not be picky about net names - they may be missing in some circuits 2023-02-02 12:24:50 +01:00
Matthias Koefferlein 0e60c90514 Bugfix LVS: same_nets with two arguments was not working as described 2023-02-02 00:30:00 +01:00
Matthias Koefferlein 6941976cfb Merge branch 'wip' 2023-01-29 17:18:30 +01:00
Matthias Koefferlein 115b89c711 Merge branch 'issue-1259' 2023-01-29 17:18:25 +01:00
Matthias Koefferlein 1a1139299a Properly populating the editor options pages 2023-01-29 00:12:31 +01:00
Matthias Koefferlein 2d6091cf0a Fixed MSVC builds 2023-01-26 21:51:07 +01:00
Matthias Koefferlein 12693ed212 More steps to fully (hopefully) fix issue #1259 - basically it is important to issue enough active_view_changed and active_technology_change events 2023-01-26 20:31:43 +01:00
Matthias Koefferlein cfd21d98bf Merge branch 'issue-1259' 2023-01-26 12:52:23 +01:00
Matthias Koefferlein 500fa5b62d Avoid loooong error messages in DRC and LVS by bypassing the engine's inspect implementation which emits a lot of internal members 2023-01-25 20:42:30 +01:00
Matthias Koefferlein cb4501787f Solved: Partial mode does not support Ctrl+Shift to confine movement direction 2023-01-25 20:41:55 +01:00
Matthias Köfferlein ab8cfee1ea
Merge pull request #1258 from KLayout/wip
Wip
2023-01-24 21:48:27 +01:00
Matthias Koefferlein 85cc50e2c1 Flaw fixed: tech status persisted after last view was closed 2023-01-24 21:35:47 +01:00
Matthias Koefferlein 7600eac8a0 Fixed issue-1259 2023-01-24 21:14:36 +01:00
Matthias Köfferlein 18900215e6
Merge pull request #1262 from KLayout/issue-1253
Fixed isse #1253
2023-01-24 20:38:25 +01:00
Matthias Köfferlein 4b4551338b
Merge pull request #1261 from KLayout/issue-1260
Seems to fix issue #1260
2023-01-24 20:38:10 +01:00
Matthias Köfferlein 2cc1f390ca
Merge pull request #1255 from KLayout/issue-1237
Provide a fix for issue-1237 (Python error messages should include mo…
2023-01-24 20:37:50 +01:00
Matthias Koefferlein bc63a1cd40 Fixed isse #1253 2023-01-24 00:42:31 +01:00
Matthias Koefferlein 2749217984 Seems to fix issue #1260 2023-01-23 23:24:55 +01:00
Matthias Koefferlein 6da5903639 More robustness in unit tests 2023-01-22 17:58:09 +01:00
Matthias Koefferlein 69a2ac107b One bug fix, made tests more robust and compatible with MSVC 2023-01-22 16:17:13 +01:00
Matthias Koefferlein cd2535af09 Fixing Qt4 builds 2023-01-22 10:35:41 +01:00
Matthias Koefferlein 5276d24706 Fixing Qt4 builds 2023-01-22 10:35:13 +01:00
Matthias Koefferlein e6972aad68 Fixed builds 2023-01-22 10:30:40 +01:00
Matthias Koefferlein ca091203b3 Attempt to fix Windows builds 2023-01-22 10:23:54 +01:00
Matthias Koefferlein 80a15816bd Fixed builds 2023-01-22 10:21:03 +01:00
Matthias Koefferlein c5b37fd78b Merge branch 'wip' into network-drc 2023-01-22 00:33:38 +01:00
Matthias Koefferlein dea1ca6451 WIP: Doc updates, doc bug fixes 2023-01-21 21:37:40 +01:00
Matthias Koefferlein 30ee5e183f WIP: removed TODO markers - needs to stay like that (e.g. drcSimpleTests:48_drcWithFragments) 2023-01-21 19:04:00 +01:00
Matthias Koefferlein ed7ed4158c WIP: bug fix 2023-01-21 17:39:35 +01:00
Matthias Koefferlein f924109bcd WIP: implemented some TODOs 2023-01-21 16:35:01 +01:00
Matthias Koefferlein df1efa802b WIP: some bug fixes, unit tests updated 2023-01-21 15:55:05 +01:00
Matthias Koefferlein 1a9edbf6a9 WIP: refactoring - allow properties constraints modes which do not copy properties. In DRC that is default. 2023-01-21 15:13:39 +01:00
Matthias Koefferlein 38808fccf7 WIP: DRC properties constraints now need explicit generation of output properties. 2023-01-21 14:04:06 +01:00
Matthias Koefferlein 9b64224cb4 WIP: experimenting with pulling net names from subcircuits for dummy connections 2023-01-21 11:22:03 +01:00
Matthias Koefferlein 650f6cacb5 WIP: property support for merged edges and extended on deep edges 2023-01-21 10:12:46 +01:00
Matthias Koefferlein fe1d520d0c WIP: some bug fixes, tests for deep mode - some refinement needed. 2023-01-21 01:38:25 +01:00
Matthias Koefferlein 1a71b01859 WIP: refactoring, added more properties support, bug fixing, added a test for the new DRC features 2023-01-20 23:44:51 +01:00
Matthias Koefferlein 9130492881 [CONSIDER MERGING] use twice the interaction range inside generic DRC's 'sized' node 2023-01-20 23:43:19 +01:00
Matthias Koefferlein 9f27aa9f51 WIP: refactoring, more property support, DRC integration, bug fixes ... 2023-01-20 19:08:21 +01:00
Matthias Koefferlein 7ba3133afc WIP: using net name/circuit name instead of net ID for property value as this is more stable for better regression testing.
Bug fix: re-enabling of trace all nets tests, establishing dummy
names for layers in all cases - otherwise layers do not have a
reference for LayoutToNetlist persistence.
2023-01-20 01:16:30 +01:00
Matthias Koefferlein 234df5a560 WIP: added a few TODOs 2023-01-19 23:54:31 +01:00
Matthias Koefferlein d73544fbc8 WIP: small bug fix 2023-01-19 23:34:15 +01:00
Matthias Koefferlein f329f91300 WIP: bug fixing, test for GSI binding of checks with property constraints 2023-01-19 23:27:31 +01:00
Matthias Koefferlein 220c1b714a WIP: support for 'flatten' with properties 2023-01-19 22:20:07 +01:00
Matthias Koefferlein 83aaca4485 WIP: unit tests for GSI binding of Region#net 2023-01-19 22:11:40 +01:00
Matthias Koefferlein 984c001f56 WIP: debugging and unit test for net-aware booleans 2023-01-19 21:15:41 +01:00
Matthias Koefferlein e1ddd6f8d2 WIP: polishing the region to net generator feature. 2023-01-19 17:25:07 +01:00
Matthias Koefferlein 1b9a532f48 WIP: net generation from region layers 2023-01-19 14:44:17 +01:00
Matthias Koefferlein d7bdbae60b WIP: more refactoring 2023-01-19 12:20:58 +01:00
Matthias Koefferlein fb60e01f45 WIP: refactoring. Goal is to supply a netlist builder object for caching netlist build information 2023-01-19 12:08:50 +01:00
Matthias Koefferlein c16082654f WIP: fixed unit tests 2023-01-19 01:05:26 +01:00
Matthias Koefferlein d230691ae4 WIP: bug fixing, new tests for property filters 2023-01-19 00:56:17 +01:00
Matthias Koefferlein 75c20aa03a WIP: fixed unit tests 2023-01-19 00:29:30 +01:00
Matthias Koefferlein 8ac08778c2 WIP: reworked and implemented a property translation/selection/enabling scheme for the shape containers + GSI binding. 2023-01-19 00:25:07 +01:00
Matthias Koefferlein 500051ef1d WIP: bug fix 2023-01-18 17:07:53 +01:00
Matthias Koefferlein 4edf4ab1f7 WIP: Added support for size with properties 2023-01-18 16:22:36 +01:00
Matthias Koefferlein 71d2d9ef3f WIP: tests for complex DRC ops with properties 2023-01-18 15:46:09 +01:00
Matthias Koefferlein f1646a79fe WIP: preparations for generic DRC with properties 2023-01-18 15:24:00 +01:00
Matthias Koefferlein 9f6f0e2d43 [BUGFIX] WIP: property support for DRC functions, bugfix: DRC check against raw (non-merged semantics) second input did not work 2023-01-18 12:34:47 +01:00
Matthias Koefferlein c3383cf7df WIP: enabling properties for DRC checks, refactoring 2023-01-18 02:23:15 +01:00
Matthias Koefferlein 1b7b077cea WIP: refactoring, started implementing DRC checks with property support 2023-01-18 01:36:22 +01:00
Matthias Koefferlein bd79467b4b Merge branch 'issue-1237' into network-drc 2023-01-17 20:45:00 +01:00
Matthias Koefferlein d1c28bc3bd Provide a fix for issue-1237 (Python error messages should include more information)
In Python 3.10 the format of the syntax error exception was changed
and parsing through PyArgs_ParseTuple no longer worked. The code
change will re-enable proper syntax error parsing for Python 3.10.
2023-01-17 20:43:13 +01:00
Matthias Koefferlein 40267dddb6 WIP: polygons to edges with properties 2023-01-17 19:07:32 +01:00
Matthias Koefferlein 8fb4e36809 WIP: refactoring, preparing polygon-to-edge with properties 2023-01-17 17:08:36 +01:00
Matthias Koefferlein f0e20ad258 WIP: cleanup 2023-01-17 14:17:42 +01:00
Matthias Koefferlein 5ff187a56d WIP: fixed unit tests 2023-01-17 12:37:12 +01:00
Matthias Koefferlein 5cd322b04c [CONSIDER MERGING TOO] rectified solution for text/polygon interaction 2023-01-17 12:36:56 +01:00
Matthias Koefferlein dfac3b1b44 WIP: Implemented property support for two-boolean 2023-01-17 11:24:08 +01:00
Matthias Koefferlein 72bb6d4a26 WIP: bug fix for deep region merge property computation - was missing on root connector clusters 2023-01-17 10:21:28 +01:00
Matthias Koefferlein dc2ae953ed WIP: bug fixes 2023-01-17 02:38:15 +01:00
Matthias Koefferlein 7f2200cab5 WIP: Bug fixes, refactoring 2023-01-17 01:37:10 +01:00
Matthias Koefferlein 99887a15f0 WIP: refactoring, enabling properties for flat processing 2023-01-17 01:00:27 +01:00
Matthias Koefferlein 58ab6ce9fd WIP: fixed tests, dropped property constraint on XOR and OR (not implemented properly), added 'ignore' property constraint - in the 'no properties' case, properties are passed from the first input. 2023-01-16 16:27:31 +01:00
Matthias Koefferlein 3b4a460581 WIP: Further test updates 2023-01-16 02:29:03 +01:00
Matthias Koefferlein 48b55f142a WIP: flat region tests, partially working 2023-01-16 02:06:21 +01:00
Matthias Koefferlein db870614ab [CONSIDER MERGING] grid check markers are not exactly aligned with vertexes in deep mode 2023-01-16 01:35:08 +01:00
Matthias Koefferlein 70d16425e1 WIP: added tests for as if flat regions 2023-01-16 01:02:30 +01:00
Matthias Koefferlein bf47805b29 WIP: support for properties in deep andnot, tests 2023-01-16 01:00:03 +01:00
Matthias Koefferlein fad85e4260 [CONSIDER MERGING] Bugfix: polygon interaction with texts did not capture texts because of vanishing bounding box 2023-01-16 00:59:32 +01:00
Matthias Koefferlein b7c515bf91 WIP: enabling booleans with property constraints 2023-01-15 20:23:32 +01:00
Hugo Therrien b3b26721eb New action: screenshot to clipboard 2023-01-15 11:52:58 -05:00
Matthias Koefferlein f3e610b6e8 WIP: transfer polygon properties to edges 2023-01-15 15:28:10 +01:00
Matthias Koefferlein 5fa4d62da7 WIP: property support for transformation, filters, processors 2023-01-15 15:03:34 +01:00
Matthias Koefferlein 9f633b813d WIP: property management for flat shape containers 2023-01-15 13:34:47 +01:00
Matthias Koefferlein 33b5723068 WIP: property mapping between layouts 2023-01-15 11:56:41 +01:00
Matthias Koefferlein 311d9c6eb5 WIP: new net property mode for net builder (name + id) 2023-01-14 23:56:31 +01:00
Matthias Koefferlein 9f632f29d3 WIP: updated test data 2023-01-14 23:46:48 +01:00
Matthias Koefferlein 053269e0b2 WIP: added test 2023-01-14 22:31:48 +01:00
Matthias Koefferlein 467208fb6e WIP: property-aware meging of deep region 2023-01-14 22:26:42 +01:00
Matthias Koefferlein 2191db0c6d Merge branch 'master' into network-drc 2023-01-13 22:01:51 +01:00
Matthias Koefferlein 017ca1707b Small bugfix: 'clone panel' did not copy custom line styles 2023-01-13 22:01:18 +01:00
Matthias Koefferlein 33af2b8fcc Avoid a segfault after explicitly destroying a custom plugin factory object 2023-01-12 21:03:24 +01:00
Matthias Köfferlein c2dc27b0e1
Merge pull request #1248 from KLayout/issue-1247
Fixed issue #1247. Problem was missing cache clean on assignment of s…
2023-01-12 09:08:08 +01:00
Matthias Koefferlein 12e34f9282 Fixed issue #1247. Problem was missing cache clean on assignment of stipple pattern and line styles 2023-01-12 00:11:36 +01:00
Matthias Koefferlein 500fee3ff6 Fixed issue #1245 by using a smarter implementation for the backward compatibility fallback. Added unit tests and new (old) GSI bindings for that purpose. 2023-01-11 23:31:09 +01:00
Matthias Koefferlein 5952974095 Merge branch 'master' of github.com:KLayout/klayout 2023-01-11 21:26:40 +01:00
Matthias Koefferlein 478b838589 WIP: properties for regions, starting with deep regions 2023-01-09 00:05:31 +01:00
Matthias Koefferlein 0ba719ad84 WIP: properties for regions, tests for flat and original layer regions 2023-01-08 22:44:23 +01:00
Matthias Koefferlein 1dfa5abc9a WIP: introducing properties for FlatRegion and others 2023-01-08 19:27:41 +01:00
Matthias Koefferlein f9ccb60dd9 WIP: experimental - introducing net DRC, first steps 2023-01-07 23:42:59 +01:00
Matthias Koefferlein af30695ab3 WIP: experimental - introducing net DRC, first steps 2023-01-07 21:56:25 +01:00
Matthias Koefferlein ef6f3f182a Fixed issue #1242 (KLayout 0.28.2 crashes when registering a plugin if a layout exists)
Problem was twofold: first, events are triggered during
construction of the plugin which met an uninitialized
pointer. Second, the clearing of existing plugins failed
because of iterating a vector while destroying it's members
erased member of it.
2023-01-04 21:17:12 +01:00
Matthias Koefferlein 8677b38d69 Merge branch 'master' into wip 2023-01-01 22:28:14 +01:00
Matthias Koefferlein a85dbd3d31 Updating copyright notice to 2023 2023-01-01 22:27:22 +01:00
Matthias Koefferlein 6136e4f8a0 Merge remote-tracking branch 'origin/issue-1240' 2023-01-01 22:23:26 +01:00
Matthias Koefferlein a3c9b6bc4a Merge remote-tracking branch 'origin/issue-1238' 2023-01-01 22:23:13 +01:00
Matthias Koefferlein 9e6965751d Merge branch 'issue-1234' 2023-01-01 22:22:44 +01:00
Matthias Koefferlein 420f8cfdc3 Fixed issue #1240 (Layer is not activated from layer properties file on first creation) 2023-01-01 18:45:37 +01:00
klayoutmatthias b213479e07 Fixed issue #1238 (Macro IDE: breakpoints not effective on Windows) 2022-12-31 18:51:08 +01:00
Matthias Koefferlein ca32b34dff Restored ability to build on Python 2 2022-12-28 23:50:38 +01:00
Matthias Koefferlein 16cd4276b7 Fixed some more small memory leaks 2022-12-28 17:45:24 +01:00
Matthias Koefferlein de6e1ffd53 Another performance fix for the many layers case 2022-12-28 17:15:51 +01:00
Matthias Koefferlein 1ad7dc0d98 More memory leaks fixed 2022-12-27 23:52:16 +01:00
Matthias Koefferlein 2cd932627c Fixed some memory leaks 2022-12-27 23:45:43 +01:00
Matthias Koefferlein 8575791fd9 Fixed a potential segfault cause by recursive call of paintEvent
This may happen when painting triggers some action that itself
triggers progress reporter (which paints itself).

The solution consists of blocking process_events during painting.
2022-12-27 22:57:14 +01:00
Matthias Koefferlein 8d025ddf9f Fixed non-Qt builds 2022-12-27 20:14:22 +01:00
Matthias Köfferlein 975a752844
Merge pull request #1231 from KLayout/issue-1228
Implemented solution for issue #1228
2022-12-27 20:12:20 +01:00
Matthias Koefferlein 4429d4c8f7 Fixed #1234 (layer list empty after clone panel) 2022-12-27 20:10:39 +01:00
Matthias Koefferlein e0e077d851 Further cleanup of Qt6 binding of QJson... classes 2022-12-26 23:48:16 +01:00
Matthias Koefferlein 76dd1b93bd Qt bindings compatibility with Qt 6.4.1 2022-12-26 21:43:27 +01:00
Matthias Koefferlein 50616ede58 Implemented solution for issue #1228
The "show parameter names" setting is now persisted.
Side effect: changing this setting will now trigger
a configuration update which has some side effects - e.g.
when "lazy update" is configured (parameters are reset).
But that appears to be acceptable.

In addition a second flaw was fixed: errors were not
properly reported by showing the error indicator.
The indicator was hidden immediately after showing it.
2022-12-25 20:44:56 +01:00
Matthias Koefferlein 44a2aa9ca1 Fixed #1230 (LVS browser crashes) and immediately dispatching a 0.28.2 version 2022-12-22 23:17:08 +01:00
Matthias Koefferlein 584dbcfd2f Really, really disabling doc, icon for no-Qt builds 2022-12-21 23:36:15 +01:00
Matthias Koefferlein 5a41443487 Really disabling doc and icon without Qt builds 2022-12-21 23:32:49 +01:00
Matthias Koefferlein f4957dbad2 Exclude doc/icon resources in non-Qt builds 2022-12-21 22:45:48 +01:00
Matthias Koefferlein e4e2204939 Added one missing dependencies 2022-12-21 18:34:41 +01:00
Matthias Koefferlein 7a76202411 Added a unit test to check the integrity of all XML doc pages 2022-12-20 20:43:04 +01:00
Matthias Koefferlein 9440985aed Trying to fix a segfault observed on MacOS 2022-12-18 17:43:48 +01:00
Matthias Koefferlein de784de7ea Wider data types for Windows (long is 32 bit) and for CBLOCK byte counts in OASIS reader 2022-12-18 14:31:46 +01:00
Matthias Koefferlein 24b8526361 Attempting to speed up layer list for many layers 2022-12-17 20:34:22 +01:00
Matthias Koefferlein 884203149a Added tests for recent changes 2022-12-17 20:33:50 +01:00
Matthias Koefferlein b1e78efcaa WIP: trying to enhance layout layer lookup performance. 2022-12-14 22:47:16 +01:00
Matthias Koefferlein ad27c9a51d WIP: trying to enhance layout layer lookup performance. 2022-12-13 23:41:34 +01:00
Matthias Koefferlein 199dea536a Fixed a small bug: d25 material list view background was reset to black with Auto background color 2022-12-13 22:49:49 +01:00
Matthias Koefferlein f49fa646fc Patched PR with leaner solution 2022-12-13 21:54:00 +01:00
Matthias Koefferlein 5a6ea0148a Merge remote-tracking branch 'quantamhd/fix_segfault' into wip 2022-12-13 21:52:40 +01:00
Ethan Mahintorabi 0a03a2809a
Fixes segfault on some linux systems
The static order initialization seems to be more present throughout
Klayout and might cause additional issues, but this fix stopped the
segfault on my machine. When compiling with asan there are a number
or other issues that could be addressed, but it's not clear if they're
real problems.

dbLayout change occured when using the python API to read a DEF layout.
When the layout is updated the code uses a const iterator which
implicitly wraps the non-const iterator. In the loop the end() is
implicitly wrapped, which tries to dereference a nullptr. My fix
checks to ensure that the non-const iterator is not null before trying
blindly dereference it.
2022-12-12 19:03:59 +00:00
Matthias Koefferlein 43089f31e4 Doc updates 2022-12-09 23:53:41 +01:00
Matthias Koefferlein 9607594020 Doc updates 2022-12-09 23:33:31 +01:00
Matthias Koefferlein 3e9d66ea6d Doc fixes 2022-12-09 23:21:09 +01:00
Matthias Koefferlein 88e960b7cf Regenerating doc. 2022-12-09 22:31:13 +01:00
Koefferlein Matthias (IFAG DES TCP FLP) 78383c88f3 Grml .. fixed implementation of previous commit 2022-12-09 16:33:02 +01:00
Koefferlein Matthias (IFAG DES TCP FLP) ffe3722001 Better backward compatibility for ruler configuration 2022-12-09 16:26:21 +01:00
Koefferlein Matthias (IFAG DES TCP FLP) c10cb86b68 Robust configuration of new ruler settings 2022-12-09 16:07:31 +01:00
Matthias Koefferlein 8d6508f69c Doc XML fixed 2022-12-09 07:26:10 +01:00
Matthias Koefferlein a5a3fff1f0 Fixed #1214 (LEF VIA parsing issue) 2022-12-08 22:36:14 +01:00
Matthias Koefferlein 299cea51a5 OASIS writer: Writing repetitions for edge-representation paths too 2022-12-08 20:36:03 +01:00
Matthias Koefferlein 2c94179589 Fixed #1216 (issue with moved - internal error)
This issue is fixed. In addition the following problems were fixed/found:
* General issue with handling merged state in in-place transform (merge shadow region needs to be updated too)
* moved now is hierarchical (also for edges)
2022-12-08 20:27:42 +01:00
Matthias Koefferlein 92d0174711 Fixed a build issue 2022-12-08 00:48:23 +01:00
Matthias Koefferlein d81e0ba51e Merge branch 'points-as-db-objects' 2022-12-07 21:59:02 +01:00
Matthias Koefferlein 5a252f2b29 Updated golden test data for fast DRC 2022-12-07 21:58:24 +01:00
Matthias Koefferlein a9833bf32e Small bugfix: do not mess up annotation templates after used older KLayout versions again. 2022-12-07 21:43:43 +01:00
Matthias Koefferlein 4281cde169 (maybe) fix builds for Qt without SSL 2022-12-06 22:40:41 +01:00
Matthias Koefferlein dc6408a068 Some cleanup 2022-12-06 18:44:29 +01:00
Matthias Koefferlein 4543eaabac Fixed some small flaws in instance properties dialog: sort by cell name, update tree on apply 2022-12-05 23:47:46 +01:00
Matthias Koefferlein 2601f870ec Fixed compile errors 2022-12-05 07:39:03 +01:00
Matthias Koefferlein 035232c978 Providing single-linked list implementation with fast size to address DRC merge performance issue on CentOS 2022-12-05 02:22:08 +01:00
Matthias Koefferlein 43ff59750a Fixed a race condition in DRC local processor with multiple threads 2022-12-04 21:04:21 +01:00
Matthias Koefferlein 0c89d8fec8 WIP: points as db objects - added tests, bug fixes 2022-12-04 19:54:29 +01:00
Matthias Koefferlein 4d04cf4fe3 WIP: introducing points as valid objects into database - implementation. Includes: edge pair perimeter and area. 2022-12-04 19:54:26 +01:00
Matthias Koefferlein 63ad38e9d9 Region#inside/not_inside/covering/not_covering is faster as it skips the merge step now. Fixed deep mode implementation (counting mode detection) with performance effect on outside/interacting too 2022-12-03 20:59:36 +01:00
Matthias Koefferlein cca20773a7 Include performance patch for array-vs-array interactions in deep mode 2022-12-02 17:53:15 +01:00
Matthias Koefferlein 77e9b511cf Fixed slow 'show only selected' with many layers (reason: too many updates of recent editor options layer list) 2022-12-02 17:32:18 +01:00
Matthias Koefferlein 78a139494a Avoid recursion in Application#notify during exception processing - more stable debugging 2022-12-02 17:21:12 +01:00
Matthias Koefferlein 2178b23d8d Fixed #1198 - 0.28 ignores link to script folder 2022-12-01 23:54:43 +01:00
Matthias Koefferlein 13874986b2 Bugfix, tests updated 2022-11-28 23:40:11 +01:00
Matthias Koefferlein a752257f52 Multiple empty-input shortcuts for DeepRegion - tests need update 2022-11-28 01:35:49 +01:00
Matthias Koefferlein 5597ee8960 DeepRegion performance: take fast path for DeepRegion::edges if merged polygons are available. 2022-11-27 21:59:06 +01:00
Matthias Koefferlein 5db45d7aee Proper setting of merged status after interacting/inside etc. 2022-11-27 19:43:53 +01:00
Matthias Koefferlein d76eef10af GSI enabling of Edges#in_and_out, Region#in_and_out and corresponding DRC feature 2022-11-27 15:59:18 +01:00
Matthias Koefferlein f6f4dbeb67 Edges#in/in_and_out: tests added 2022-11-27 15:31:25 +01:00
Matthias Koefferlein 0304930136 WIP: introducing Region#in_and_out and Edges#in_and_out, support for hierachical Edges#in, Tests updated 2022-11-27 14:53:30 +01:00
Matthias Koefferlein 25e61205d2 Deep implementation of in/not_in 2022-11-27 10:37:43 +01:00
Matthias Koefferlein 9008464268 WIP: hierarchical mode for Region#in and Region#not_in 2022-11-27 10:26:01 +01:00
Matthias Köfferlein 1f2e8b4012
Merge pull request #1193 from KLayout/issue-1189
Issue 1189 High memory footprint for DRC deck
2022-11-26 19:55:40 +01:00
Matthias Koefferlein fb60212a5b More numerical stability for reproducible tests drcSimpleTests:56 and 57 (45 degree angles) 2022-11-25 22:36:19 +01:00
Matthias Koefferlein 5057b0a626 Merge branch 'issue-1190' 2022-11-25 07:51:34 +01:00
Matthias Koefferlein 20b6608410 Test updated 2022-11-24 22:12:01 +01:00
Matthias Koefferlein 66b10245fe Another update of golden data 2022-11-24 21:54:04 +01:00
Matthias Koefferlein dc24ec2d15 Updated golden test data 2022-11-24 21:46:56 +01:00
Matthias Koefferlein d8dcb41ee0 force GC on LVS tests too. 2022-11-24 21:28:13 +01:00
Matthias Koefferlein 53d6e8d3cb DSS now keeps layouts (avoids excessive cell mapping), frequent GC in DRC tests for heavy GC load testing 2022-11-24 20:41:19 +01:00
Matthias Koefferlein e04875b4e0 Fixed a problem with object lifetime and tiling processor input found after GC became active. Added a documentation hint. 2022-11-23 01:03:36 +01:00