Commit Graph

5209 Commits

Author SHA1 Message Date
Matthias Koefferlein c1757c472e First steps towards fix: locking layout while recursive shape iterator is alive. 2024-10-25 00:36:28 +02:00
Matthias Koefferlein 0d2379ad75 WIP: debugging, added polygon callback for EdgeNeighborhoodVisitor 2024-10-24 17:55:56 +02:00
Matthias Koefferlein 7af91fa2b5 Further debugging 2024-10-23 22:53:16 +02:00
Matthias Koefferlein f7dde684f0 WIP: some basic debugging 2024-10-23 18:38:26 +02:00
Matthias Koefferlein 46b44e6287 WIP: builds, but not tested yet. 2024-10-21 23:35:34 +02:00
Matthias Koefferlein 422c88207c WIP 2024-10-21 22:16:16 +02:00
Matthias Koefferlein a983603dbc Preparing 0.29.8 2024-10-20 19:57:03 +02:00
Matthias Köfferlein 2d1658cbfa
Merge pull request #1906 from KLayout/issue-1899
Issue 1899
2024-10-20 16:50:25 +02:00
Matthias Köfferlein 05c13e66b0
Merge pull request #1904 from KLayout/bugfix/issue-1902
Bugfix/issue 1902
2024-10-20 13:28:50 +02:00
Matthias Köfferlein d5358c87ae
Merge pull request #1903 from KLayout/wip
Wip
2024-10-20 13:25:39 +02:00
Matthias Köfferlein 6c82177dfa
Merge pull request #1883 from KLayout/issue-1869
Fixed issue #1869 by adding a new option, -to or --top-output to strmxor
2024-10-20 13:22:12 +02:00
Matthias Koefferlein 761388f680 Updating definitions for Qt5 too - some additional operator bindings show up. 2024-10-19 23:15:37 +02:00
Matthias Koefferlein 0328c7e9bd Updating Qt binding files 2024-10-19 20:35:43 +02:00
Matthias Koefferlein 60294d9226 Implemented solution for issue #1900 (help/about dialog content selectable) 2024-10-19 17:27:56 +02:00
Matthias Koefferlein c6a9a59247 Maybe fixing second part of issue #1902. 2024-10-19 17:20:49 +02:00
Matthias Koefferlein f213e96d4a Partial fix for issue #1902 2024-10-19 17:12:53 +02:00
Matthias Köfferlein 9cf3c528a3
Merge pull request #1888 from KLayout/issue-1885
Fixed #1885
2024-10-19 16:32:42 +02:00
Matthias Köfferlein 6b906b9582
Merge pull request #1889 from KLayout/issue-1877
Fixed issue #1877 (rounding introduces DRC error in LEF/DEF via)
2024-10-19 16:31:43 +02:00
Matthias Köfferlein 78ec69f7b7
Merge pull request #1890 from KLayout/issue-1886
Issue #1886 fixed (doc update)
2024-10-19 16:31:30 +02:00
Matthias Köfferlein 63dfaccff9
Merge pull request #1891 from KLayout/issue-1887
issue #1887 fixed (doc update)
2024-10-19 16:31:12 +02:00
Matthias Koefferlein dc0f549ab4 Embedding fix for issue #1892 which is closely related to #1877 2024-10-14 23:41:55 +02:00
Matthias Koefferlein 7b7e98d49a Fixed issue #1877 (rounding introduces DRC error in LEF/DEF via) 2024-10-12 21:44:49 +02:00
Matthias Koefferlein 19b2aea471 Fixed #1885
Now, the default of --subst-char in strm2oas is "don't substitute".
You can explicitly specify "don't substitute" using "--subst-char="
(without value).
2024-10-12 21:19:09 +02:00
Matthias Koefferlein eeb05e47a5 Issue #1886 fixed (doc update) 2024-10-12 21:00:07 +02:00
Matthias Koefferlein dae0c16bf6 issue #1887 fixed (doc update) 2024-10-12 20:55:17 +02:00
Matthias Koefferlein 8dab13eb42 In DRC, with '@+' as target layout, maintain the original active cell view. This way, DRC can be re-run on the original layout, but each time generating a new output cellview. 2024-10-06 19:08:38 +02:00
Matthias Koefferlein f25693373e Small doc update 2024-10-06 19:07:42 +02:00
Matthias Koefferlein b44ff4b8e8 Avoid a potential hard assertion in debug mode 2024-10-06 19:07:17 +02:00
Matthias Koefferlein d7abbaca36 Fixed issue #1869 by adding a new option, -to or --top-output to strmxor 2024-10-06 18:33:53 +02:00
Matthias Köfferlein 3167af31c4
Merge pull request #1881 from KLayout/bugfix/issue-1880
Enhancing GDS2 writer float conversion such that less rounding occurs
2024-10-06 18:21:26 +02:00
Matthias Köfferlein 71a9e131a1
Merge pull request #1876 from KLayout/issue-1870
Bugfix for issue #1870: do not allow editing on invalid layers
2024-10-06 18:20:45 +02:00
Matthias Koefferlein 1289db7ebd Enhancing GDS2 writer float conversion such that less rounding occurs 2024-10-04 17:47:37 +02:00
Matthias Koefferlein 4be134e293 LEF/DEF reader recognizes existing layers by name now
This is helpful as it assigns layer/datatype numbers
automatically. If only a name is given for a layer
(i.e. "OUTLINE"), it will not match any previously
loaded layer and layer matching goes by layer/datatype
first.

This way, every "reload" added a new "OUTLINE" layer.
2024-10-03 18:50:00 +02:00
Matthias Koefferlein 10baec009c Bugfix for issue #1870: do not allow editing on invalid layers 2024-09-28 18:11:53 +02:00
Matthias Koefferlein 0dd7dfb48a Fixed issue #1874 (crash when copying a cell to another layout) 2024-09-28 17:53:26 +02:00
Matthias Koefferlein a0b8e4bea1 Updating stubs, DRC documentation 2024-09-22 21:11:21 +02:00
Matthias Koefferlein 4c33032f93 Merge branch 'better-not-break' 2024-09-22 20:08:10 +02:00
Matthias Koefferlein ec5de7b7f1 Compatibility with Python 3.13. 2024-09-22 02:38:33 +02:00
Matthias Koefferlein 2e58421fb3 Fixed builds without Qt and without libpng 2024-09-22 01:40:03 +02:00
Matthias Köfferlein 2d57feeae8
Merge pull request #1851 from KLayout/bugfix/issue-1832
Bugfix/issue 1832
2024-09-21 20:33:53 +02:00
Matthias Köfferlein ff0a2b8ab7
Merge pull request #1850 from KLayout/wip
Wip
2024-09-21 20:33:21 +02:00
Matthias Köfferlein cb984fb4b5
Merge pull request #1865 from KLayout/bugfix/issue-1864
Fixing issue #1864 (Copy & paste allows creating a recursive hierarchy)
2024-09-21 20:32:59 +02:00
Matthias Koefferlein b194d509cc Merge branch 'master' of github.com:KLayout/klayout 2024-09-20 23:49:27 +02:00
Matthias Koefferlein 43235a1ac2 Fixed CentOS7 builds 2024-09-20 23:49:16 +02:00
Matthias Koefferlein 5ece4d74ae Fixing issue #1864 (Copy & paste allows creating a recursive hierarchy) 2024-09-20 23:07:09 +02:00
Matthias Koefferlein 45a2803777 Merge branch 'wip' into better-not-break 2024-09-18 23:54:20 +02:00
Matthias Koefferlein c6b2dba847 Updating tests 2024-09-18 23:53:51 +02:00
Matthias Koefferlein a20611b4c0 Skip polygon splitting for triangles and boxes 2024-09-18 23:53:13 +02:00
Matthias Koefferlein e2718c5a54 Enhancing polygon splitting
With this enhancement, the area ratio in DRC can
be configured as a negative value. This indicates
to take the outer manhattan approximation of the
polygons. This way, skinny diagonals are not
resolved into many small triangles.
2024-09-18 23:18:23 +02:00
Matthias Koefferlein 531071765f Fixed issue #1860 (problem with undo after delete layer) 2024-09-18 19:11:04 +02:00
Matthias Koefferlein ca9b1d779d Print file name before warning from stream readers, compress warnings if necessary, add file name to errors 2024-09-16 23:48:30 +02:00
Matthias Köfferlein ff708186ec
Merge pull request #1855 from KLayout/issue-1853
Issue 1853 (slow Cell#write any Layout#write with huge polygons)
2024-09-16 23:24:08 +02:00
Matthias Koefferlein 56e88805a0 Refusing to write files with empty string and to a path that is a directory - the latter would rename the directory and later try to remove it 2024-09-15 17:15:25 +02:00
Matthias Koefferlein c917831eb0 Fixed issue #1857 (crash when closing window with properties dialog open) 2024-09-15 17:00:31 +02:00
Matthias Koefferlein 491048db4c Fixed new Python module handling for standalone module case 2024-09-15 16:28:43 +02:00
Matthias Koefferlein 20d599b1de Mute noisy diagnostics with Python debug builds, avoid post-Finalize Python API access by pre-Finalize cleanup of modules. This avoids an assertion in Python debug builds and is a better style anyway. 2024-09-15 16:28:39 +02:00
Matthias Koefferlein 97dcf0aa0b Porting polygon generator from std::deque to std::list with support by 'splice' ... should fix the problem 2024-09-14 16:21:07 +02:00
Matthias Koefferlein 16b6328f1c Fixed new Python module handling for standalone module case 2024-09-14 16:16:58 +02:00
Matthias Koefferlein f1f3c64ab1 Mute noisy diagnostics with Python debug builds, avoid post-Finalize Python API access by pre-Finalize cleanup of modules. This avoids an assertion in Python debug builds and is a better style anyway. 2024-09-14 15:33:03 +02:00
Matthias Koefferlein 79dd2084ce tl::list enhancement 2024-09-14 13:52:25 +02:00
Matthias Koefferlein 9e55a664fb [debug] timers with ns resolution 2024-09-14 10:45:28 +02:00
Matthias Koefferlein fc729584e1 Maybe std::deque::size was the problem 2024-09-13 23:28:16 +02:00
Matthias Koefferlein 153d1e3541 Trying to improve stability under PCell debugging conditions inside the IDE 2024-09-13 14:31:45 +02:00
Matthias Köfferlein 53b7c985f0
Merge pull request #1849 from KLayout/feature/issue-1836
Implemented solution for issue #1836 (Allow the usage of Cell.shapes(…
2024-09-08 22:24:40 +02:00
Matthias Köfferlein d70389c0c7
Merge pull request #1848 from KLayout/bugfix/issue-1847
Fixing bug #1847 (problem with fresh bindkey configuration)
2024-09-08 22:24:08 +02:00
Matthias Köfferlein b3fd5153fb
Merge pull request #1842 from KLayout/bugfix/issue-1835
Bugfix/issue 1835
2024-09-08 22:23:44 +02:00
Matthias Koefferlein 680874c8e3 More variants of Layout#properties_id + added Layout#properties_hash and Layout#properties_array. Clarification of documentation. 2024-09-08 19:45:10 +02:00
Matthias Koefferlein 68d15e01af DRC: more variants for layer#insert - labels, DBU-unit types 2024-09-08 19:16:40 +02:00
Matthias Koefferlein d902f5d53d Apply property changes before switching tree node in properties editor 2024-09-08 18:48:12 +02:00
Matthias Koefferlein 074238b116 Do not include 'purge_devices' in Netlist#simplify as such devices may be intentionally included as spare or dummy devices. If you want to remove them, use 'purge_devices' on 'netlist' and/or 'schematic' 2024-09-08 17:18:12 +02:00
Matthias Koefferlein ac2d20ae76 Implemented fix for issue #1832 (enhancements for Netlist#simplify and Netlist#combine_devices) 2024-09-08 00:25:24 +02:00
Matthias Koefferlein 20099a38b9 Fixing second part - small L,R and C were not handled properly 2024-09-08 00:25:18 +02:00
Matthias Koefferlein 4f72d3353f Fixed new Python module handling for standalone module case 2024-09-08 00:24:56 +02:00
Matthias Koefferlein 1e28e30e71 Mute noisy diagnostics with Python debug builds, avoid post-Finalize Python API access by pre-Finalize cleanup of modules. This avoids an assertion in Python debug builds and is a better style anyway. 2024-09-07 21:27:50 +02:00
Matthias Koefferlein bf965a7806 Implemented solution for issue #1836 (Allow the usage of Cell.shapes(LayerInfo(...)))
- For Cell#shapes, LayerInfo is an accepted argument now
- If the layer does not exist, it is created (non-const version)
  or an error is raised (const version)
- Cell#clear also accepts a LayerInfo object
- Layout#clear and Layout#delete_layer also accept
  a LayerInfo parameter

Rationale for supporting the clear and delete_layer methods:
These cases do nothing if the layer does not exist, so there
is a benefit of using them: it is not required to check first
if the layer exists.
2024-09-07 20:29:43 +02:00
Matthias Koefferlein 2c1d742275 Fixing bug #1847 (problem with fresh bindkey configuration) 2024-09-07 19:18:01 +02:00
Matthias Koefferlein a4467cfd3e Fixed a small bug: when deleting the only top cell, you could not create new cells as an error was issued saying 'no layout present' 2024-09-01 21:27:25 +02:00
Matthias Koefferlein bc78f4a0e9 Added test. 2024-09-01 21:26:44 +02:00
Matthias Koefferlein 716aa3c87b Fixing issue #1835 (saving a PCell as cell renders a layout that cannot be read) 2024-09-01 21:18:49 +02:00
Matthias Koefferlein 7dd7a96683 Fixed issue #1840: start is renamed to _start and finish is renamed to _finish, also some other methods that are purely internal. Python + Ruby is modified. 2024-09-01 19:48:13 +02:00
Matthias Koefferlein be7c4538ba Fixed a crash in the properties editor
This crash happened sometimes when clicking on the
node elements (e.g. "Boxes" or "Instances") of the
object tree, the node was the second or further one
and the category clicked at was containing one
item only.
2024-09-01 18:10:14 +02:00
Matthias Koefferlein 793c892b2b Reworking documentation of LayoutToNetlist 2024-09-01 17:47:25 +02:00
Matthias Koefferlein a8bedf7116 DRC doc update 2024-08-14 18:35:41 +02:00
Matthias Koefferlein 421999d8b5 update py stubs 2024-08-14 08:08:09 +02:00
Matthias Köfferlein 77782e4f1c
Merge pull request #1825 from KLayout/wip
Some enhancements to "Descend" and "Ascend"
2024-08-13 08:06:24 +02:00
Matthias Koefferlein 6a8be82e77 Added missing explicit template instantiations 2024-08-11 00:39:23 +02:00
Matthias Koefferlein 890904dfd0 Had to split dbHierProcessor as gcc choked on the many explicit template instantiations 2024-08-10 23:40:51 +02:00
Matthias Koefferlein 7a7ee8492b Some enhancements to "Descend" and "Ascend"
- Ascend now ascends further up if a child cell is
  selected as top level cell
- Descend now looks into transiently selected shapes
  or instances too (mouse hover mode)
- New feature "Descend into" which combines "Descend"
  with "make new top".
- Fixed a compiler warning in layLayoutViewBase.cc
2024-08-10 14:58:02 +02:00
Matthias Köfferlein 857fbc873c
Merge pull request #1824 from KLayout/bugfix/issue-1823
Fixed bug #1823 (select_all not working)
2024-08-10 13:33:48 +02:00
Matthias Köfferlein ea6ffb9b0c
Merge pull request #1822 from KLayout/feature/issue-1819
Feature/issue 1819
2024-08-10 13:33:36 +02:00
Matthias Köfferlein bccc421f3d
Merge pull request #1821 from KLayout/feature/issue-1816
Feature/issue 1816
2024-08-10 13:33:25 +02:00
Matthias Koefferlein aada3424a9 Fixed non-Qt builds 2024-08-09 17:45:24 +02:00
Matthias Koefferlein f218c009a0 Fixed bug #1823 (select_all not working)
1. Fixed "LayoutView#select_all"
2. Box selection now will select texts at their origin again:
   this way it is included in the bounding box. Point mode still
   takes the text's glyph area.
2024-08-08 23:26:05 +02:00
Matthias Koefferlein a601447d5f Properties dialog: stop handling 'Enter' key - use 'Ok' to close it 2024-08-08 20:46:22 +02:00
Matthias Koefferlein d31c9dbf6c Bugfix: avoid a segfault in the property editor due to invalid array access (difficult to reproduce). 2024-08-07 22:38:25 +02:00
Matthias Koefferlein 4631a806ef Provide a warning message when closing the window while an operation is ongoing. 2024-08-07 00:48:42 +02:00
Matthias Koefferlein 33a3a15791 Bugfix: 'netter' function in DRC wasn't working as described - it raised an error 2024-08-07 00:48:19 +02:00
Matthias Koefferlein fd1dc842e0 Generic GSI methods #_to_const_object (for testing) and #_const_cast. Fixed a class initialization issue - sub classes should not be registered by name at top level in Expressions 2024-08-07 00:11:48 +02:00
Matthias Koefferlein 82b3030352 const versions of Layout#cell and Layout#top_cell(s) 2024-08-06 18:19:31 +02:00
Matthias Koefferlein 3068dd2798 Allowing RBA::Net objects for DRCLayer#nets as well 2024-08-06 00:14:02 +02:00