Commit Graph

5965 Commits

Author SHA1 Message Date
Matthias Koefferlein 1985f5663c Fixing issue #2293 2026-03-07 13:28:35 +01:00
Matthias Koefferlein f8646851e1 Updating doc and pyi files 2026-03-06 15:46:16 +01:00
Matthias Koefferlein a80d181cf1 Mutex got faster on i386, so threaded worker tests need to be adjusted 2026-03-05 21:16:17 +01:00
Matthias Köfferlein e82d2140b3
Merge pull request #2280 from KLayout/wip
Wip
2026-03-04 18:46:10 +01:00
Matthias Koefferlein 001deab767 Fixing Python module builds 2026-03-03 23:20:43 +01:00
Matthias Köfferlein 9b5c76f993
Merge pull request #2290 from KLayout/feature/issue-2248
Providing a solution for #2248
2026-03-03 22:38:31 +01:00
Matthias Köfferlein 5acb789ecf
Merge pull request #2289 from KLayout/bugfix/issue-2285
issues 2285 and 2286
2026-03-01 23:25:56 +01:00
Matthias Köfferlein abc1ffe9f6
Merge pull request #2276 from KLayout/bugfix/issue-2273
Bugfix/issue 2273
2026-03-01 23:25:22 +01:00
Matthias Köfferlein 0753aa47e4
Merge pull request #2288 from KLayout/bugfix/issue-2284
Implemented backup files for the configuration file
2026-03-01 23:25:08 +01:00
Matthias Koefferlein aaa165df32 Providing a solution for #2248
The solution is to introduce a new object, the layout handle.
A layout handle is a reference counting pointer to a layout.
It can be obtained from a cell view and stored somewhere.
If the cell view is closed, the layout will still exists
as long as a layout handle exists. A layout handle can be
used in LayoutView#show_layout in addition to the Layout
object to re-open a layout that existed in a closed view.
2026-03-01 21:13:40 +01:00
Matthias Koefferlein 992947f748 ReportDatabase#merge - a method to merge two report databases 2026-03-01 17:39:29 +01:00
Matthias Koefferlein 8a594c1626 Doc update 2026-03-01 15:32:21 +01:00
Matthias Koefferlein ca1d648917 Implementing --help as alias for -h and --version as alias for -v 2026-02-28 09:54:41 +01:00
Matthias Koefferlein f3b7146034 Added documentation to clarify constraints on the documentation parameter name 2026-02-28 09:48:54 +01:00
Matthias Koefferlein 25a6db267c Implemented backup files for the configuration file
Currently, up to 10 backups are kept.
"klayoutrc.1" is the most recent backup, "klayoutrc." the
second most recent etc.
2026-02-28 09:39:12 +01:00
Matthias Koefferlein 125f3b459f Added a marker attribute to turn off label frames: Marker#text_frame_enabled. Set it to false to disable the frame 2026-02-24 22:10:05 +01:00
Matthias Koefferlein b657cd9b57 Bugfix: double clicking an edge in partial mode opened the properties dialog, not setting a point 2026-02-24 21:44:33 +01:00
Matthias Koefferlein 3af5568663 [consider merging] Bugfix: Python did not support downcasting of PolygonWithProperties to Polygon on Shapes#polygon for example 2026-02-24 21:00:21 +01:00
Matthias Koefferlein de7ace9295 [consider merging] Bugfix: OASIS reader was not able to read S_GDS_PROPERTY from file level or under forward reference conditions 2026-02-24 19:17:14 +01:00
Matthias Koefferlein 7ae87404a0 [consider merging] Adding an option '-of|--format' to strmxor and strmclip to specify the output format instead of taking it from the suffix 2026-02-24 19:17:11 +01:00
Matthias Koefferlein 9f92c4eaa4 [consider merging] Bugfix: 'oasis_read_all_options' as always on in buddy tools. 2026-02-24 19:17:05 +01:00
Matthias Koefferlein c14d8cc877 [consider merging] proper cleanup of properties repo - this enables using user classes for names or values. Without this pre-finalization cleanup, the user class 'destroy' method may end up calling a method of an already destroyed class object. 2026-02-24 19:17:01 +01:00
Matthias Koefferlein bc49082955 Fixing a small glitch: drawing into a ghost cell is possible, but did not turn off the ghost cell flag. Now the flag is still on, but a non-empty cell is not considered a ghost cell for most purposes. 2026-02-19 23:26:48 +01:00
Matthias Koefferlein 95d6b0aca5 Fixing a potential segfault during drawing
This patch moves a lock inside the thread finishing
code such that a race condition of the finish sequence
and a random restart of the threads becomes impossible.
This problem has been observed while randomly zooming
with multiple drawing threads present. It's hard to
reproduce.
2026-02-19 22:34:10 +01:00
Matthias Koefferlein 94b84aad62 Fixing dialog title of 'round corners dialog' 2026-02-19 21:43:41 +01:00
Matthias Koefferlein 9534209240 Preparing to use C++20 atomics for thread locking, which is slightly more efficient. Right now, that's an experimental option. 2026-02-19 21:36:00 +01:00
Matthias Koefferlein a8119c5a53 Performance improvement for hierarchical processor
Problem was pushing of the results into the cell hierarchy
somehow lead to thread stalling. Likely due to bbox invalidation
and related effects. Solution is to store the results of
the operations inside the context structure (along with the
propagation information) and push it to the layout later in
a single step.
2026-02-19 00:03:25 +01:00
Matthias Koefferlein b685f89639 C++20 readiness 2026-02-16 23:49:23 +01:00
Matthias Koefferlein 3df88ae279 A small, but sometimes effective optimization of DRC check functions: if a feature is entirely covered (with interaction distance) by a box, it is enough to check against the box 2026-02-15 19:17:21 +01:00
Matthias Koefferlein 199cf1edfa Small enhancement: DRC 'profile' accepts 'true' as argument too 2026-02-15 15:17:13 +01:00
Matthias Koefferlein c3989f63e3 [consider merging] Performance improvement of netlist step (see https://www.klayout.de/forum/discussion/2839/drc-scripts-reports-and-parallelism#latest) 2026-02-14 23:39:00 +01:00
Matthias Koefferlein c1b4f97f33 Some fill tool enhancements
* It's possible to specify the fill cell origin now
  (this is the point where the first cell's lower left is placed)
* margin is taken into account when no step vectors are specified
* "No exclude" is default
2026-02-14 22:03:17 +01:00
Matthias Koefferlein ca43a6e9ce Overloaded base class methods also need to transfer ownership of arguments 2026-02-14 19:41:20 +01:00
Matthias Koefferlein cc7f049799 Fixing the Qt binding definitions to include addItem and for better alignment of Qt API 2026-02-12 23:05:08 +01:00
Matthias Koefferlein 5da83e670d Restoring drawing performance 2026-02-08 08:43:03 +01:00
Matthias Koefferlein 4a8a75f350 Updating doc. 2026-02-07 20:38:53 +01:00
Matthias Koefferlein 56fdbca1f5 Updating copyright to 2026 2026-02-07 17:12:53 +01:00
Matthias Köfferlein 31b7a5327b
Merge pull request #2271 from KLayout/bugfix/issue-2267
Bugfix/issue 2267
2026-02-07 09:46:52 +01:00
Matthias Köfferlein 887914944b
Merge pull request #2264 from KLayout/wip
Wip
2026-02-07 09:46:38 +01:00
Matthias Koefferlein 5298a99250 Fixing Python builds 2026-02-07 09:45:56 +01:00
Matthias Köfferlein 3f9d8906f9
Merge pull request #2266 from KLayout/bugfix/issue-2262
Bugfix/issue 2262
2026-02-07 09:18:03 +01:00
Matthias Koefferlein c15e24025e Experimental: do not list cells starting with underscore in library view 2026-02-06 23:24:05 +01:00
Matthias Koefferlein 2221efd96e Trying to fix Windows builds 2026-02-06 17:45:05 +01:00
Matthias Koefferlein ce877eed17 Fixed a unit test 2026-02-05 23:31:14 +01:00
Matthias Koefferlein 65fd3f3e50 Providing a fix for issue #2267
1. The script API "map_file" attribute has been changed
   to accept and supply nil (for no file), a string (for
   a file, empty is equivalent to "no file") and a list
   for multiple files which are merged. The split at "+"
   or "," has been dropped.
2. The strm* tools option ("--lefdef-map") has been changed
   to allow multiple occurances instead of split at "+" or ",".
2026-02-05 23:21:04 +01:00
Matthias Koefferlein 4e0befd8cd Trying to fix Windows builds 2026-02-05 22:16:58 +01:00
Matthias Koefferlein f68d02c6f3 Merge branch 'master' into wip 2026-02-05 22:05:24 +01:00
Matthias Koefferlein 22a197169d Trying to fix Windows builds 2026-02-05 22:04:10 +01:00
Matthias Köfferlein f53c6b8543
Merge pull request #2265 from KLayout/issue-2263
Following up on a number of Magic reader issues found in the course o…
2026-02-05 21:54:36 +01:00
Matthias Köfferlein 01d2ccbdc5
Merge pull request #2257 from KLayout/evaluate_net-enhancements
Evaluate net enhancements
2026-02-05 21:53:39 +01:00