Commit Graph

3589 Commits

Author SHA1 Message Date
Matthias Koefferlein 32928b583c Bug fixes (border cases), tests 2022-08-30 22:12:30 +02:00
Matthias Koefferlein 34f6e7bdba Bug fixes, tests 2022-08-30 20:43:32 +02:00
Matthias Koefferlein 5662f962d2 Bug fixes, tests. 2022-08-30 00:53:14 +02:00
Matthias Koefferlein e591d205c7 Bug fixes, tests. 2022-08-30 00:23:22 +02:00
Matthias Koefferlein f92d86a1e1 Bug fixes 2022-08-29 23:47:24 +02:00
Matthias Koefferlein aa267744dc Exposed more functions for db::Edges, more tests, debugging 2022-08-29 22:48:17 +02:00
Matthias Koefferlein bf91938133 Bug fixes, tests. 2022-08-29 22:17:37 +02:00
Matthias Koefferlein 956a27ec69 First implementation 2022-08-29 19:51:19 +02:00
Matthias Koefferlein 4af9b8b01c WIP: predicates for Edges implementation 2022-08-28 23:35:45 +02:00
Matthias Koefferlein 0b59697189 First new test 2022-08-27 22:28:15 +02:00
Matthias Koefferlein 728d60a510 More generic 'join' function for string sequences 2022-08-27 22:27:59 +02:00
Matthias Koefferlein a6ad6c8866 Comment update 2022-08-27 22:12:22 +02:00
Matthias Koefferlein a47bb67fd4 Removed unused code 2022-08-27 22:11:40 +02:00
Matthias Koefferlein 318a462cb4 WIP: first code pieces 2022-08-27 21:31:40 +02:00
Matthias Koefferlein d2ab4fc743 Doc updates. 2022-08-27 18:02:56 +02:00
Matthias Koefferlein 69617e8006 bbox_with_layer -> bbox 2022-08-27 17:58:17 +02:00
Matthias Koefferlein 67d8518926 Shapes#cell and Shapes#layout 2022-08-27 17:51:14 +02:00
Matthias Koefferlein e7177261ad LayerMap#map and mmap with optional log layer 2022-08-27 17:38:48 +02:00
Matthias Koefferlein 1f954d8758 Cell#read 2022-08-27 17:23:11 +02:00
Matthias Koefferlein f590d39c19 CellMapping: documentation, some convenience bindings 2022-08-27 15:38:10 +02:00
Matthias Koefferlein 7c776779a6 Bugfix: D25 view background color synchronized with layout view now 2022-08-27 14:09:09 +02:00
Matthias Koefferlein 5613ef1089 Bugfix: ruler menu was not initialized properly when not having configure templates 2022-08-22 22:09:08 +02:00
Matthias Koefferlein 5b40d86527 Bugfix: menu system wasn't working properly with menu tool buttons 2022-08-16 23:00:31 +02:00
Matthias Koefferlein 9ee5730b60 WIP: small patch avoiding generation of freaky files with fake-windows paths on Linux 2022-08-16 22:15:21 +02:00
Matthias Koefferlein 46364c2420 [consider merging] Reader format error with details showing dump or text 2022-08-16 21:56:07 +02:00
Matthias Koefferlein 49fe816294 More elaborate doc for transformations 2022-08-16 20:42:10 +02:00
Matthias Koefferlein e1552afcae Menu system: menu opening event, insert_menu variant with Action argument, clear_menu method, icon setter with QIcon 2022-08-15 23:43:45 +02:00
Matthias Koefferlein 21b14706dd data: URLs for abstract paths 2022-08-15 16:58:44 +02:00
Matthias Koefferlein 1099a3d7bb Implemented warn_level for all readers so warnings can be turned off 2022-08-13 22:15:07 +02:00
Matthias Koefferlein 90df9451b6 WIP: reworked log enabling in LVS, added 'no_lvs_hints' feature, updated tests 2022-08-13 18:30:02 +02:00
Matthias Koefferlein fd008b3810 WIP: more LVS hints 2022-08-13 01:46:12 +02:00
Matthias Koefferlein 47ec9a706b WIP: enhanced and debugged LVS hints 2022-08-13 01:36:25 +02:00
Matthias Koefferlein 829f78de8b WIP: attempting to produce reasonable messages on LVS mismatch (short detection) 2022-08-12 00:09:50 +02:00
Matthias Koefferlein 526f1aeacc [Consider merging] provide an option to produce antenna DRC debug output 2022-08-11 01:02:45 +02:00
Matthias Koefferlein 1d88e65689 [Consider merging] Fixed file content of test data - .oas is OASIS, .gds is GDSII 2022-08-10 21:48:00 +02:00
Matthias Koefferlein 0b0e440781 [Consider merging] method name parser exception for *= method (not seen as protected '=') 2022-08-10 21:05:34 +02:00
Matthias Koefferlein 38d2b8378d Merge remote-tracking branch 'origin/master' into wip 2022-08-10 20:40:27 +02:00
Matthias Köfferlein 7ffdc211e5
Fixed issue-1135 (LVS mismatch on parallel devices) (#1136)
* Fixed issue-1135 (LVS mismatch on parallel devices)

The fix consists of a more elaborate device identity analysis
following the topological matching. In this step, the devices
are identified according to their connections and parameters.
It is important to properly identify devices taking their
parameters into account as well as their connections.

* Second part of issue fixed (inverter chain ambiguity)

* Added test

* Updated tests

* Updated golden test results

* Updated golden test data for Windows

Co-authored-by: klayoutmatthias <matthias@klayout.org>
2022-08-10 20:27:11 +02:00
Matthias Koefferlein d48792a942 Trying to establish first log abilities to LVS compare 2022-08-10 00:41:19 +02:00
Matthias Koefferlein b1cbafbac0 WIP: netlist browser log viewer 2022-08-09 01:11:28 +02:00
Matthias Koefferlein 83946620d9 [Consider merging] fixed a bug in netlist browser reload 2022-08-09 01:11:03 +02:00
Matthias Koefferlein 2569527c3c WIP: Schematic netlist participates in net highlighting if applicable 2022-08-08 23:27:22 +02:00
Matthias Koefferlein 1e3ce081d4 WIP: bugfixed schematic netlist view 2022-08-08 22:23:01 +02:00
Matthias Koefferlein 51b521f2b7 WIP: enabling schematic view of netlist - needs debugging 2022-08-07 23:41:29 +02:00
Matthias Koefferlein de026fac86 WIP: debugging 2022-08-07 23:10:09 +02:00
Matthias Koefferlein 16341bdd1b WIP: bug fixing 2022-08-07 22:29:02 +02:00
Matthias Koefferlein 8029302e08 WIP: started integrating log view in netlist browser 2022-08-07 22:02:22 +02:00
Matthias Koefferlein 2e7524a0fe WIP: added tree model for log view for netlist browser 2022-08-07 19:41:56 +02:00
Matthias Koefferlein e1882b0de7 WIP: refactoring of L2N/LVSDB writer 2022-08-07 17:38:06 +02:00
Matthias Koefferlein 0083021220 [Consider merging] Some refactoring of L2N and LVSDB readers for more future compatibility 2022-08-07 00:24:05 +02:00
Matthias Koefferlein 9d36b3c71a Merge branch 'master' into wip 2022-08-06 18:52:41 +02:00
Matthias Koefferlein 42ddd07bfe Introducing 'close all' and 'close all except' for macro editor tabs, avoid one additional entry on the edit trace stack when raising an exception 2022-08-02 22:51:32 +02:00
Matthias Koefferlein 5e3358d6b1 Fixed #1131 fix 2022-08-01 23:11:17 +02:00
Matthias Koefferlein bfeb60986c Merge remote-tracking branch 'origin/msvc-building-with-debug' 2022-08-01 19:02:31 +02:00
Matthias Koefferlein 40b4b22f02 Added variants for CellInstArray constructor that take a Cell reference 2022-08-01 19:01:41 +02:00
Matthias Koefferlein 545ff11899 Merge branch 'master' of github.com:KLayout/klayout into wip 2022-08-01 18:50:48 +02:00
Matthias Köfferlein 716369de63
Issue 1126 (#1128)
* First attempt to fix. Rather experimental.

* Debugging and bug fixing

The basic issue was a missing break
However, correct computation of cache results for instance-to-instance cluster
interaction is implemented
Plus: identical and overlapping instances are no longer ignored except in the
case of exact duplicates. Otherwise these instance generate dead nets which
are not connected elsewhere.

* Added tests, fixed duplicate cells test, added missing files.

* Code simplification (removed invariant from transformation in cluster-to-cluster interaction cache)

* Skipping cell instance duplicates as some real-world testcases mandate so

* Updated test data
2022-08-01 18:50:07 +02:00
Matthias Köfferlein 801ef78990
Fixed issue-1131 (do not show non-existing files in MRU lists) (#1133)
* Fixed issue-1131 (do not show files in MRU lists which do no longer exist)

The solution consists of an extension of the Action system allowing to
dynamically hide or disable items. This currently works for menu items only.

This feature is used to dynamically *disable* (as of now, not hiding)
items from the four MRU lists corresponding to non-existing files.

In addition, a "clear list" menu has been added to the MRU lists.

* Small enhancement: file names can be URIs
2022-08-01 18:49:42 +02:00
Matthias Köfferlein e2f9015c26
Fixed issue #1132 by taking the first point of paths and polygons instead of center (center is still taken if the polygon is a rectangle) (#1134) 2022-08-01 18:47:20 +02:00
Matthias Koefferlein 429e43fe37 Fixed Qt-less LayoutView (removed QWidget as base class which is no longer true) 2022-07-31 00:11:20 +02:00
Matthias Koefferlein 3c5ca36081 [Consider merging] fixed a potential race condition with invalid Shapes container after clear 2022-07-31 00:10:36 +02:00
Matthias Koefferlein 43101ded7f More consistent handling of exceptions and their display in the Ruby debugger - without triggering too many breakpoints on rethrow and showing the reason for exceptions arising from argument errors 2022-07-30 19:28:14 +02:00
Matthias Koefferlein 590c4a6b31 Argument numbers/names for Ruby too 2022-07-30 01:32:27 +02:00
Matthias Koefferlein 7d078ed041 Express argument details in Python call errors 2022-07-29 23:58:19 +02:00
Matthias Koefferlein 82fe920ac9 Merge branch 'wip' 2022-07-29 22:31:42 +02:00
klayoutmatthias 1b728f1067 Removed duplicated method declarations in LayoutViewBase 2022-07-28 20:52:19 +02:00
klayoutmatthias bca7486082 [Consider merging] object lifetime problem with QLatin1String and GSI fixed 2022-07-26 21:02:48 +02:00
klayoutmatthias 5a9e3f9188 [Consider merging] One more iterator issue fixed 2022-07-26 21:02:17 +02:00
klayoutmatthias 0401f3b89c Fixed a non-problem that pops up with iterator assertions 2022-07-26 08:28:22 +02:00
klayoutmatthias 50a863bb26 [Consider merging] Fixed a potential memory corruption problem 2022-07-26 00:13:26 +02:00
klayoutmatthias da398e77fd [Consider merging] avoid a memory corruption issue in Netlist::flatten 2022-07-25 22:03:01 +02:00
klayoutmatthias 167bcbcc5f Enabling MSVC debug builds with iterator debugging on 2022-07-25 21:06:56 +02:00
Matthias Koefferlein 17f8a92a66 Fixed a memory corruption problem 2022-07-20 00:04:08 +02:00
Matthias Koefferlein 7999468bb9 Issue #1122 - avoid error messages which are confusing. 2022-07-18 00:18:10 +02:00
Matthias Koefferlein 24e8db996c Avoid a segfault on exit 2022-07-18 00:16:56 +02:00
Matthias Köfferlein 6ba372f1a9
Issue 1114 (#1121)
* Two patches to enable building on MSYS with gcc 12.1

1. Complete explicit instantiations in dbHierProcessor
2. Strict weak ordering is not present for std::type_info
   (using "before" on gcc 12.1). We need to work with plain
   pointers and use a translation table to associate pointers
   with classes.

* Fixed another place where std::type_info got important

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2022-07-17 19:59:49 +02:00
Matthias Köfferlein b1661d3c5e
Issue 1106 (#1107)
* Help browser problem mitigation: on Qt6 (?), QTextBrowser appears to be reloading images relative to the new URL on a URL change. This caused 'missing resource' exceptions. As long as the root cause of this problem is not know, the exceptions are turned into log errors now.

* Fixed issue 1106
2022-07-17 19:59:29 +02:00
Matthias Koefferlein 682cc0e491 More safeguards against crashes in the absence of a Manager object 2022-07-09 20:13:40 +02:00
Matthias Koefferlein f7ef538f34 Merge branch 'master' of github.com:KLayout/klayout 2022-07-08 01:35:59 +02:00
Matthias Koefferlein 8cdf060159 Prevent segfaults with rulers when there is no manager object 2022-07-08 01:35:39 +02:00
Matthias Koefferlein 26901454c4 Fixed a doc typo 2022-07-04 13:41:30 +02:00
Matthias Koefferlein 75d686a63f Changing default "is_merged" status for Edges and Region to false.
This was a problem with universal DRC which does not specifically
set the merged status. Furthermore, the default for DeepRegion and
DeepEdges was "false" already and now is aligned.
2022-07-04 00:52:55 +02:00
Matthias Koefferlein c700d2ed97 Better LVS template - align needs to come before simplify 2022-07-03 09:40:17 +02:00
Matthias Köfferlein 2f8a7149d3
Fixed issue-1111 (#1112) 2022-07-03 09:35:40 +02:00
Matthias Koefferlein c227cb9ef3 Small bug fix - constness was not intended for Device#net_for_terminal on non-const mode 2022-07-03 00:08:14 +02:00
Matthias Koefferlein b0268b62b0 Fixed a PR 1103 2022-07-02 23:15:44 +02:00
Balint Cristian 8705de49f7
Support python 3.11 changes. (#1104) 2022-06-29 00:58:23 +02:00
Niko Savola 241815e83c
Add setting to disable Save Needed dialog box (#1103)
* Add setting to disable Save Needed dialog box

* Add `m_always_exit_without_saving` to `MainWindow`
2022-06-29 00:26:52 +02:00
Matthias Koefferlein e5125160fb Merge branch 'master' of github.com:KLayout/klayout 2022-06-25 22:32:22 +02:00
Matthias Koefferlein d60b7562ab Bugfix: macro folders have not been parsed correctly 2022-06-25 10:45:43 +02:00
Matthias Köfferlein 55cb6f72f9
Merge pull request #1100 from KLayout/issue-1098
Issue 1098
2022-06-19 22:38:30 +02:00
Matthias Koefferlein ca11bce155 Bugfix: tab title did not change on 'save as' 2022-06-19 14:30:05 +02:00
Matthias Koefferlein 555d32f280 Bugfix: net color was not properly set in net tracer 2022-06-18 16:58:55 +02:00
Matthias Koefferlein 334540f660 Normalization of CellInstArray upon creation (GSI) 2022-06-18 13:48:04 +02:00
Matthias Koefferlein f6c0959b6b Implemented ortho snap for ruler move (as a whole) 2022-06-14 23:49:54 +02:00
Matthias Koefferlein 488dc561de Fixed a problem in deep XOR mode (wrong size implementation for tolerances) 2022-06-14 22:56:15 +02:00
Matthias Köfferlein 7a5737d55f
Merge pull request #1087 from KLayout/qtless-canvas2
Qtless canvas2
2022-06-14 22:51:57 +02:00
Matthias Koefferlein 5aa9f5ba13 Fixed some unit tests 2022-06-12 14:00:06 +02:00
Matthias Koefferlein 51be84ebc1 Avoid segfaults in batch mode 2022-06-11 00:41:06 +02:00
Matthias Koefferlein a853ed904f API enhancements for annotation template management 2022-06-09 00:14:32 +02:00