Commit Graph

5339 Commits

Author SHA1 Message Date
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
Matthias Koefferlein 7431ec6f43 Solved an ownership issue in DRC which popped up after universal DRC nodes got deleted. 2022-11-23 00:36:08 +01:00
Matthias Koefferlein 86cc523c77 Bugfixed GCLocker implementation - is now recursive 2022-11-23 00:33:37 +01:00
Matthias Koefferlein d5725c3ed5 DRC performance issue fix attempt
Problem was that destruction of database objects was postponed during
callbacks, specifically the interpreter callback.

This caused db::Region objects to pile up.

The original feature was introduced to prevent issues when Ruby/C++
code interacts inside Qt UIs. The new fix does not disable GC, but
protects Ruby objects during method calls. Maybe that solves the problem too.
2022-11-22 22:06:10 +01:00
Matthias Koefferlein 6e2310186b Added tests 2022-11-21 23:33:28 +01:00
Matthias Koefferlein 16d662229d Fixed issue #1190 (Edges#extended_xx in deep mode) 2022-11-21 23:30:28 +01:00
Matthias Koefferlein c51f6ef18b Don't crash netlist browser when there is no netlist 2022-11-21 22:57:44 +01:00
Matthias Koefferlein 30ab1a13ca Added tests, documentation, doc bug fixes for angle-class edge selectors 2022-11-12 18:16:57 +01:00
Matthias Koefferlein 2341170065 First tests 2022-11-12 00:29:50 +01:00
Matthias Koefferlein b02d3b24a8 WIP: first draft of angle-class selectors for edges and edge pairs for simplifying edge orientation checks 2022-11-11 23:46:45 +01:00
Matthias Koefferlein aadb8510d2 Merge branch 'performance' into wip 2022-11-11 21:55:39 +01:00
Matthias Koefferlein f17719b43c Fixed builds for MSVC 2017 python module builds with setuptools. 2022-11-11 00:32:03 +01:00
Matthias Koefferlein 462976fc05 Convenience isotropic versions for Box::enlarge(d) 2022-11-10 22:31:13 +01:00
Matthias Koefferlein 67690b8ae8 Array properties are not grayed out in read-only mode on instance properties page 2022-11-10 22:18:53 +01:00
Matthias Koefferlein d7263eac74 Square and rectangle convenience ctor for GSI Box and DBox 2022-11-10 22:08:41 +01:00
Matthias Koefferlein 719cd28f76 Some enhancement for specifying klayout paths
$KLAYOUT_HOME can now be empty which has the same effect
than setting it to /dev/null - no home folder is present and
no packages will be searched there.

$KLAYOUT_PATH can be empty which makes KLayout not choose
the installation folder as the default path location as before.
2022-11-10 22:01:07 +01:00
Matthias Koefferlein c220ed0cbc Merge branch 'master' into wip 2022-11-09 23:30:38 +01:00
Matthias Koefferlein ea2486eaed Fixed a merge issue 2022-11-09 23:30:08 +01:00
Matthias Köfferlein 7589efd781
Merge pull request #1182 from KLayout/issue-1178
Fixed issue #1178 (technology-data xml results in SEGV)
2022-11-09 23:29:06 +01:00
Matthias Koefferlein 1edbd6232f Merge branch 'python-typehints' 2022-11-09 23:13:31 +01:00
Matthias Koefferlein 15ce9a79ea Small bug fixed: color chooser button was not showing the colors from the palette 2022-11-06 19:19:33 +01:00
Matthias Koefferlein 5b710fa3a4 More stable result of antenna debug output text placement 2022-11-06 19:02:35 +01:00
Matthias Koefferlein 65e11498d4 Fixed issue #1178 (technology-data xml results in SEGV)
Problem was that the test case contained multiple technologies
inside the config file and the cached values were not updated
in the XML reader upon migrating to the new multi-stack capable
scheme.
2022-11-06 16:53:26 +01:00
Matthias Köfferlein 4a80a10a2d
Merge pull request #1175 from KLayout/wip
Wip
2022-11-06 09:11:38 +01:00
Matthias Koefferlein cd3ca9e536 Do not use zstd compression for Qt6 as there is no built-in decompression 2022-11-06 01:23:39 +01:00
Matthias Koefferlein 240281d9ff [consider merging] Important patch: avoids incorrect initialization of Python classes 2022-11-06 01:12:16 +01:00
Matthias Koefferlein f338c13309 [consider merging] Important bug fix - do not use NDEBUG as ruby.h redefines it and this will lead to crashes in the debugger 2022-11-05 14:28:40 +01:00
Matthias Koefferlein f67b28c52a Supporting LayerInfo objects in fill pattern generation, doc updates 2022-11-04 23:45:10 +01:00
Matthias Koefferlein 131745433d Doc fixes 2022-11-04 23:16:15 +01:00
Matthias Koefferlein 25409a3d33 Doc updates 2022-11-04 22:08:12 +01:00
Matthias Koefferlein 9dac047003 Fixed small doc error 2022-11-04 21:25:12 +01:00
Matthias Koefferlein 8779e2a4cc Enabling build with Qt6 2022-11-03 14:26:17 +01:00
Matthias Koefferlein 27e04c61a0 Less compiler warnings 2022-11-02 23:35:18 +01:00
Matthias Koefferlein 9ec7c0ca44 layout_diff GSI binding: provide interface for edge pair diffs 2022-11-02 23:35:06 +01:00
Matthias Koefferlein a8ea234522 Enable Qt6 build from build.sh (gcc needs c++17) and less noisy builds with gcc 11 etc. 2022-11-02 23:09:44 +01:00
Matthias Koefferlein a759492f1e Avoid an assertion in macro editor when no script support is compiled in 2022-11-02 23:08:47 +01:00
Matthias Koefferlein d47cbeb231 [consider merging] Bugfix: generation of texts for antenna results 2022-11-02 23:07:55 +01:00
Matthias Koefferlein c8e60d666c Fixed #1167 (delete_cells slow) 2022-11-01 14:57:39 +01:00
Matthias Köfferlein c021a1834c
Fixed #1173 (DXF reader compatibility issue with ezdxf) (#1174) 2022-11-01 14:28:51 +01:00
Matthias Koefferlein 9f2cf7275f Fixed display of XOR progress (wasn't properly painting the error bitmaps) 2022-11-01 14:17:37 +01:00
Matthias Koefferlein 54833db00b Added feature for computing area and perimeter from selection 2022-11-01 13:46:48 +01:00
Matthias Koefferlein 2dc5c98416 Implemented readonly for PCell line-edit parameters as QLineEdit::readOnly 2022-11-01 13:46:36 +01:00
Matthias Koefferlein 548db003ed Debugged Ruby PCellDeclarationHelper, small enhancements 2022-10-30 10:00:51 +01:00
Matthias Koefferlein b1b51d3152 Bug fix Ruby PCell declaration helper - needs testing 2022-10-30 00:23:32 +02:00
Matthias Koefferlein 8aa135b964 Python implementation of PCell helper with callback 2022-10-30 00:15:48 +02:00
Matthias Koefferlein 1b666e1cc8 Bug fixes. 2022-10-29 23:43:56 +02:00
Matthias Koefferlein 194a6f3526 Added callback helper for Ruby PCellDeclarationHelper 2022-10-29 22:38:33 +02:00
Matthias Koefferlein 0e5842d36e Fixed some qrc files, added more attributes to PCellParameterState (tool tip, readonly, icon), added option to show parameter names 2022-10-29 21:20:16 +02:00
Matthias Koefferlein d00c4a94d6 WIP: first version GSI binding for callbacks 2022-10-29 00:22:54 +02:00
Matthias Koefferlein eb8c96054c WIP: preparations for callbacks in PCell code 2022-10-28 23:41:31 +02:00
Matthias Koefferlein d82ff4d3f8 [consider merging] Fixed a problem with editing guiding shapes 2022-10-28 23:40:48 +02:00
Matthias Koefferlein e6da3fc22c WIP: callbacks for PCells 2022-10-27 00:42:28 +02:00
Matthias Koefferlein 879059f830 Package manager: show details only when enabling the 'show details' button 2022-10-26 21:28:10 +02:00
Matthias Koefferlein 6e2055b555 Removed original doc for type hints 2022-10-26 17:02:29 +02:00
Matthias Koefferlein 0262926b11 Moved __deepcopy__ implementation and NotImplemented fallback from db.__init__ to C++ implementation for better performance and generalization. Added tests 2022-10-26 10:40:20 +02:00
Matthias Koefferlein a72888e331 Enabling polymorphic re-throw, hence supporting TypeError 2022-10-24 22:03:31 +02:00
Matthias Koefferlein 2b60e2f6e9 Preventing overriding of getters by is_.. predicates 2022-10-24 21:06:03 +02:00
Matthias Koefferlein c8d86f8e73 Improved doc, enough slots for getters and setters for Qt namespace 2022-10-24 20:53:58 +02:00
Matthias Koefferlein 24c6224a84 Do not produce Python methods masked by properties. 2022-10-24 20:31:46 +02:00
Matthias Koefferlein a39d22c438 Fixed problems with reserved words 2022-10-24 19:44:28 +02:00
Matthias Koefferlein 9011af54ac Class properties 2022-10-23 23:47:26 +02:00
Matthias Koefferlein eb31f67aeb Include .pyi in deployment, scrips enhanced for more compatibility with stubtest 2022-10-23 23:18:09 +02:00
Matthias Koefferlein daad80d5d5 Synthesize getters from is_... predicates, added getter for RecursiveShapeIterator#shape_flags 2022-10-23 22:08:06 +02:00
Matthias Koefferlein be6e05da55 WIP: refactoring, added special GSI methods for Python binding 2022-10-23 19:00:41 +02:00
Matthias Koefferlein 2c18bc6c46 WIP: refactoring 2022-10-23 18:31:13 +02:00
Matthias Koefferlein d3a36e66f2 Fixed a compiler warning 2022-10-20 23:29:35 +02:00
Matthias Koefferlein fbd4c84d84 Refactoring of pya/rba/expressions
Goal is to support "*!" which is a variant of multiplication
without the commutative nature.

The refactoring yields a more consistent handling of
Python specializations. Now this happens when the methods
are collected, rather than later. This way, specific behavior
for identically named synonyms can be implemented for example.
This is the case for the "*" operator in Trans which is partially
commutative and partially not.
2022-10-20 23:26:14 +02:00
Matthias Koefferlein c012bb846e Cherry-picked Python type hint enhancements from master 2022-10-19 22:13:03 +02:00
Matthias Koefferlein 11f6eb21e0 Added ParentCellInst#dinst 2022-10-18 21:52:40 +02:00
Matthias Koefferlein 8f6603d88e Fixed unit test fails 2022-10-18 01:26:42 +02:00
Matthias Koefferlein c9c9d6198b Fixed a Qt warning 2022-10-18 01:02:58 +02:00
Matthias Koefferlein 6f80d340f1 Fixed high-DPI mode of color chooser widget, some improvements on image properties dialog (false color bar) 2022-10-18 00:53:10 +02:00
Matthias Koefferlein 60e6523c30 Some bug fixes for user-property aware RDB and antenna check enhancements 2022-10-18 00:00:29 +02:00
Matthias Koefferlein db4baf3a6d Added scanning of texts to RDB 2022-10-17 22:56:08 +02:00
Matthias Koefferlein e4131b45a3 WIP: provide a way to report user properties to RDB, added antenna rule measurements as user properties. 2022-10-17 22:29:48 +02:00
Matthias Koefferlein 2cb3e037a9 Fixed a Qt warning 2022-10-16 23:43:09 +02:00
Matthias Koefferlein 2441775b76 Fixed a segfault in the layout view tests 2022-10-16 22:21:14 +02:00
Matthias Koefferlein 6e2c17b8c1 [consider merging] Qt4 compatibility 2022-10-16 22:02:11 +02:00
Matthias Koefferlein c6e457d3d6 [consider merging] Qt4 compatibility 2022-10-16 21:53:17 +02:00
Matthias Koefferlein dc927717c2 Multi-selection in properties dialog: bugfixing and finalization 2022-10-13 23:45:21 +02:00
Matthias Koefferlein 5144f239eb Merge branch 'master' into selection-list 2022-10-13 22:47:28 +02:00
Matthias Koefferlein 48ec894b1e Merge remote-tracking branch 'origin/enhanced-tab-widget' 2022-10-13 22:46:46 +02:00
Matthias Koefferlein bc06b688ca Merge branch 'master' into selection-list 2022-10-13 09:32:16 +02:00
Matthias Koefferlein 456f42972f Fixed Qt4 builds 2022-10-13 09:28:52 +02:00
Matthias Koefferlein 4f69edb11f WIP 2022-10-12 23:38:43 +02:00
Matthias Koefferlein 5e73b0f5f8 WIP: multi-selection properties on instances 2022-10-09 23:23:47 +02:00
Matthias Koefferlein b29382bc6a Enabling Qt4 builds 2022-10-09 21:30:28 +02:00
Matthias Köfferlein 8d1dcbb04a
Fixed issue-1164 (internal error on delete cells on archlinux) (#1166)
* Fixed issue-1164 (internal error on delete cells on archlinux)

* Found another location where take_cell would spoil cell_name

Co-authored-by: matthias <matthias@klayout.de>
2022-10-09 21:27:13 +02:00
Matthias Köfferlein c9cef44108
Merge pull request #1160 from EugeneZelenko/enhanced-tab-widget
Use enhanced tab widget for file tabs to easily navigate through larg…
2022-10-09 21:26:04 +02:00
Matthias Koefferlein 1006bf6d57 WIP: more on properties dialog 2022-10-08 18:53:27 +02:00
Matthias Koefferlein 83d37d4187 Some bug fixes 2022-10-08 10:38:54 +02:00
Matthias Koefferlein b047a310c2 WIP: multi selection property dialog 2022-10-08 00:52:38 +02:00
Matthias Koefferlein fb5df27310 WIP: multi selection property dialog 2022-10-08 00:44:18 +02:00
Matthias Koefferlein 187aae2649 WIP: multi selection property dialog 2022-10-08 00:37:39 +02:00
Matthias Koefferlein 43c7e87cc0 Fixed 'run.png' icon which should be 'run_16px.png' 2022-10-07 00:52:06 +02:00
Matthias Koefferlein 62e0d83b3a WIP: further development on selection tree on objects dialog 2022-10-07 00:44:12 +02:00
Matthias Koefferlein 56bdf3b2e0 WIP: Fixed colors of logo letters 2022-10-07 00:43:52 +02:00
Matthias Koefferlein eb004e45e1 WIP: generalized interface of properties page 2022-10-06 21:31:16 +02:00
Matthias Koefferlein ddff1f564f Provide high-res version of logo 2022-10-05 23:50:43 +02:00
Matthias Koefferlein 95686ea630 Modified 'close all except/left/right' to be effective on the tab the mouse points at. 2022-10-05 22:27:13 +02:00
Matthias Koefferlein 774b008417 Fixed a build error 2022-10-05 21:45:22 +02:00
Matthias Koefferlein 0c73b11f9b Added a convenience version for GenericDeviceExtractor#define_terminal which takes terminal and layer names 2022-10-03 22:02:13 +02:00
Matthias Koefferlein 2c96cc2a41 Salt package installation/uninstallation even and hooks. 2022-10-02 19:33:21 +02:00
Matthias Koefferlein 3b6ef57ddc Cross size in marked mode now scales with resolution 2022-10-01 23:22:36 +02:00
Matthias Koefferlein 914ad98858 Ruler edge marker is now visible also for scaling > 1 2022-10-01 21:59:34 +02:00
Matthias Koefferlein e4830b98b3 Small bugfixes 2022-10-01 19:52:12 +02:00
Matthias Koefferlein 1bff5c1ac3 WIP: layer icons now follow oversampling and high-resolution mode, new GSI method to fetch layer icon: LayoutView#icon_for_layer 2022-10-01 19:20:06 +02:00
Matthias Koefferlein 00e78eb76c Highres mode config option - display utilizes full pixel density 2022-10-01 16:24:05 +02:00
Matthias Koefferlein 4e4f316b71 Updated doc. 2022-10-01 13:33:53 +02:00
Matthias Koefferlein eedfc7c00f Doc update, tests for new annotation features 2022-10-01 13:04:25 +02:00
Matthias Koefferlein 069c3e6447 WIP: proper selection of angle and radius rulers 2022-10-01 12:39:05 +02:00
Matthias Koefferlein 1660a72b5a WIP: restored logo on 'About' page 2022-10-01 01:45:47 +02:00
Matthias Koefferlein 1057c0f268 WIP: debugging of radius rulers 2022-10-01 01:38:18 +02:00
Matthias Koefferlein 996f0d75e5 WIP: debugging of angle ruler, display options implemented 2022-10-01 00:43:29 +02:00
Matthias Koefferlein 8415e075ad WIP: angle measurement ruler, radius measurement one. Needs improvement 2022-09-28 23:58:34 +02:00
Matthias Koefferlein d2d321c35b WIP: point editing of multi-segment rulers 2022-09-28 21:16:47 +02:00
Matthias Koefferlein 8cbe5a2359 WIP: debugging, first implementation of new templates 2022-09-28 00:37:37 +02:00
Matthias Koefferlein 79102d399e WIP: enhancements, debugging of multi-segment rulers setup 2022-09-27 22:56:34 +02:00
Matthias Koefferlein 1c8a99fa26 WIP: some bug fixing 2022-09-26 23:52:32 +02:00
Matthias Koefferlein d1b7cd1f8f WIP: first steps towards multi-segment rulers 2022-09-26 23:37:22 +02:00
Matthias Koefferlein 7b4b345cf4 Multiple stacks for net tracer - finished selection box in net tracer dialog 2022-09-25 19:10:30 +02:00
Matthias Koefferlein 511f55d4da WIP: refined solution - some bug fixes, XML file is backward compatible now 2022-09-25 16:33:23 +02:00
Matthias Koefferlein 8919916da9 WIP: some debugging 2022-09-25 11:22:45 +02:00
Matthias Koefferlein 2505ebb9a3 WIP: some debugging 2022-09-25 10:53:23 +02:00
Matthias Koefferlein 40786d13e0 WIP: added missing files 2022-09-25 00:36:29 +02:00
Matthias Koefferlein 293f26ddc0 WIP: multiple tech stacks for net tracer, first steps 2022-09-25 00:35:59 +02:00
Matthias Koefferlein 42de46caf2 Added close left/right and clone to view tab's context menu too 2022-09-24 20:48:02 +02:00
Matthias Koefferlein 35aaf63051 As suggested by Eugene: close left/close right added to macro editor's tab tab ... layout views will follow 2022-09-24 19:53:31 +02:00
Matthias Koefferlein ab9fe57ec3 Modified the original solution somewhat
1. Provide a menu icon in SVG (24x24px and 16x16px for later use elsewhere)
2. Proposing a solution based on QTabBar again
   - Rationale: the QTabWidget is intended as container for widgets but
     in our case it is not (the ViewStack will handle this). I am worried
     about the implications, specifically as there are widgets added during
     insertTab which are also added to the view stack container.
     Apart from that the visual effect is somewhat ugly.
   - The menu button is not part of the EnhancedTabBar as it does not
     provide a corner widget. But it is available as "visually detached"
     sub-widget and the main window can build a HBoxLayout for it.
3. Correspondingly renaming EnhancedTabWidget to EnhancedTabBar
4. I ported the "close all" and "close all except" feature from the
   macro editor's tabs to the view tab bar as I think this fits nicely
   into this enhancement.
2022-09-23 23:31:23 +02:00
Matthias Koefferlein c8889504e6 Enabling high-DPI scaling in QApplication 2022-09-23 22:20:14 +02:00
Matthias Koefferlein 1107e5bacc Added doc and icon to dependencies. 2022-09-23 22:17:50 +02:00
Matthias Koefferlein 836cb9f6f6 Added doc and icon to dependencies. 2022-09-23 22:01:38 +02:00
Matthias Koefferlein 4236360620 Added doc and icon to dependencies. 2022-09-23 22:00:33 +02:00
Eugene Zelenko ef6b0f52d7 Use enhanced tab widget for file tabs to easily navigate through large number of opened files. 2022-09-22 17:43:32 -07:00
Matthias Koefferlein b8263d2529 Fixed #1159 (valgrind error) 2022-09-22 21:17:51 +02:00
Matthias Koefferlein db37bdd5e7 Enabling high-DPI scaling in QApplication 2022-09-22 21:13:23 +02:00
Matthias Köfferlein 0993de418e
Merge pull request #1156 from KLayout/resources-rework
Resources rework
2022-09-21 22:16:58 +02:00
Zopolis4 8f940c1679
Restrict overmatching MACH ifdef to only trigger on OSX and Mach 2022-09-21 16:52:25 +10:00
Matthias Koefferlein 04d0c7f898 Fixed builds 2022-09-19 18:08:34 +02:00
Matthias Koefferlein 4381f29945 Fixed builds 2022-09-19 01:05:45 +02:00
Matthias Koefferlein c9f4dac931 Fixed builds 2022-09-19 01:02:18 +02:00
Matthias Koefferlein ee3facfa13 Fixed printout 2022-09-18 21:53:38 +02:00
Matthias Koefferlein 029284f48a Some refactoring, layer icons are scaled for high DPI too now. 2022-09-18 20:56:37 +02:00
Matthias Koefferlein a6d4cdd254 More scaled pixmaps for dither pattern icons 2022-09-18 18:02:37 +02:00
Matthias Koefferlein e5fabb2b13 Using scaled dither pattern pixmaps in the UI elements 2022-09-18 17:37:49 +02:00
Matthias Koefferlein 48e3643a87 Attempting extrapolation of fill pattern 2022-09-18 16:09:11 +02:00
Matthias Koefferlein ef5cd11629 Properly scaling line width for high-DPI displays 2022-09-18 13:19:52 +02:00
Matthias Koefferlein f32da6aa87 Properly scaling line width for high-DPI displays 2022-09-18 12:19:06 +02:00
Matthias Koefferlein 86f9fbe9e7 Fixed palette buttons. 2022-09-17 23:11:19 +02:00
Matthias Koefferlein 8e480a0236 Changed pixmaps to 2x versions for high-DPI support 2022-09-17 22:13:16 +02:00
Matthias Koefferlein cf50b38090 Corrected resource file paths 2022-09-17 21:00:36 +02:00
Matthias Koefferlein 3172c1c4bc More icons turned into SVG 2022-09-17 17:37:42 +02:00
Matthias Koefferlein 84061b8362 More icons turned into SVG 2022-09-17 16:53:05 +02:00
Matthias Koefferlein 708214fa0d More icons turned into SVG 2022-09-17 16:19:50 +02:00
Matthias Koefferlein f0e692f8ed More icons turned into SVG 2022-09-17 15:55:42 +02:00
Matthias Koefferlein 7fe16df8ef More icons turned into SVG 2022-09-17 15:33:29 +02:00
Matthias Koefferlein 2635ca06af More icons turned into SVG 2022-09-17 15:28:06 +02:00
Matthias Koefferlein 188ae060be More icons converted 2022-09-17 02:06:24 +02:00
Matthias Koefferlein 85af2d35e8 More images to SVG 2022-09-17 01:40:02 +02:00
Matthias Koefferlein f598348046 More images to SVG 2022-09-17 01:25:46 +02:00
Matthias Koefferlein 2ae82af73a More icons to SVG 2022-09-17 00:00:28 +02:00
Matthias Koefferlein 306c8b789c More icons turned into SVG 2022-09-16 23:47:40 +02:00
Matthias Koefferlein 5c8c918fb9 More icons as SVG 2022-09-14 23:42:08 +02:00
Matthias Koefferlein 4ebe51fb05 More icons as SVG; small fixes to image landmark editor. 2022-09-14 23:32:03 +02:00
Matthias Koefferlein c7006898a6 More icons as SVG 2022-09-14 22:47:39 +02:00
Matthias Koefferlein 164748be22 More icons as SVG 2022-09-14 22:35:55 +02:00
Matthias Koefferlein fdfacd8532 More icons as SVG 2022-09-14 22:29:29 +02:00
Matthias Koefferlein 9454d6289d New icons turned to SVG 2022-09-14 21:37:24 +02:00
Matthias Koefferlein 0a9c396ae3 More icons turned into SVG 2022-09-14 21:25:59 +02:00
Matthias Koefferlein 22bbb4b320 More icons translated to SVG 2022-09-13 23:53:11 +02:00
Matthias Koefferlein a5b34037ab New icons translated 2022-09-13 18:23:47 +02:00
Matthias Koefferlein 878389e858 More icons transferred to SVG 2022-09-13 01:12:09 +02:00
Matthias Koefferlein 438a3c50e3 One more icon translated to SVG 2022-09-13 00:40:30 +02:00
Matthias Koefferlein faed280289 More icons translated to SVG 2022-09-13 00:29:16 +02:00
Matthias Koefferlein 1b8bf1f76d More icons translated 2022-09-12 23:14:49 +02:00
Matthias Koefferlein a3fe8cc49d More icons translated 2022-09-12 22:51:29 +02:00
Matthias Koefferlein 50e64c9c65 More icons translated to SVG 2022-09-12 22:13:50 +02:00
Matthias Koefferlein d881933840 More icons converted to SVG 2022-09-12 21:55:35 +02:00
Matthias Koefferlein 55bfb0d118 More icons converted to SVG 2022-09-12 20:30:09 +02:00
Matthias Koefferlein 212d9d2d27 Removed unused PNGs 2022-09-12 01:00:31 +02:00
Matthias Koefferlein 0a67691b3a [CONSIDER MERGING] Bugfix - selection did not work in non-editable mode 2022-09-12 00:54:44 +02:00
Matthias Koefferlein 3c2092bdc2 [CONSIDER MERGING] Bugfix - selection did not work in non-editable mode 2022-09-12 00:53:50 +02:00
Matthias Koefferlein 13d11ac714 More icons switched to SVG 2022-09-12 00:39:55 +02:00
Matthias Koefferlein e460314090 Deploying more SVG based icons 2022-09-11 22:02:10 +02:00
Matthias Koefferlein 4a241cc36c Deploying first high-res icons, enabled high-dpi icon scaling 2022-09-11 21:07:48 +02:00
Matthias Koefferlein 4f125d3768 More SVG images 2022-09-11 18:30:06 +02:00
Matthias Koefferlein 92fc8bbafc First SVG versions of icons 2022-09-11 18:25:00 +02:00
Matthias Koefferlein 2d17d87063 Added an extra target for updating DRC/LVS doc 2022-09-11 11:34:56 +02:00
Matthias Koefferlein 3b2efddd28 Refreshing DRC+LVS doc 2022-09-11 11:13:29 +02:00
Matthias Koefferlein 25c5b2f057 Refactoring of resources -> separate folders for doc and icons 2022-09-11 11:09:14 +02:00
Matthias Köfferlein 769b16ea3f
Issue 1145 (#1151)
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.

* Enhanced Shapes::is_valid so it's more reliable in detecting invalid shape objects.

* ObjectInstPath now has a validity attribute

* First implementation of solution for edtService (partial service to follow)

* Validating selection also for Partial Edit mode
2022-09-05 23:35:21 +02:00
Matthias Köfferlein 390cac87d3
Issue 1097 (#1148)
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.

* Implemented #1097 (discourage file compression, use CBLOCK)

* A warning is printed if file compression is enabled on OASIS
* A hint is present in the writer options
* CBLOCK is default (with fresh config) and for buddy tools
  (use --cblock=false to disable it)

* Strict mode is default too.

* Updated tests
2022-09-05 23:34:53 +02:00
Matthias Köfferlein 9ebb923d83
Issue 1144 (#1150)
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.

* Avoids a segfault during drawing: make sure the cell bbox update is not triggered in the drawing thread before it is stopped

* Fixed #1144 (wrong layer taken on copy layer)
2022-09-05 20:31:13 +02:00
Matthias Köfferlein f6c5062c71
Issue 1143 (#1149)
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.

* Fixed issue #1143 (technology default DBU not taken)
2022-09-05 20:30:57 +02:00
Matthias Köfferlein 7a9e9989d3
Merge pull request #1147 from KLayout/wip
Wip
2022-09-04 09:08:08 +02:00
Matthias Köfferlein e343939aaf
Merge pull request #1139 from KLayout/issue-1138
Issue 1138 (switch to suppress warnings on DXF reader - and other readers)
2022-09-04 09:07:51 +02:00
Matthias Koefferlein 8bf251b0c9 Removed some unused code 2022-09-04 00:25:24 +02:00
Matthias Koefferlein fd30881ace Proper cleanup avoid segfaults on exit 2022-09-03 23:36:31 +02:00
Matthias Koefferlein 290cd39ad9 Bugfix: consider device pixel ratio for layout canvas 2022-09-03 23:27:07 +02:00
Matthias Koefferlein 070ef54c66 Avoid a segfault with layout views without manager 2022-09-03 23:05:08 +02:00
Matthias Koefferlein 8dd002bd0f More enhancements to support LayoutView as widget 2022-09-03 22:53:01 +02:00
Matthias Koefferlein a9ef337c3b Layer toolbox is a view component now - that means it changes with the view. 2022-09-03 18:28:17 +02:00
Matthias Koefferlein 81eab3f1db More safety against deleting view in view widget 2022-09-03 16:59:27 +02:00
Matthias Koefferlein 0bbf4ad81c Properly selecting toolbar actions (Qt 5.15?) 2022-09-03 16:59:17 +02:00
Matthias Koefferlein f788818d12 Some more refactoring - further abstracting layout view from container widget 2022-09-03 01:48:50 +02:00
Matthias Koefferlein ec9f91b3d4 Fixed Qt binding build. 2022-09-02 00:56:59 +02:00
Matthias Koefferlein 3c53950eaa Rework needed for LayoutView management
The application got unstable on exit under various conditions
(e.g. LayoutView created in script). Reason was the ownership
management of LayoutView which interfered with Qt widget
lifetime management.

The solution now is based on a clean widget/view hierarchy
and a consistent plugin parent/child relationship.

In addition, a new class is enabled which allows creating
a true QWidget (rather QFrame) for a LayoutView again.
2022-09-02 00:47:21 +02:00
Matthias Koefferlein 0248834afb Qt4 compatibility 2022-09-01 19:35:18 +02:00
Thomas Ferreira de Lima 4d4f4b643b Added python stubs with type hinting and documentation. (#1125)
* Added python stubs with type hinting and documentation.

The documentation was extracted by inspecting the docstrings within each class and methods.
This should enable type hinting and checking by IDEs like VSCode.
The stubs were automatically generated, and have not been manually curated. (TODO)

* created tl ArgType to python type translator

* Fixing a pyaModule.cc bug

* almost finished stubgen

* fixing little bug in classes defined within classes

* Release version of the stubgen script. Good enough for release.

* Adding notes

* Including stubs when installing from source

* typechecking bugfix: missed checking is_iter()

* Cleaning up unused code for merge review

* Including stubs when installing from source (part deux)

* Putting the GenericDeviceExtractor name setting into the right place.

* Updating python stubs

Co-authored-by: Matthias Koefferlein <matthias@koefferlein.de>
2022-09-01 00:41:42 +02:00
Matthias Koefferlein cb3369e9be Merge remote-tracking branch 'origin/master' into wip 2022-09-01 00:27:33 +02:00
Matthias Koefferlein 50f6a1c270 Employ Qt 5.15 to hide LVS tabs in netlist browser 2022-09-01 00:26:27 +02:00
Matthias Koefferlein a81bca43a6 Added cmath include as suggested for Slackware 2022-08-31 23:56:53 +02:00
Matthias Koefferlein c720e2d3eb New DRC features:
* inside, not_inside, outside, not_outside (edge/edge, edge/polygon)
* related select_*
* split_inside, split_outside (edge/edge, edge/polygon)
* andnot (edge/edge, edge/polygon)
* inside_outside_part (edge/polygon)
2022-08-31 23:38:23 +02:00
Matthias Koefferlein 81b605c197 DRC implementation + doc update 2022-08-31 22:39:05 +02:00
Matthias Koefferlein bb0d4a6ecc GSI binding of new Edges features 2022-08-30 23:03:43 +02:00
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 0edeac2efa WIP 2022-06-26 23:06:29 +02:00
Matthias Koefferlein 47c9243c04 WIP 2022-06-26 21:16:34 +02:00
Matthias Koefferlein bed9ac94b0 WIP 2022-06-26 18:03:15 +02:00
Matthias Koefferlein 77b42980b6 WIP 2022-06-26 01:50:45 +02:00
Matthias Koefferlein 91c85172e3 WIP 2022-06-26 01:33:49 +02:00
Matthias Koefferlein 43b63923a7 WIP 2022-06-26 01:00:33 +02:00
Matthias Koefferlein 4ad9e98b7b Merge branch 'master' into performance 2022-06-25 22:32:47 +02:00
Matthias Koefferlein e5125160fb Merge branch 'master' of github.com:KLayout/klayout 2022-06-25 22:32:22 +02:00
Matthias Koefferlein 1930018f8f First attempt to implement DRC checks without merging - still required with certain options and not enabled to generic DRC function yet. 2022-06-25 21:40:44 +02:00
Matthias Koefferlein 959b5fe799 Faster hash of shape references (need to see what that is doing to test results) 2022-06-25 20:02:41 +02:00
Matthias Koefferlein d8f3c522c9 Removed a performance bottleneck (do not invalidate cache that often of inst to shape interaction computation) 2022-06-25 20:02:15 +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
Matthias Koefferlein 84cdefccf6 [MERGE] fixed variable view in debugger (Qt5?) 2022-06-09 00:14:06 +02:00
Matthias Koefferlein e2d5595243 Trying to fix Windows unit tests 2022-06-08 21:24:38 +02:00
Matthias Koefferlein 1020eb6e99 Basically enabling AbstractMenu in non-Qt mode
As a way to trigger actions inside the layout view
and plugins.

Right now, the layout view's menu is only a rudimentary one
as it lacks the top-level menus usually provided by the main window.
2022-06-07 23:28:10 +02:00
Matthias Koefferlein ac5c66400d Added ability to query modes and issue menu commands to LayoutView in non-Qt case. 2022-06-06 23:04:31 +02:00
Matthias Koefferlein 184c66b781 Provide a default configuration for LayoutView also in the non-Qt case 2022-06-02 23:55:40 +02:00
Matthias Koefferlein 91b642285d Decoupling tl, gsi and rdb libraries from Qt bindings to enable lean strmrun application 2022-06-01 22:42:55 +02:00
Matthias Koefferlein 254a44a133 Fixed a refactoring error 2022-06-01 00:08:02 +02:00
Matthias Köfferlein 17e643ce5b
Fixed #1086 (problems showing handle of a single circle) (#1089) 2022-05-31 00:22:42 +02:00
Matthias Köfferlein 4cbd28fd23
First implementation of issue-1075 fix: when editing a layer spec, the PCell parameters are analyzed and PCells are rewritten accordingly. (#1088) 2022-05-31 00:22:32 +02:00
Matthias Koefferlein b95027a21b Refactoring: lay::PixelBuffer, BitmapBuffer -> tl, added image functions to RdbItem in GSI 2022-05-31 00:20:47 +02:00
Matthias Koefferlein 62bbef53ac Refactoring: layColor -> tlColor 2022-05-30 23:21:32 +02:00
Matthias Koefferlein 84cf60dbb7 Preparations for rdb image API: base64 encoder and decoder without Qt 2022-05-29 21:50:23 +02:00
Matthias Koefferlein b8fa458ad6 Small add-on: -rr option for application 2022-05-29 20:15:56 +02:00
Matthias Koefferlein 7748433669 Bugfix: use last extension only for macro type determination 2022-05-29 20:06:04 +02:00
Matthias Koefferlein baa92d4455 Fixed non-Qt thread-local storage implementation: needs to reuse holder object when using 'setLocalData' 2022-05-29 19:33:30 +02:00
Matthias Koefferlein 6bcb7d0aa6 Added lym to lay library dependencies 2022-05-29 17:37:20 +02:00
Matthias Koefferlein f2b91997f0 Don't print Qt warnings for verbosity 0 - this will simplify the application tests 2022-05-29 17:36:54 +02:00
Matthias Koefferlein a02e9b4d05 Include lym dependency in lay library 2022-05-29 16:53:03 +02:00
Matthias Koefferlein a5d467b51e Dummy change to trigger builds 2022-05-29 14:47:22 +02:00
Matthias Koefferlein cc45cfbc43 Merge branch 'master' of github.com:KLayout/klayout 2022-05-29 14:31:19 +02:00
Matthias Koefferlein 6039340022 Fixed non-Qt build 2022-05-29 14:23:10 +02:00
Matthias Koefferlein 40eb3aaebe Enabling input files in batch mode, fixed a segfault during tests 2022-05-29 14:16:44 +02:00
Matthias Koefferlein e231f2b987 Must not use tl::to_string on quoted strings 2022-05-29 13:25:50 +02:00
Matthias Koefferlein 377e0f0249 Further reducing dependency of ui headers files generated for other modules 2022-05-29 12:06:21 +02:00
Matthias Koefferlein d0fc4b86b4 Fixed a compiler warning 2022-05-29 12:06:14 +02:00
Matthias Koefferlein bd5303f214 Removed a generated header dependency between modules 2022-05-29 12:06:10 +02:00
Matthias Koefferlein 1d8db227e5 Minor code enhancements 2022-05-29 11:41:40 +02:00
Matthias Koefferlein 68f05bf069 Added missing file 2022-05-29 10:14:29 +02:00
Matthias Koefferlein 29b3718b2d Further reducing dependency on Qt, fixed tests 2022-05-29 10:11:16 +02:00
Matthias Koefferlein 1edaf2b6b4 WIP: working on further consolidation of non-Qt case 2022-05-28 22:49:40 +02:00
Matthias Koefferlein 8e21dab345 Reworked lym::MacroCollection for not using Qt (too much) 2022-05-28 21:21:58 +02:00
Matthias Koefferlein 89547a6fde Enabling non-qt resources in InputStream 2022-05-28 01:37:59 +02:00
Matthias Koefferlein ca3d840cb2 Alternative implementation for resources for the non-Qt case. 2022-05-28 00:33:08 +02:00
Matthias Koefferlein b22c7091ae Skip resources in non-Qt case 2022-05-27 20:26:47 +02:00
Matthias Koefferlein d5723391fd Better dependency model for shared objects 2022-05-27 19:38:37 +02:00
Matthias Koefferlein ad87b22d91 Potential segfault fixed: skip invalid cell views 2022-05-27 19:20:37 +02:00
Matthias Koefferlein 001d695fcc Build fix for non-Qt case 2022-05-27 18:41:01 +02:00
Matthias Koefferlein 7702d8c200 libpng option in build script 2022-05-27 18:10:01 +02:00
Matthias Koefferlein 5eacb67368 Provide deferred execution also for the non-Qt case 2022-05-27 17:55:27 +02:00
Matthias Koefferlein e26afab4e5 Further reducing dependency of ui headers files generated for other modules 2022-05-27 16:49:05 +02:00
Matthias Koefferlein 29e481dd52 Fixed a compiler warning 2022-05-27 16:48:29 +02:00
Matthias Koefferlein 218117d6b6 Removed a generated header dependency between modules 2022-05-27 08:31:47 +02:00
Matthias Koefferlein 2e10ef300b Fixed implementation of LayoutView#resize in non-Qt case 2022-05-27 08:31:13 +02:00
Matthias Koefferlein 5825b7d0c6 Build fixed for Qt4 2022-05-27 07:57:04 +02:00
Matthias Koefferlein 2b568cdd5e Fixed some build errors, added tests 2022-05-26 07:47:35 +02:00
Matthias Koefferlein 03761768cf Enabled headless LayoutView. Works. 2022-05-26 01:51:09 +02:00
Matthias Koefferlein 96f3ce65c1 First steps towards LayoutView for headless mode, optional arguments for Layout#load_layout and MainWindow#load_layout 2022-05-26 00:07:22 +02:00
Matthias Koefferlein c5ecb67557 Merge branch 'master' of github.com:KLayout/klayout 2022-05-24 23:45:24 +02:00
Matthias Koefferlein a4dd5c1d3c Fixed an issue introduced during qtless-canvas development (message was not displayed) 2022-05-24 23:44:08 +02:00
Matthias Koefferlein 348faa64b3 Another fix for Qt <5.10 2022-05-24 12:54:52 +02:00
Matthias Koefferlein d6f320bc8b Fixed build for Qt <5.10, MSVC 2022-05-24 07:48:20 +02:00
Matthias Koefferlein c933d1a2b5 Fixed an issue with MSVC builds 2022-05-23 23:28:12 +02:00
Matthias Koefferlein 49ee4439a0 Linker inputs for Windows builds 2022-05-23 23:03:46 +02:00
Matthias Koefferlein 3f4fe62dc5 Merge branch 'master' into qtless-canvas 2022-05-23 20:42:39 +02:00
Matthias Köfferlein a03464d441
Issue 1079 (#1083)
* WIP: some convenience (self.param=() for Ruby PCell impl), a bug fix (crash on call of pcell_parameter on wrong cell), update of tests

* Implemented solution for #1079 (refresh calls coerce_parameters)

* Basic.CIRCLE modified such that coerce_parameters_impl also catches the case of a programmatic change of actual_radius and this function will update radius and the handle accordingly

* Modified Basic PCells such that they work with coerce_parameters also if generated programmatically

* Added tests
2022-05-23 20:38:10 +02:00
Matthias Köfferlein b84ec19da1
Issue 1071 (GDS2Text format options issues) (#1085)
* Fixed first issue (UI problem with GDS2Text options)

* Fixed problem with 'save' when the file extension does not indicate one of the known formats

In this case, and when plain 'save' is used, the original format is delivered.
The session files also store the original format now.
The statistics page will now indicate the format of the file that was loaded.
2022-05-23 20:37:26 +02:00
Matthias Köfferlein 3a2d44bd12
Fixed #1081 (#1084) 2022-05-19 22:14:07 +02:00
Matthias Koefferlein 375b98e621 Fixed an issue with type detection for GSI in non-QT case 2022-05-17 22:39:42 +02:00
Matthias Koefferlein d4a981cc57 Added a missing dependency in .pro 2022-05-17 22:34:38 +02:00
Matthias Koefferlein a42b7d211e More fixes. 2022-05-16 23:53:16 +02:00
Matthias Koefferlein 9763659bfe Fixed Windows build (hopefully) 2022-05-16 22:18:22 +02:00
Matthias Koefferlein beb5af55a7 Fixed lay::Color test for Qt4 2022-05-16 20:08:05 +02:00
Matthias Koefferlein d8f51a5ef0 Qt4 compatibility 2022-05-16 00:07:31 +02:00
Matthias Koefferlein baae3796a7 Fixed an build issue with forward-declared QColor 2022-05-15 22:58:42 +02:00
Matthias Koefferlein bdc8fc2801 WIP: some fixes at unit test level 2022-05-15 21:47:15 +02:00
Matthias Koefferlein 249642d5f3 Python module tests generalized 2022-05-15 20:17:23 +02:00
Matthias Koefferlein 104975a14e WIP: fixed pymod 2022-05-15 19:34:46 +02:00
Matthias Koefferlein 856635bc82 WIP: debugging, enabled pymod builds ... 2022-05-15 18:45:07 +02:00
Matthias Koefferlein f0dcd59060 WIP 2022-05-15 17:29:08 +02:00
Matthias Koefferlein f5b4bbb62c WIP 2022-05-15 10:31:09 +02:00
Matthias Koefferlein b17b2714a5 WIP 2022-05-15 01:25:36 +02:00
Matthias Koefferlein d2f2d630d9 WIP 2022-05-15 01:19:56 +02:00
Matthias Koefferlein 53490a9faf WIP 2022-05-15 01:14:29 +02:00
Matthias Koefferlein 5fed1648e6 WIP 2022-05-15 00:54:15 +02:00
Matthias Koefferlein 332daf836e WIP: split laybasic into layui and layview to separate Qt and non-Qt part even more 2022-05-15 00:47:59 +02:00
Matthias Koefferlein 585aa4667f Fixed non-Qt-binding case 2022-05-14 01:48:59 +02:00
Matthias Koefferlein 684ece41d1 Fixed qmake-based builds after changing setup.py 2022-05-14 00:00:35 +02:00
Matthias Koefferlein 26dbb4003e Better error messages on missing module imports in Python modules 2022-05-13 23:20:58 +02:00
Matthias Koefferlein 5facc418cb WIP: futher improvements on Python module for Qt-less case 2022-05-12 23:42:21 +02:00
Matthias Koefferlein d01ea49246 [CONSIDER MERGING] fixed a typo in gsiDeclBasic.cc which might cause a duplicate GSI class duplicatge registration assertion 2022-05-12 23:42:06 +02:00
Matthias Koefferlein b2b5e5ad55 Modifications to enable building of Qt-less canvas in setup.py 2022-05-12 01:53:16 +02:00
Matthias Koefferlein f57f1cc228 Fixed a segfault on second open 2022-05-09 23:20:46 +02:00
Matthias Koefferlein fbc31fd854 Navigation keys work again, fixed a segfault when showing the navigator window 2022-05-09 23:07:40 +02:00
Matthias Koefferlein 008fb06a3e Code cleanup 2022-05-09 22:36:08 +02:00
Matthias Koefferlein 128afc43cf Support for grayscale formats in PNG reader for PixelBuffer, writing non-alpha RGB versions from non-transparent PixelBuffers 2022-05-09 22:13:35 +02:00
Matthias Koefferlein 7bb3e0daf3 Bugfix for color interpolation (asserted) 2022-05-09 21:21:45 +02:00
Matthias Koefferlein fd8407b35b Code simplification and less image copies 2022-05-09 01:15:14 +02:00
Matthias Koefferlein d0f566f84e Fixed a memory bug 2022-05-09 01:05:15 +02:00
Matthias Koefferlein f827e693ef Fixed Qt-less build 2022-05-09 00:29:48 +02:00
Matthias Koefferlein 7fe0e95eee WIP: first debugging 2022-05-09 00:16:48 +02:00
Matthias Koefferlein a737b80b65 Some cleanup + added TODO comments 2022-05-08 23:58:19 +02:00
Matthias Koefferlein f65c3d5fd7 Enabled edt, ant and img for Qt-less builds, added missing files 2022-05-08 22:27:39 +02:00
Matthias Koefferlein 37a42b70db WIP: edt enabled for Qt-less 2022-05-08 19:44:14 +02:00
Matthias Koefferlein aea861f9b4 WIP: preparing synthetic events for LayoutView in non-Qt case 2022-05-08 18:33:40 +02:00
Matthias Koefferlein c8be882785 Removed some more Qt dependencies 2022-05-07 23:56:48 +02:00
Matthias Koefferlein 1ad9dd2c11 WIP: preparations for a non-Qt event loop protocol 2022-05-07 23:44:08 +02:00
Matthias Koefferlein 42f0a79dee Resize method and tests 2022-05-07 22:12:36 +02:00
Matthias Koefferlein 7b85bf7de2 Enabled Qt-less builds, tests passing 2022-05-07 20:41:46 +02:00
Matthias Koefferlein 0198c7cd69 WIP 2022-05-07 19:57:34 +02:00
Matthias Koefferlein 41cbef1e5a Tests for new LayoutView features 2022-05-07 19:13:01 +02:00
Matthias Koefferlein 585ab0f310 Fixed tests 2022-05-07 18:57:33 +02:00
Matthias Koefferlein 101544ab78 Equality operator in PixelBuffer 2022-05-07 18:48:45 +02:00
Matthias Koefferlein 958e1f7c59 WIP: base class-implemented methods need to be qualified in GSI binding :( 2022-05-07 18:48:33 +02:00
Matthias Koefferlein e6061ff96f CONSIDER MERGING: avoid a segfault due to early delete of a LayoutView object 2022-05-07 18:39:56 +02:00
Matthias Koefferlein 3c11fe61c3 WIP: enabling PixelBuffer and BitmapBuffer for RBA::LayoutView 2022-05-07 14:36:52 +02:00
Matthias Koefferlein 32813b80f2 GSI binding for PixelBuffer and tests 2022-05-07 12:53:00 +02:00
Matthias Koefferlein 0798c4de51 Bugfixes and tests for PNG support 2022-05-07 02:14:08 +02:00
Matthias Koefferlein 067f59ab0a WIP: PNG support for Qt-less apps through libpng in lay::PixelBuffer 2022-05-07 01:33:16 +02:00
Matthias Koefferlein 7291a3dc47 Fixed LayoutView tests 2022-05-06 00:02:45 +02:00
Matthias Koefferlein a2b90d7a8e IMPORTANT (consider merging): fixed a potential segfault on LayoutView construction 2022-05-06 00:02:35 +02:00
Matthias Koefferlein 51666eb439 Fixed non-Qt build 2022-05-05 23:44:47 +02:00
Matthias Koefferlein 6feed82808 Bug fixes and tests for LayoutView 2022-05-05 23:37:33 +02:00
Matthias Koefferlein 0877de73d4 Refactoring: substitute QImage by lay::PixelBuffer 2022-05-04 23:34:34 +02:00
Matthias Koefferlein 5fa984324e PixelBuffer: versions to create independent copies into QImage 2022-05-04 21:16:10 +02:00
Matthias Koefferlein f51fac5f0f Renamed lay::Image to lay::PixelBuffer 2022-05-04 02:23:23 +02:00
Matthias Koefferlein 17cbcc2877 Added mono image class 2022-05-04 02:18:01 +02:00
Matthias Koefferlein 2088881110 Added transparent flag tests 2022-05-02 22:48:32 +02:00
Matthias Koefferlein 1cdc26b137 Added transparent flag for lay::Image 2022-05-02 22:46:56 +02:00
Matthias Koefferlein d7b9bd71a1 Added performance tests for image 2022-05-02 22:27:30 +02:00
Matthias Koefferlein 3a2ae4ede1 WIP: More tests for lay::Image 2022-05-02 01:02:46 +02:00
Matthias Koefferlein 373f307ae6 WIP: image object, first steps 2022-05-02 00:26:13 +02:00
Matthias Koefferlein 0b48cb9020 WIP: added new lay::Image class 2022-05-02 00:02:47 +02:00
Matthias Koefferlein e49b9a5e8a WIP 2022-05-01 21:56:47 +02:00
Matthias Koefferlein 48f5f95a8f WIP 2022-05-01 20:23:53 +02:00
Matthias Koefferlein 0a804f2e32 WIP 2022-05-01 19:29:20 +02:00
Matthias Koefferlein 8cbb49d5f9 WIP 2022-05-01 17:47:00 +02:00
Matthias Koefferlein 9b7a237a79 WIP 2022-05-01 10:30:26 +02:00
Matthias Koefferlein 63a1b24d24 WIP 2022-04-30 23:08:05 +02:00
Matthias Koefferlein c4be80bb2f WIP 2022-04-30 20:51:54 +02:00
Matthias Koefferlein 2378f7964e WIP 2022-04-30 19:13:36 +02:00
Matthias Koefferlein 2298a9a5c8 WIP 2022-04-29 23:40:07 +02:00
Matthias Koefferlein 7048dde7b3 WIP: HSV support in lay::Color 2022-04-27 23:03:17 +02:00
Matthias Koefferlein a6f2528aff WIP 2022-04-26 00:31:10 +02:00
Matthias Koefferlein c3f3fd00ce WIP 2022-04-26 00:09:39 +02:00
Matthias Koefferlein 51e7c0a038 WIP 2022-04-25 23:09:57 +02:00
Matthias Koefferlein 177290f680 Some cleanup 2022-04-24 23:33:42 +02:00
Matthias Koefferlein 1b129758d8 More range for NoQt option - covers lym (without MacroCollection), drc, lvs and buddies now 2022-04-24 23:28:04 +02:00
Matthias Köfferlein 9cb77d6222
Lefdef enhancements (#1053)
* Implementated patch as suggested by issue-1047

* Implementing blend-mode for LEF/DEF for a first solution for issue-1048

* Added testcase, fixed other tests

* Issue-1050 fixed - now REGION, BLOCKAGE and DIEAREA are relevant from mapping file, nothing else

* Bug fixes

* Experimental: DEF multipart paths

* Experimental: ignore LEF wire extension, ignore PATTERNNAME

* Implemented PATTERNNAME in DEF instead of LEF ..

* Implemented nondefaultrule vias

* LEF/DEF: non-defaultrule vias need a name suffix.

* Refined solution for NDR via names, updated test data

* Updated test data

* Multiple map files and 'REGIONS FENCE' + 'REGIONS GUIDE' layer mapping entries.

* Added test data, updated doc.

* Some enhancements and feedback

REGIONS in map files -> REGION
REGION NONE for map files (maps REGIONs which are neither GUIDE or FENCE)
Bugfix: VIA with ORIGIN
No via cell name prefix by default for buddy tools

* Simplified buddy tool options for LEF/DEF property names

Dropped --lefdef-dont-produce-instance-names,
--lefdef-dont-produce-pin-names and --lefdef-dont-produce-net-names
options. Instead, these options have to be enabled by giving
the respective property names.

Writing the property names takes some space and these
options are simply confusing and redundant.

* Issue a warning about missing cut geometry for a DEF via with PATTERNNAME (which is ignored)

* Fixed issue-1065
2022-04-23 22:26:37 +02:00
klayoutmatthias fd4fe5ce62 Merge branch 'master' of https://github.com/KLayout/klayout into qt6 2022-04-16 20:13:04 +02:00
Matthias Köfferlein 3615b50fc4
A couple of enhancements and bugfixes found during issue-1059 research (#1062)
* Opportunity fix: library selection box listed libraries with technology even though no technology is selected.

* Opportunity: show PCell errors on new error layer. Previously, errors were only shown when the PCell had at least a single layer parameter

The error text is drawn together with guiding shapes. Disabling guiding shapes will
turn off error display.

* Opportunity: fixed an issue when reloading a library immediately after loading a layout: in this case, the library connection got lost and cells were substituted by static ones

* Opportunity: added a layout cleanup for the following case: a layout is loaded without the library present - giving defunct cells. Then the library is registered and defunct cells are reconnected.
2022-04-10 18:44:24 +02:00
Matthias Köfferlein cb527cc50b
Issue-1058: implemented backspace button for path and polygon (#1061) 2022-04-10 18:41:58 +02:00
Matthias Köfferlein 0df479b29c
Issue 1057 (Library#refresh enhancements) (#1060)
* Added Layout#refresh and added that to Library#refresh

* Doc updates, clarification
2022-04-10 18:41:26 +02:00
Matthias Köfferlein 19aac2abd7
Merge pull request #1055 from KLayout/enums-vs-int
Enums vs int
2022-04-09 18:07:57 +02:00
Matthias Köfferlein 6a842cdc53
First attempt to implement X2 net names. Needs reconfirmation. (#1056) 2022-04-09 18:07:30 +02:00
Matthias Koefferlein a1318599fe Fixed #1054 (only an issue in debug builds so far) 2022-04-04 23:28:16 +02:00
Matthias Koefferlein 981db08dea More automatic conversion of int to enum and vice versa + automatic object-to-variant conversion when supplying to_int, to_double or to_variant functions. Discussion 2052. 2022-04-04 01:09:19 +02:00
Matthias Koefferlein afe7de9ca7 Fixed a potential crash when calling 'technology_changed_event' on an invalid CellViewRef. 2022-04-04 01:07:47 +02:00
Matthias Köfferlein f8bd4dafaf
Pdf documentation (#1052)
* Some doc fixes as preparation for PDF generation

* Some doc bug fixes and enhancements for PDF manual generation

* Fixed a number of invalid references found during PDF generation

* Enable PCellDeclarationHelper doc for help system

* Fixed doc text

* Fixed some doc issues with invalid links etc.
2022-04-03 20:51:29 +02:00
Matthias Köfferlein 779c2392e7
Some doc fixes as preparation for PDF generation (#1044)
* Some doc fixes as preparation for PDF generation

* Some doc bug fixes and enhancements for PDF manual generation
2022-04-02 16:07:38 +02:00
Matthias Koefferlein 5b9f194ecc Forget last commit - problem was that golden netlists should not be compared with net names as those are node numbers and they might change with C++ STL implementation 2022-03-18 00:10:00 +01:00
Matthias Köfferlein 4a06bc1bb5
Another change related to issue-1011 (aligning flat and deep mode text representation for LVS) (#1037) 2022-03-16 23:33:08 +01:00
Matthias Köfferlein 0eeeb8b6a3
Bd enhancements (#1034)
* Added ability to join files for strmxor

* Joined input files also for strm2txt strmclip and strmcmp. Output options for strmxor.
2022-03-16 23:32:24 +01:00
Matthias Köfferlein e1443cb961
Fixed main issue (warning about unexpected strict mode) (#1033)
The default mode was "expect non-strict" which is nonsense. It should
be "don't care".
2022-03-16 23:32:05 +01:00
Matthias Köfferlein 51cf918f56
Issue 1029 - Crash on QTreeViewItem#setBackgroundColor (#1032)
* Fixed issue #1029

The problem happened because in the described case the
tl::Variant used as a intermediate container holds the
Python QBrush object and when it gets deleted, the
QBrush object is deleted too.

* Added tests
2022-03-16 23:27:25 +01:00
Matthias Koefferlein 6d0aa9c435 Maybe fixed build issue on MacOS 2022-03-16 21:11:25 +01:00
Matthias Köfferlein 7d78194cf0
Issue 1021 (#1026) - LVS match issue on SRAM sample
* First step for solution:

Problem was: the ambiguity resolver was making decisions which later resulted in
a name conflict. Later on, another branch of the backtracking algorithm came
across the same situation but decided based on names, creating an conflict.

First part of the solution is to establish the backtracking information
during ambiguity resolution and using that rather than an alternative branch
later on. This avoids this conflict, but does not favor names as mandated
by the "use_names" flag. This will be the second step of the solution.

* Bugfixed solution (partially)

* Introducing third pass in netlist compare

The second pass is "ambiguity resolution by name" and
is skipped if "consider_net_names" is false. The third
pass then is ignoring the names.

* Bugfix

* Comment fixed, test updates

* Added tests

* Added test data variant for CentOS 8
2022-03-15 21:14:32 +01:00
Matthias Köfferlein e9c5782c51
Issue 1011 (#1027) - DRC violation on texts in deep mode
* Fixed issue-1011 by using single-point polygons for texts in deep mode. Tests need fixing.

* Updated tests (text become a single point)

* Added test for issue-1011
2022-03-15 21:13:57 +01:00
Matthias Koefferlein 6593997751 Trying to fix Windows builds 2022-03-14 17:49:46 +01:00
Matthias Köfferlein b09f79b681
Issue 1017 (#1023)
* Write polygons as single POLYLINE or LWPOLYLINE to DXF

* DXF writer creates simple polygons from ones with holes in POLYLINE and LWPOLYLINE mode, added tests
2022-03-10 19:15:35 +01:00
Matthias Köfferlein 9fc7f9cfb6
Merge pull request #1019 from KLayout/25d-with-booleans
25d with booleans
2022-03-10 19:15:16 +01:00
Matthias Koefferlein 0e1e4781a8 Fixed scale & snap bug in non-editable mode 2022-03-09 23:00:39 +01:00
Matthias Koefferlein 3b2db3b379 Fixed build without Qt bindings 2022-03-09 23:00:24 +01:00
Matthias Koefferlein c5da93756a Fixed build with Qt bindings (maybe) 2022-03-08 16:31:53 +01:00
Matthias Koefferlein b9a9422905 LEF/DEF paths for buddies are relative to cwd 2022-03-07 22:18:15 +01:00
Matthias Koefferlein 8b0dd38e97 Fixed use of HTML in netlist browser 2022-03-07 22:07:51 +01:00
Matthias Koefferlein 156b9137ab Build patch to allow building without qxmlpattern with -without-qt-xml 2022-03-07 21:53:55 +01:00
Matthias Koefferlein a0cbc2355a Some cleanup 2022-03-07 21:49:48 +01:00
Matthias Koefferlein 553d973b69 Edge and edge pair support 2022-03-07 21:21:43 +01:00
Matthias Koefferlein c9727c2e60 Polishing 2022-03-06 23:10:34 +01:00
Matthias Koefferlein 72233dc678 Documentation 2022-03-06 23:05:45 +01:00
Matthias Koefferlein 1da12970ab Material list, visibility 2022-03-06 21:11:32 +01:00
Matthias Koefferlein dda18e6f53 WIP: Introducing names 2022-03-06 19:01:16 +01:00
Matthias Koefferlein 33cd9fe687 WIP: bug fixes 2022-03-06 18:48:23 +01:00
Matthias Koefferlein f681d96558 WIP: Streamlined d25 script notation 2022-03-06 10:35:58 +01:00
Matthias Koefferlein 4acd0aabc5 Removed D25 tech component 2022-03-06 10:07:23 +01:00
Matthias Koefferlein 8c0498cc4c WIP: Some bug fixes, ongoing implementation 2022-03-05 23:52:41 +01:00
Matthias Koefferlein 05c16c9024 WIP: 'open window' menu item 2022-03-05 19:56:14 +01:00
Matthias Koefferlein 64406522fe WIP: basic debugging, functionality. 2022-03-05 19:42:57 +01:00
Matthias Koefferlein cd07a21ae3 Merge branch '25d-with-booleans' 2022-03-05 14:59:17 +01:00
Matthias Köfferlein a4b663199d
Fixed issue-1012 with some enhancements (#1016)
- warning if a layer is not mapped
- "," allowed as separator between files on buddy tools (in addition to '+')
- relative paths are resolved relative to . in buddy tools (more natural on Linux)
- Fixed tl::warn and tl::error so warnings/error messages can be continued with tl::noendl.
2022-03-05 14:57:09 +01:00
Matthias Köfferlein ed7f77a86d
Split gates (#1018)
* First implementation, first basic tests.

* WIP: more tests, bug fixes

* split_gates feature, added test case

* Documentation
2022-03-05 14:56:52 +01:00
Matthias Köfferlein da5e287d9a
Merge pull request #1014 from KLayout/issue-1013
Issue 1013
2022-03-01 17:17:59 +01:00
Matthias Köfferlein 33ebcb43f3
Issue 1008 (#1010)
* PyPI deployment: corrected branch filter

* skip redundant points in partial edit, but not colinear ones

* Polygon transformation now preserves raw points
2022-03-01 17:17:30 +01:00
Matthias Koefferlein 447b024277 Fixed issue #1013 2022-03-01 00:41:26 +01:00
Matthias Koefferlein 42fbe7b30a Avoid clipped texts in netlist/LVS result browser, text as tool tips 2022-02-28 21:19:03 +01:00
Matthias Koefferlein 42bd12b2db Bugfix: could not erase suffix in LEF/DEF reader options, could not reset datatype to 'none' (=don't produce) 2022-02-28 20:30:08 +01:00
Matthias Koefferlein 5d4fba7c51 Ctrl+F always enters find edit box in macro editor, not only if something is selected. 2022-02-28 19:49:58 +01:00
Matthias Koefferlein c030c844bb Doc update 2022-02-27 21:33:26 +01:00
Matthias Koefferlein d0d3d2a8be New integration, WIP 2022-02-24 00:45:02 +01:00
Matthias Koefferlein fdb7d90550 Introducing auto-run priorities for macros 2022-02-24 00:34:30 +01:00
Matthias Koefferlein 30f774f055 WIP: dynamic definition of macro categories (currently: drc, lvs) 2022-02-19 17:57:41 +01:00
Matthias Koefferlein ff3bc38aea Merge branch 'master' into wip 2022-02-19 00:14:57 +01:00
Matthias Köfferlein cee33a0099
Merge pull request #992 from KLayout/api-enhancements
Api enhancements
2022-02-18 23:28:28 +01:00
Matthias Koefferlein c5da9c717d scale_and_snap: separate handling of shapes with properties and without 2022-02-18 18:49:00 +01:00
Matthias Koefferlein a133a8f43b Reverted some changes, removed idle code 2022-02-18 18:43:02 +01:00
Matthias Koefferlein 834dfa6614 Bug fixes, enhancements, tests for snap and scale improvements. 2022-02-18 14:22:16 +01:00
Matthias Koefferlein e9d86822df Scale and snap improvements
* edge and edge pair support
* property support
* no expanding of on-grid arrays
* more inline processing, better performance
2022-02-18 00:03:14 +01:00
Matthias Koefferlein d2c2a875dd Removed debug output 2022-02-13 23:39:09 +01:00
Matthias Köfferlein 0132ad08f7
Issue 994 (#1006)
* Implemented issue-982 (heal option for strmxor)

The option is -m or --heal.
It is default off as in boundary cases (e.g. full layer vs. empty)
the healing adds a considerable memory and performance penalty.

Healing is only effective with tiling and affects output shapes
as well as shape counts.

* Fixed issue 994 (maybe, increased capture range for catching an existing selection)
2022-02-13 19:05:21 +01:00
Matthias Köfferlein 72bf152735
Fixed painting of rulers and grids in the presence of oversampling. Now the ruler/grid do not change with oversampling. (#1007) 2022-02-13 10:06:01 +01:00
Matthias Köfferlein b3d17cff97
Implemented issue-982 (heal option for strmxor) (#1004)
The option is -m or --heal.
It is default off as in boundary cases (e.g. full layer vs. empty)
the healing adds a considerable memory and performance penalty.

Healing is only effective with tiling and affects output shapes
as well as shape counts.
2022-02-13 10:04:25 +01:00
Matthias Koefferlein 4a8918364b Patch for issue-973 fix to make it work with libcurl 2022-02-12 22:16:14 +01:00
Matthias Köfferlein 11a91300bd
issue-996 Providing a "refresh" function for triggering a refresh from inside t… (#998)
* Providing a "refresh" function for triggering a refresh from inside the lib

Some other glitches were fixed too:
* LibraryManager wasn't thread-safe
* Library destructor wasn't unregistering
* Crash when re-registering the same library again
* In LibrariesTest normalization of layouts must not include
  re-creation of library references to avoid side effects.
  Save without context.

* Added missing files

* Fixed unit tests.
2022-02-12 21:26:28 +01:00
Matthias Koefferlein 72d0f717fe Fixed units tests 2022-02-12 18:20:38 +01:00
Matthias Köfferlein 572103ad23
Fixed issue-972 (#1003)
The implementation basically means making cell names valid
rather than quoting them. This involves unification.
2022-02-12 18:08:52 +01:00
Matthias Köfferlein 0199192e83
Fixed #989 (cannot convert <defunct> cell to static cell) (#1002)
Fixed some more glitches while doing so:
* cell.name (gsi) was giving "basic_name", now it's changed to the
  internal name to be consistent with "name=". The "functional name"
  is still available as "basic_name".
* The basic name was rendering "<defunct>..." for defunct cells
  and has been changed to the functional name. Otherwise this
  is not accessible.
2022-02-12 17:05:12 +01:00
Matthias Köfferlein 0005c5d742
Fixed #971 (double compare fails in LVS) (#1001) 2022-02-12 17:04:47 +01:00
Matthias Köfferlein ec52be166c
FIxed #997 (display of negative extensions of paths) (#999) 2022-02-12 17:02:59 +01:00
Matthias Köfferlein 60aab8b3fd
Fixed #995 (new topcell after load) (#1000) 2022-02-12 16:51:01 +01:00
Matthias Koefferlein 2ed572e684 Merge branch 'api-enhancements' 2022-02-11 19:10:21 +01:00
Matthias Koefferlein 75aaf10512 Query parser is somewhat more restrictive now and doesn't read everything as cell expression. 2022-02-11 00:30:08 +01:00
Matthias Koefferlein 5dd50d2f59 Search/replace: also highlight results from data queries 2022-02-10 23:56:08 +01:00
Matthias Koefferlein 3f2ca1dfbe micrometer-unit properties (ddbox, path_dtrans, dtrans etc) for custom queries 2022-02-10 23:14:08 +01:00
Matthias Koefferlein 98dd0de139 clip method variants with dboxes and cell references in Layout 2022-02-08 23:49:28 +01:00
Matthias Koefferlein 3a422f2c38 Trans: mapping ctrans to * for harmonization 2022-02-08 23:13:37 +01:00
Matthias Koefferlein a5e7395d10 Convenience initializer for CellInstArray and DCellInstArray that takes a vector instead of a transformation 2022-02-08 22:56:58 +01:00
Matthias Koefferlein 1a53cd00d2 Convenience 'each' for recursive shape iterator / recursive instance iterator 2022-02-08 22:28:09 +01:00
Matthias Köfferlein d764adb101
Issue 984 (#987)
* WIP: first attempt to fix issue-983

* WIP: bugfixes

* Fixed a problem with displaying empty cell dimensions, one warning

* Another fix: don't allow proxy cells to be selected in the instance properties dialog. This creates a confusing behaviour

* Fixed a few flaws in the cell selection scheme on the instance properties dialog.

* Early warning when trying to build a recursive hierarchy.

* Another fix: avoid too much undo in case of errors thrown during 'apply' followed by 'cancel'

* First attempt to fix issue 984

* Fixed issue-983 solution

* Fixed the modification status of PCell parameters for 'apply to all'
2022-02-08 19:07:04 +01:00
Matthias Köfferlein 285a5e9fca
Issue 983 (#986)
* WIP: first attempt to fix issue-983

* WIP: bugfixes

* Fixed a problem with displaying empty cell dimensions, one warning

* Another fix: don't allow proxy cells to be selected in the instance properties dialog. This creates a confusing behaviour

* Fixed a few flaws in the cell selection scheme on the instance properties dialog.

* Early warning when trying to build a recursive hierarchy.

* Another fix: avoid too much undo in case of errors thrown during 'apply' followed by 'cancel'

* Fixed issue-983 solution

* Fixed the modification status of PCell parameters for 'apply to all'
2022-02-08 19:06:27 +01:00
Matthias Köfferlein c80f789e5a
Fixed issue-973 (timeout in Salt Manager) (#981)
The implementation now offers "infinite timeout" with
the option to abort download.
2022-02-08 19:05:53 +01:00
Matthias Köfferlein 71c9073bc5
Fixed issue-979 (backup file fails with relative paths) (#980) 2022-02-08 19:05:00 +01:00
Matthias Koefferlein e49b189f64 Doc clarification for Layout#create_cell 2022-02-07 23:27:10 +01:00
Matthias Koefferlein 88c56d8b64 Introducing unique_cell_name in Layout, fixed the RBA unit tests 2022-02-07 23:05:53 +01:00
Matthias Koefferlein 0bb0f400bf Introducing world box. 2022-02-07 22:44:35 +01:00
Matthias Koefferlein 79be9aba41 RecursiveInstanceIterator uses weak pointer to Layout too 2022-02-07 22:09:57 +01:00
Matthias Koefferlein c0b38f3706 Using a weak Layout pointer to avoid segfaults in RecursiveShapeIterator 2022-02-07 21:56:37 +01:00
Matthias Koefferlein e2c6e7aedc size/sized versions with Vector/DVector
Adds variants to size/sized which take a vector instead
of dx, dy and where the mode parameter is optional. So far
anisotropic sizing had to come with a mode argument.
2022-02-07 20:59:09 +01:00
Matthias Koefferlein de98a30f38 Text/DText enhancements
* Enums for alignment values.
* bbox
* position
* typos fixed
2022-02-07 19:46:13 +01:00
Matthias Koefferlein ffb81a66ea Fixed Python 3.10 builds 2022-02-05 19:46:53 +01:00
Matthias Koefferlein 477afd4a4d Fixed a merge issue (master/qt6) 2022-01-23 11:54:32 +01:00
Matthias Koefferlein 46b427740b Fixed a merge issue 2022-01-21 17:10:48 +01:00
Matthias Koefferlein 95b6af4bc6 Merge branch 'master' into qt6 2022-01-21 15:43:33 +01:00
Matthias Koefferlein df60f49276 Fixed issue-969 plus a Qt warning 2022-01-12 22:49:20 +01:00
Matthias Koefferlein 45794e405c Merged with qt6 from server 2022-01-08 23:47:40 +01:00
Matthias Koefferlein 86cee4118b Updated copyright for 2022 for remaining files. 2022-01-07 22:22:31 +01:00
Matthias Koefferlein 12fd26663d Merge branch 'qt6' 2022-01-06 21:48:02 +01:00
Matthias Koefferlein 10456516db Updated copyright to 2022, preparations for 0.27.6 (was delayed due to code signing certificate issues) 2022-01-04 21:20:04 +01:00
Matthias Köfferlein b78a8d58c8
Merge pull request #964 from KLayout/issue-963-show-snapped-position
Implemented request: show snapped cursor position in lower left posit…
2021-12-30 09:07:47 +01:00
Matthias Köfferlein ccb9c05859
Merge pull request #962 from KLayout/lvs-data-as-global-function
Enabled 'lvs_data' as a new global function for LVS (for consistency)
2021-12-29 23:16:10 +01:00
Matthias Köfferlein 23207c2fe6
Merge pull request #961 from KLayout/issue-960
Fixed #960 (cap value not shown in netlist browser)
2021-12-29 23:15:36 +01:00
Matthias Koefferlein 980cd73c5a Implemented request: show snapped cursor position in lower left position display. 2021-12-28 22:39:04 +01:00
Matthias Koefferlein 6e15ebb3a1 Enabled 'lvs_data' as a new global function for LVS (for consistency) 2021-12-26 23:39:02 +01:00
Matthias Koefferlein 6c34ce14c0 Fixed #960 (cap value not shown in netlist browser) 2021-12-26 23:34:06 +01:00
Matthias Koefferlein 029b7b9410 Fixed generic DRC checks with == operations - this was sometimes not capturing the relevant cases. 2021-12-26 21:23:58 +01:00
Matthias Köfferlein 5f73d11fb1
Merge pull request #958 from KLayout/issue-951
Issue 951
2021-12-26 19:15:11 +01:00
Matthias Köfferlein 460ba9813a
Merge pull request #957 from KLayout/issue-954
Bugfix for #954
2021-12-26 19:14:44 +01:00
Matthias Koefferlein 4956091e75 Fixed a small glitch too: cut & paste of cells was possible in viewer mode 2021-12-26 12:33:44 +01:00
Matthias Koefferlein 8e02b400ca Fixed #951
The problem was essentially the "specific path" which got invalid.
The solution is to establish a better criterion for "path validity"
and use for failsafes against invalid paths.

In addition, the path validation has been modified such that a
better choice is made about the remaining path after a cell gets
deleted.
2021-12-26 12:20:54 +01:00
Matthias Koefferlein e1cd6aaeb1 Bugfix for #954
The bug was that while iterating a Region during the gate traversal,
the "select_interacting" was triggering a sort() which changed the
order.

Solution is to pre-sort when iterators are issued also when the
iterator is non-region selecting. This way, plain and region query
iterators can be used together. In addition, the dirty flag scheme
of Cell+Shapes was cleaned up a little for bboxes.
2021-12-26 01:12:36 +01:00
Matthias Koefferlein 2b9193331e Small bugfix: no 'nil' layer generated when no layer is selected for a PCell 2021-12-25 18:38:39 +01:00
Matthias Koefferlein 9cd77e5cec WIP: expose a new method of PCellDeclaration called 'wants_lazy_evaluation' 2021-12-25 18:03:30 +01:00
Matthias Koefferlein f985d946a1 WIP: implementing an optional 'update' button for lazy evaluation PCells 2021-12-25 17:40:10 +01:00
Matthias Koefferlein 4820207cd3 Merge remote-tracking branch 'origin/master' into qt6 2021-12-17 21:44:50 +01:00
Matthias Koefferlein 219fbceb28 Fixed the fix. 2021-12-17 08:18:35 +01:00
Matthias Koefferlein e1df15a47f Fixed Windows tests 2021-12-16 22:51:20 +01:00
Matthias Köfferlein f60a5de325
Merge pull request #948 from KLayout/less-expressions
Less expression evaluation for more robustness
2021-12-16 07:56:21 +01:00
Matthias Köfferlein 7bc5b51fad
Merge pull request #947 from KLayout/issue-946
Fixed issue #946 for the case of file paths with blanks
2021-12-16 07:55:58 +01:00
Matthias Koefferlein a6d4c80c6c Less expression evaluation for more robustness 2021-12-16 00:23:06 +01:00
Matthias Koefferlein 533a72b7bd Added tests, fixed implementation 2021-12-15 23:18:42 +01:00
Matthias Koefferlein 07515cd716 Fixed issue #946 for the case of file paths with blanks 2021-12-15 23:04:58 +01:00
klayoutmatthias edd5884a1a WIP: enabling build on MSVC2019 with Qt6 2021-12-15 00:31:13 +01:00
klayoutmatthias 626d404d83 BUild fixes for Windows 2021-12-12 23:49:14 +01:00
Matthias Koefferlein c76dde4533 Fixed Windows Qt binding for Qt6 2021-12-12 23:00:42 +01:00
Matthias Koefferlein 279342e61a Added more declarations for gcc in release mode 2021-12-12 16:48:44 +01:00
klayoutmatthias 0c142c9252 gcc 4.x (CentOS 7) does not support all C++11 type traits 2021-12-11 18:56:44 +00:00
Matthias Koefferlein 9aed8529f8 Build needs C++11 2021-12-11 16:37:05 +01:00
Matthias Koefferlein eecda3222b Fixed pymod_tests 2021-12-11 15:17:16 +01:00
Matthias Koefferlein 4966601bd1 Updated Qt4 bindings 2021-12-11 14:05:09 +01:00
Matthias Koefferlein 8b87fba8d4 Updated Qt5 bindings 2021-12-11 10:46:24 +01:00
Matthias Koefferlein ea83b4285d Enabling multiple bases and child classes for GSI expressions 2021-12-11 10:45:54 +01:00
Matthias Koefferlein a0546098b3 Fixed Qt5 binding generator config 2021-12-11 10:45:38 +01:00
Matthias Koefferlein 93942e907e Updated Qt5 bindings 2021-12-11 10:14:14 +01:00
Matthias Koefferlein 2d334bd88d Some code simplification 2021-12-11 01:09:07 +01:00
Matthias Koefferlein 8dbc31a41f Removed debug output 2021-12-11 00:42:26 +01:00
Matthias Koefferlein ca304b15c8 Enable multi-base support for RBA + Qt binding 2021-12-11 00:14:10 +01:00
Matthias Koefferlein 0aca56b1c6 Fixed pymod tests 2021-12-10 01:23:54 +01:00
Matthias Koefferlein f15db66fc4 Providing a different implementation of the multi-base mixin concept for Python to support multiple bases in Qt binding (e.g. QIODeviceBase) 2021-12-10 00:53:51 +01:00
Matthias Koefferlein 202ac55200 Preparations for multiple bases for Python objects 2021-12-08 23:53:38 +01:00
Matthias Koefferlein 1e795ebb6e Put in some blank lines for better readibility of generated Qt binding code 2021-12-07 23:43:40 +01:00
Matthias Koefferlein 519d7f6353 Fixed issue #942 (plus: cleaned some config inconsistencies and fixed a small Ui flaw) 2021-12-07 23:40:26 +01:00
Matthias Koefferlein 9c0e94e63c WIP: Allowing extension (mixin) classes
Needed to represent QIODeviceBase as a second base class for
QIOdevice, QFile etc. Additional base classes are supported but
in a rather limited way. They only contribute constants like enums.
No methods can be provided this way (a limitation of the method
enumeration scheme which only supports one base classe)
2021-12-07 23:24:08 +01:00
Matthias Koefferlein 6f9fa7a4a2 Merge branch 'qt6' of www.klayout.org:/home/matthias/git/klayout into qt6 2021-12-05 17:21:09 +01:00
Matthias Koefferlein 818beaa6a4 WIP: build fixes 2021-12-05 17:20:58 +01:00
Matthias Koefferlein 085db4f33f WIP: enterEvent has a different signature in Qt6 2021-12-05 17:18:19 +01:00
Matthias Koefferlein e07b9dc609 WIP: batch mode does not crash anymore (QAction cannot be created in non-GUI mode) 2021-12-05 17:07:40 +01:00
Matthias Koefferlein 96650cb65d WIP: Qt4 compatibility, cleanup, version bumped 2021-12-05 17:03:16 +01:00
Matthias Koefferlein 5eafb5ac13 WIP: cleanup plus added missing files. 2021-12-05 14:43:05 +01:00
Matthias Koefferlein cb680875de Merge branch 'qt6' of www.klayout.org:/home/matthias/git/klayout into qt6 2021-12-05 13:39:43 +01:00
Matthias Koefferlein 9124881180 Added missing file. 2021-12-05 13:38:26 +01:00
Matthias Koefferlein 3bb46e2717 Qt5 builds functional again, enabled QLatin1String for Qt5 and Qt4 too. 2021-12-05 13:38:08 +01:00
Matthias Koefferlein 3a68daa0e4 WIP: global enums translated for qtbindings too 2021-12-05 13:36:43 +01:00
Matthias Koefferlein 4a1f1cb1ef WIP: Qt binding - don't propagate class enum constants to parent scope 2021-12-05 12:02:56 +01:00
Matthias Koefferlein 0e2ff48c14 Compatbility with C++11 2021-12-05 00:29:15 +01:00
Matthias Koefferlein 5bff49c0d5 Merge branch 'qt6' of github.com:KLayout/klayout into qt6 2021-12-05 00:28:19 +01:00
Matthias Koefferlein 248bac5f6d Compatbility with C++11 2021-12-05 00:28:06 +01:00
Matthias Koefferlein 302a5fccd0 Build fixes 2021-12-05 00:27:41 +01:00
Matthias Koefferlein ef62a126d4 WIP: format string problem fixed in 2.5d view 2021-12-05 00:08:08 +01:00
Matthias Koefferlein 3ef28c8a9d WIP: fixed some string extractors 2021-12-04 23:57:24 +01:00
Matthias Koefferlein 6aae46772c WIP: typo bug fixed. 2021-12-04 22:46:59 +01:00
Matthias Koefferlein ab97a4722d WIP: fixed some Qt binding and GSI issues, added tests 2021-12-04 22:15:04 +01:00
Matthias Koefferlein e677cc7300 WIP: tests for QStringView and QByteArrayView bindings 2021-12-04 09:03:59 +01:00
Matthias Koefferlein 125543957d WIP: Fixed GSI to some extent, some tests 2021-12-04 00:31:01 +01:00
Matthias Koefferlein 82909001c4 Build fixes with pymod 2021-12-03 07:28:09 +01:00
Matthias Koefferlein acf1edb6ce Build fixes with Ruby and Python 2021-12-02 23:46:39 +01:00
Matthias Koefferlein 709ed19e13 Added first version of Qt binding for Qt6 2021-12-02 23:40:31 +01:00
Matthias Koefferlein e72060407c WIP: enabling QLatin1String, QStringView, QByteArrayView for GSI 2021-12-02 20:30:19 +01:00
Matthias Koefferlein bc26fd6333 WIP: some more patches for Qt6 Qt binding. 2021-12-02 01:08:42 +01:00
Matthias Koefferlein a17f89201f Updated Qt binding generation scripts and build fixes 2021-11-30 23:12:12 +01:00
Matthias Koefferlein a0319c4073 WIP: some more build fixes 2021-11-30 07:56:04 +01:00
Matthias Koefferlein 6b49386b67 WIP: fixed some build errors 2021-11-29 23:27:26 +01:00
Matthias Koefferlein 132ad2ed8d WIP: removing need to tl::type_traits 2021-11-29 22:54:28 +01:00
Matthias Koefferlein 18fee75276 WIP: QtCore enabling 2021-11-28 16:31:37 +01:00
Matthias Koefferlein 3bbb49770b WIP: __null to nullptr as in modern C++. 2021-11-27 15:47:58 +01:00
Matthias Koefferlein f4c0a43d49 unit tests pass now with the exception of two XML parser tests (QTBUG-98656) 2021-11-25 22:18:25 +01:00
Matthias Koefferlein 39aa5cb805 WIP 2021-11-25 20:44:39 +01:00
Matthias Koefferlein 2ee4d5414e WIP 2021-11-25 20:37:10 +01:00
Matthias Koefferlein c3010745ec WIP 2021-11-25 19:53:00 +01:00
Matthias Koefferlein 646a207e00 WIP 2021-11-25 01:17:53 +01:00
Matthias Koefferlein a7678c8a57 WIP 2021-11-25 01:12:39 +01:00
Matthias Koefferlein 0e15426c9f WIP 2021-11-25 00:57:11 +01:00
Matthias Koefferlein a4d2e7891c WIP 2021-11-24 23:59:36 +01:00
Matthias Koefferlein fb4caf15ac Merge branch 'master' of github.com:KLayout/klayout into qt6 2021-11-24 23:21:27 +01:00
Matthias Koefferlein c809a236fb Fixed slider sizing in 2.5d view 2021-11-15 18:13:22 +01:00
Matthias Koefferlein 26da9f7406 Merge branch 'master' of github.com:KLayout/klayout 2021-11-15 07:12:29 +01:00
Matthias Koefferlein 748c331297 Fixed documentation 2021-11-14 22:42:05 +01:00
Matthias Koefferlein ecc83aa579 Solved #879: PCellDeclaration now knows the layout and layout knows the library 2021-11-14 17:45:52 +01:00
Matthias Köfferlein 91d358398b
Merge pull request #937 from KLayout/more-macro-bindings
More macro bindings
2021-11-14 16:18:23 +01:00
Matthias Koefferlein 2039d99f03 Fixed build errors. 2021-11-14 11:56:40 +01:00
Matthias Koefferlein 2831dd7f26 Fixed code sample 2021-11-13 20:39:49 +01:00
Matthias Koefferlein be19165140 Doc fixes. 2021-11-13 20:34:56 +01:00
Matthias Koefferlein ab350078a0 Cross-calling of Python from Ruby and much more ... 2021-11-13 19:57:31 +01:00
Matthias Koefferlein 67ed068e76 Provide more methods for the Macro class. 2021-11-13 01:53:14 +01:00
Matthias Koefferlein 0ca82001ed #935 fixed (checking for valid cell index) 2021-11-13 01:03:54 +01:00
Matthias Koefferlein 719eb0bce8 Fixed a potential crash on application exit 2021-11-13 00:48:27 +01:00
Matthias Köfferlein 7c8e507bb9
Merge pull request #934 from KLayout/issue-933
Alternative fix using a customized implementation for QMessageLogger …
2021-11-13 00:45:54 +01:00
Matthias Koefferlein 2dc30103bf Merge remote-tracking branch 'remotes/origin/issue-933' into issue-933 2021-11-11 21:01:37 +01:00
Matthias Koefferlein 8cd39b2140 Consistent use of build options for non-build.sh based builds 2021-11-11 20:51:27 +01:00
Matthias Koefferlein 3ce7038a7d Alternative fix using a customized implementation for QMessageLogger functions 2021-11-10 23:38:33 +01:00
Matthias Koefferlein d2478881b5 Bugfix: threading issue - multiple threads accessed the same object 2021-11-10 22:30:32 +01:00
Matthias Koefferlein 379a22c86a Restored performance of some checks 2021-11-09 21:55:55 +01:00
Matthias Koefferlein 319efc1f95 Bugfix: negative output wasn't working properly for enclosing and overlap. 2021-11-09 00:32:07 +01:00
Matthias Koefferlein 4a44329e38 Enabling 'enclosed' as a (sometimes) more efficient way of implementing an enclosing check. 2021-11-08 23:18:01 +01:00
Matthias Koefferlein 2fd9401013 Fixed some doc problems 2021-11-07 23:30:15 +01:00
Matthias Koefferlein 9fa82f01d8 WIP (code reduction and performance enhancement of basic DRC checks) 2021-11-07 21:46:18 +01:00
Matthias Koefferlein a0367c1530 More specific clip variants after bounding boxes have been reduced in RecursiveShapeIterator 2021-11-01 17:27:52 +01:00
Matthias Koefferlein bc54ba3b99 Merge branch 'performance' into head 2021-11-01 14:32:31 +01:00
Matthias Koefferlein d244d5aac6 Debugging plus enhancments
Basic change: DeepShapeStore+CellMapping uses (new) hier_generation_id of Layout to figure out
if the hierarchy has changed and the cache needs update.
2021-11-01 13:49:00 +01:00
Matthias Koefferlein 64a6b3acdc WIP 2021-11-01 09:53:51 +01:00
Matthias Koefferlein 902375cc4d WIP: trying to reduce the number of DSS-internal cell mappings by caching cell maps 2021-10-31 00:59:42 +02:00
Matthias Koefferlein 455c40ced6 More consistent verbosity levels for cell mapping 2021-10-30 21:31:05 +02:00
Matthias Koefferlein ebe38912a6 Tests and documentation for dbTrans#is_complex? 2021-10-27 23:36:58 +02:00
Matthias Koefferlein 20f3733c58 WIP: lean recursive shape touch check 2021-10-27 00:38:12 +02:00
Matthias Koefferlein 596080669d WIP 2021-10-26 23:10:29 +02:00
Matthias Koefferlein 7881c0953c WIP 2021-10-24 20:28:15 +02:00
Matthias Koefferlein c6bd856331 WIP 2021-10-24 00:05:50 +02:00
Matthias Koefferlein 09df614d8a Bugfix: array iterator must not iterate on empty search box. 2021-10-22 23:52:35 +02:00
Matthias Köfferlein 01d7600b87
Merge pull request #925 from KLayout/issue-920
Fixed #920 (fill border parameter sign issue)
2021-10-20 22:27:09 +02:00
Matthias Köfferlein 5485c4b5f2
Merge pull request #924 from KLayout/issue-921
Bugfix plus more tests
2021-10-20 22:26:57 +02:00
Matthias Köfferlein 7e6b4662ec
Merge pull request #923 from KLayout/usablity-enhancements
Usablity enhancements
2021-10-20 22:26:38 +02:00
Matthias Koefferlein 17a6459f83 Fixed #920 (fill border parameter sign issue) 2021-10-19 21:05:09 +02:00
Matthias Koefferlein abe40ae99f Bugfix plus more tests 2021-10-19 20:48:13 +02:00
Matthias Koefferlein 89a50abedd Some more documentation about layer views. 2021-10-19 00:11:27 +02:00
Matthias Koefferlein 97d393c78a Layout#is_editable 2021-10-18 23:24:28 +02:00
Matthias Koefferlein 04deb785ba Asking whether to apply a .lyp file on multiple layouts on MRU-listed .lyp files too. 2021-10-18 23:10:39 +02:00
Matthias Koefferlein 4d64e95680 Shape objects from custom queries 'select' are translated into shape markers when exporting to RDB 2021-10-18 23:08:38 +02:00
Matthias Koefferlein ca15d9ec9d WIP 2021-10-18 00:12:46 +02:00
klayoutmatthias c48f930fb3 Fixed #918 by using ignore size policy for the editor options tab widget 2021-10-14 23:48:24 +02:00
Matthias Koefferlein 710d217b17 strmxor: better command line doc, show file read timing like main app. 2021-10-07 22:17:03 +02:00
Matthias Koefferlein ec527367f2 'tap' shows layer details like view name 2021-10-06 23:26:12 +02:00
Matthias Koefferlein 747807224b 2.5d view enhancements
* Fine-tuned 2.5d view's key events
* better error message in case of z-stack/layers mismatch
* Don't confine bounding box to actual layout - that can be confusing
2021-10-06 23:17:56 +02:00
Matthias Köfferlein 8b12788084
Merge pull request #915 from KLayout/issue-912
Fixed #912 (crash when trying to create a cell in an empty panel)
2021-09-25 23:21:27 +02:00
Matthias Köfferlein e77ef66b2f
Merge pull request #901 from KLayout/25d-view-enhancements
25d view enhancements
2021-09-23 22:33:56 +02:00
Matthias Koefferlein 98e20cf2f1 Enhancement: enable 'tap' function also in view mode 2021-09-23 01:13:56 +02:00
Matthias Koefferlein b8489223c1 Fixed #912 (crash when trying to create a cell in an empty panel) 2021-09-23 01:11:15 +02:00
Matthias Koefferlein 6dd35693d6 Color support also for multi height mapping of a single layer 2021-09-23 01:00:59 +02:00
Matthias Koefferlein 5d1b12391b Show wireframe in frame colors 2021-09-23 00:33:55 +02:00
Matthias Koefferlein 464bb75626 Live updates of layer properties 2021-09-22 23:29:58 +02:00
Matthias Koefferlein df4e6ce262 Merge branch 'master' of github.com:KLayout/klayout into 25d-view-enhancements 2021-09-22 07:51:24 +02:00
Matthias Koefferlein 4da0a38857 Merge branch 'master' into 25d-view-enhancements 2021-09-22 07:51:06 +02:00
Matthias Köfferlein 897bcf1ed8
Merge pull request #911 from KLayout/issue-909
Fixed #909 (Crash on DRC)
2021-09-22 07:50:44 +02:00
Matthias Koefferlein 7acd5ba3e4 WIP: turning 2.5d view into a browser which is non-modal 2021-09-22 00:18:59 +02:00
Matthias Koefferlein 068f782544 Fixed CentOS7 builds 2021-09-21 23:56:57 +02:00
Matthias Koefferlein 451f57bb25 Fixed #909 (Crash on DRC) 2021-09-21 23:37:57 +02:00
Matthias Koefferlein 9531376b7a WIP 2021-09-21 22:52:13 +02:00
Matthias Koefferlein 5f188f7f5a Merge branch 'master' into 25d-view-enhancements 2021-09-21 22:51:05 +02:00
Matthias Köfferlein eb8c7ff53f
Merge pull request #910 from gatecat/dont-abort-on-info
klayout_main: Don't abort on info messages
2021-09-21 22:43:46 +02:00
Matthias Köfferlein 80fd5b79be
Merge pull request #908 from KLayout/netlist-compare-performance2
Improving netist compare performance for array case + some enhancements
2021-09-21 22:43:37 +02:00
Matthias Köfferlein f1e59a7dc6
Merge pull request #907 from KLayout/issue-905
Fixed #905 (Crash while deleting a Library)
2021-09-21 22:43:22 +02:00
Matthias Köfferlein 1022e08ee0
Merge pull request #900 from KLayout/issue-897
Issue 897 (crash in fill tool)
2021-09-21 22:43:06 +02:00
Matthias Köfferlein a2e171b330
Merge pull request #899 from KLayout/issue-898
Issue 898 (Spice reader ignores last line)
2021-09-21 22:42:53 +02:00
Matthias Koefferlein 3d7c1db1f7 Fixed unit tests 2021-09-21 21:17:57 +02:00
Matthias Koefferlein e1dd79acbf Include SSL errors in error message on HTTPS access. 2021-09-21 21:01:53 +02:00
gatecat 93cf7869ce klayout_main: Don't abort on info messages
Signed-off-by: gatecat <gatecat@ds0.me>
2021-09-21 14:37:03 +01:00
Matthias Koefferlein 29384bf3f3 Convenience: simple version of DRC layer.with_holes and layer.without_holes 2021-09-20 21:36:46 +02:00
Matthias Koefferlein 4152f10bc4 Apply 'show all' one level deeper. This way it's possible to hide mismatching nets. But the net content is still shown in full detail. 2021-09-20 21:24:00 +02:00
Matthias Koefferlein e14a96a421 Speeding up the netlist browser by shortcutting has_children 2021-09-20 21:14:25 +02:00
Matthias Koefferlein ceb0b2298f Some cleanup, updated tests 2021-09-19 19:05:09 +02:00
Matthias Koefferlein b7827f7b5f Maybe found a solution for the matrix arrangement runtime problem 2021-09-19 18:29:57 +02:00
Matthias Koefferlein 930423bcc7 WIP 2021-09-19 17:26:28 +02:00
Matthias Koefferlein a42d761e95 Some small refactoring 2021-09-17 22:46:56 +02:00
Matthias Koefferlein 71b5695344 Fixed #905 2021-09-15 00:09:56 +02:00
Matthias Koefferlein 0f4b0e4826 Ported some enhancements from WIP branch (debug output, capturing easy wins when max depth is exhausted) 2021-09-14 22:31:24 +02:00
Matthias Koefferlein b671b1843b Fixed a problem with net compare config - depth first wasn't considered in all cases 2021-09-12 22:35:08 +02:00
Matthias Koefferlein 89052660ee Refactoring of the netlist compare code 2021-09-12 22:35:03 +02:00
Matthias Koefferlein 822709dd5a Refactoring of the netlist compare code 2021-09-12 22:34:59 +02:00
Matthias Koefferlein 52c79feeed Refactoring of the netlist compare code 2021-09-12 22:34:55 +02:00
Matthias Koefferlein c19f8187c8 WIP: minor refactoring 2021-08-31 22:55:04 +02:00
Matthias Koefferlein 30d896cf8b WIP: disable Escape, Enter keys. No focus for sliders to keep focus inside drawing if possible. 2021-08-31 19:05:30 +02:00
Matthias Koefferlein 32624b1692 WIP: removed some nonsense 2021-08-31 18:47:10 +02:00
Matthias Koefferlein 2b07510f56 WIP: improved fit function 2021-08-31 13:29:50 +02:00
Matthias Koefferlein 5afd48b12f WIP: scale factor editing, pan mode done. 2021-08-31 10:43:02 +02:00
Matthias Koefferlein 4a3e694b9b WIP: added vertical zoom factor slider, some enhancements 2021-08-30 16:01:35 +02:00
Matthias Koefferlein 8e02969863 Fixed a warning because of duplicate undo registration of the fill tool 2021-08-29 21:46:01 +02:00
Matthias Koefferlein 45850cec70 Fixed #897 (crash in fill tool) 2021-08-29 21:33:54 +02:00
Matthias Koefferlein ab3bceda75 Fixed #898 (netlist reader ignores last list) 2021-08-29 21:12:04 +02:00
Matthias Köfferlein 93e789a861
Fixed #893 (#894) 2021-08-24 21:37:15 +02:00
Matthias Köfferlein 225d3ab32d
issue-892 (#895) 2021-08-24 21:37:02 +02:00
Matthias Koefferlein f82e22c5c2 Layers are allowed to appear multiple times in the z list now. Move resolution (mouse wheel) now follows scaling 2021-08-15 17:23:36 +02:00
Matthias Koefferlein 8c089c37ff Fixed a bug in a doc file 2021-07-31 23:03:01 +02:00
Matthias Koefferlein 6da700b297 Fixed a .pro file 2021-07-31 21:25:08 +02:00
Matthias Koefferlein 37dd298853 Merge branch 'master' of github.com:KLayout/klayout 2021-07-31 11:02:06 +02:00
Matthias Köfferlein 1916a4f683
Merge pull request #884 from KLayout/issue-881
Fixed #881 (typo in separation check and others)
2021-07-31 11:01:55 +02:00
Matthias Koefferlein 006b5ef2a1 Renamed files for easier debugging 2021-07-31 10:55:37 +02:00
Matthias Koefferlein d7438b43ae Fixed #881 (typo in separation check and others) 2021-07-30 23:13:24 +02:00
Matthias Koefferlein beb168508e Updated doc. 2021-07-29 23:13:26 +02:00
Matthias Koefferlein 0f09dfe8eb Added LVS tests, updated doc. 2021-07-29 22:56:11 +02:00
Matthias Koefferlein 9543cea952 Fixed tests 2021-07-29 22:24:22 +02:00
Matthias Koefferlein 8b970039c0 Using primary(layout) netlist as reference for primary parameters and compare delegate - this also removes some potential glitches 2021-07-29 01:15:35 +02:00
Matthias Koefferlein a90e14b692 Some tests added. 2021-07-27 23:08:34 +02:00
Matthias Koefferlein 42b7290fe5 Device parameter comparer now also compares other (primary) parameters, parameters primary in both netlists are considered to be compared by default, 'ignore' feature in tolerance 2021-07-27 22:15:59 +02:00
Matthias Koefferlein 37457aa02f Spice reader flags existing parameters as primary 2021-07-27 22:13:45 +02:00
Matthias Koefferlein 6ff2f96310 Reverted #796 change: DXF version is back to 1006 which seems to be better compatible with commercial viewers. Using a later version turns out to require a lot of additional information I cannot provide without deeper insight into the DXF structure. 2021-07-22 23:11:35 +02:00
Matthias Köfferlein df022316b9
Merge pull request #877 from KLayout/drc-extent-of-cells
Implemented extent(cell_filter) for DRC, added Layout#cells with name…
2021-07-21 23:37:10 +02:00
Matthias Köfferlein dff2c2d352
Merge pull request #876 from KLayout/issue-875
Fixed #875 (drawing glitch)
2021-07-21 23:36:58 +02:00
Matthias Köfferlein b7f4c40400
Merge pull request #874 from KLayout/issue-871
Fixed #871 (application stalls with 'draw only border instances' mode…
2021-07-21 23:36:46 +02:00
Matthias Köfferlein ce6f63b20c
Merge pull request #873 from KLayout/issue-866
Fixed #866 (probe net not working for floating subcircuits in hierarc…
2021-07-21 23:36:33 +02:00
Matthias Koefferlein 99bb98127f Updated doc. 2021-07-21 18:51:34 +02:00
Matthias Koefferlein 7a37a6b7ed Implemented extent(cell_filter) for DRC, added Layout#cells with name filter 2021-07-21 18:31:51 +02:00
Matthias Koefferlein 084e1a746e Fixed #875 (drawing glitch) 2021-07-20 21:42:24 +02:00
Matthias Koefferlein 92419801a7 Fixed #871 (application stalls with 'draw only border instances' mode with AREFs) 2021-07-20 20:53:46 +02:00
Matthias Koefferlein 99d980cd16 Added two useful functions for RBA/pya CellView (context_trans, context_dtrans) 2021-07-20 19:31:54 +02:00
Matthias Koefferlein 7f26c580e0 Add-on: netlist browser and net navigation with different context cells in layout view enhanced. 2021-07-20 01:35:10 +02:00
Matthias Koefferlein 585baa4637 Fixed #866 (probe net not working for floating subcircuits in hierarchical net tracer) 2021-07-20 00:23:54 +02:00
Matthias Koefferlein 52f7a04838 Fixed #867 (macro editor freeze after search next) 2021-07-19 22:47:33 +02:00
Matthias Koefferlein 23d0fcae8d Added new tests 2021-07-19 08:32:55 +02:00
Matthias Koefferlein 722b45b721 Fixed tests 2021-07-19 07:47:41 +02:00
Matthias Koefferlein bc74f189f8 Introducing asymmetric ambiguity groups for better matching of black box circuits with optional pins. 2021-07-18 23:33:01 +02:00
Matthias Koefferlein 70f4c7e2b5 A small refactoring. 2021-07-18 23:09:51 +02:00
Matthias Koefferlein 2c8d065eb3 Some enhancments + test update
1. Be more careful with net names
Net names are used now for sorting the graph nodes, but not for
strict compare. This is useful to derive swappable pins for
blackbox circuits.

2. Be more careful with pins from schematic netlist
Pins from schematic netlist without a corresponding pin on the layer
side are treated as mandatory unless connected to a trivial net.
Pins connecting to non-trivial nets inside the subcircuit are always
considered mandatory.
This way schematic pins enforce corresponding layout pins.
On the other hand, layout pins connecting to trivial nets inside
the subcircuit are considered non-mandatory.
2021-07-18 22:34:02 +02:00
Matthias Koefferlein 51d117e379 Refined black box pin heuristics
Pins are required to match if they are passive inside the
subcircuit but connected to a non-trivial net in the calling circuit.
2021-07-18 20:39:19 +02:00
Matthias Koefferlein 05386668b4 Re-introducing pin name mapping for net assignment 2021-07-18 20:20:23 +02:00
Matthias Koefferlein 23bea5dc07 Using real pin IDs for printing nodes in netlist compare debug output 2021-07-18 17:39:32 +02:00
Matthias Koefferlein d018805c23 Some refactoring. 2021-07-18 16:54:27 +02:00
Matthias Koefferlein 2f3e113db0 Added missing subcircuit mismatch events to netlist compare 2021-07-17 22:06:06 +02:00
Matthias Koefferlein 3f3f4c9173 Fixed some compiler warnings. 2021-07-17 22:03:22 +02:00
Matthias Köfferlein 054bfa3be4
Merge pull request #865 from KLayout/issue-864
Fixed #864 (Shapes#copy_shapes does not support undo/redo)
2021-07-17 13:44:15 +02:00
Matthias Köfferlein 19f2769137
Merge pull request #862 from KLayout/matching-of-blackbox-circuits
Enhanced matching of blackbox/pin ambiguities
2021-07-17 13:43:59 +02:00
klayoutmatthias 1555daf68c Adjustments for Windows build with MSVC2019 (VC 16.10.31419.357)
1. removed some duplicate symbol linker error
2. removed many compiler warnings (mainly size_t/int compatibility)
3. consistent definition of db::pcell_id_type
4. removed UTF-8 character codes from string constants
5. float constants for float arguments
6. timeout in tlHttp when no openssl lib is found (instead of stalling
   app)
2021-07-17 00:20:55 +02:00
Matthias Koefferlein 2fee924103 Updated the solution 2021-07-15 23:39:02 +02:00
Matthias Koefferlein d14892382c Fixed #864 (Shapes#copy_shapes does not support undo/redo)
While doing so changed the following things too:
- Instance and Shapes methods raise an exception if not
  in editable mode and with undo/redo
- Faster and leaner undo/redo on Shapes#clear
2021-07-15 00:44:28 +02:00
Matthias Koefferlein 2b447854f9 Enhanced matching of blackbox/pin ambiguities
Previously: matching of blackbox pins was enforced
by using pin names for passive nets in the compare.
Problem: no match was achieved when pins are not
named or not named consistently.

In this case, it's desirable to treat them as
ambiguous.

The new solution is to let the ambiguity resolver handle
that using an extended definition of the net names:
it will take the pin name into account if an unnamed net
is attached to a pin.

In addition, net ambiguities are projected to pin
equivalence now. This also will propagate symmetry
through nested blocks (dbNetlistCompareTests:20_BusLikeConnections).
2021-07-08 23:54:20 +02:00
Matthias Koefferlein bad3232415 Trying to fix a linker problem. 2021-07-07 08:03:07 +02:00
Matthias Koefferlein 47db99c0dd Fixed a merge issue. 2021-07-07 07:44:50 +02:00
Matthias Koefferlein e4f5a41829 Removed a compiler option which is not needed. 2021-07-06 23:57:29 +02:00
Matthias Koefferlein 9b18571d86 Merge branch 'master' into issue-859 2021-07-06 23:45:08 +02:00
Matthias Koefferlein 4e54715d64 Merge branch 'wip-lvs' 2021-07-06 23:40:44 +02:00
Matthias Köfferlein 6f6cab3fda
Merge pull request #852 from KLayout/issue-851
Issue 851
2021-07-06 23:38:54 +02:00
Matthias Köfferlein d10a28e96a
Merge pull request #850 from KLayout/ruby-3-enabling
Ruby 3 enabling
2021-07-06 23:38:40 +02:00
Matthias Köfferlein e78d0d81ae
Merge pull request #849 from KLayout/lvs-blackbox
Lvs blackbox
2021-07-06 23:38:21 +02:00
Matthias Koefferlein 1035923d0f Fixed #859 (technology not assigned on new layout) 2021-07-06 22:20:21 +02:00
Matthias Koefferlein 720057e071 Added a #include which was missing 2021-07-06 21:16:57 +02:00
Matthias Koefferlein 8f65ab099f Fixed DeviceClass assignment operator 2021-07-06 07:56:27 +02:00
Matthias Koefferlein 4e0d8d92ef Updated doc, reverted netlist writer to write all parameters - it will only write primary parameters for R, L and C 2021-07-05 22:45:40 +02:00
Matthias Koefferlein e34fc8967a Some enhancements
* Device#net_for_terminal with terminal name
* Spice writer now dumps all parameters for resistors and caps (also secondary)
* Enabled Spice writer delegate in LVS (spice_format(...))
* Device class factories for built-in device extractors
2021-07-05 22:22:13 +02:00
Matthias Koefferlein ba35ac9bfe Doc update, some tests 2021-07-05 21:06:02 +02:00
Matthias Koefferlein c62592ede1 Added test for device class factory. 2021-07-05 19:55:55 +02:00
Matthias Koefferlein b2746958d2 Updated tests 2021-07-04 23:31:37 +02:00
Matthias Koefferlein 20b7ee6aca Fixed some documentation bugs 2021-07-04 20:11:53 +02:00
Matthias Koefferlein 4303e1ab73 Revert change of making spice parameters primary - will create problems in swappable parameters such as AD and AS 2021-07-04 19:58:15 +02:00
Matthias Koefferlein 9f3d26af25 Doc update 2021-07-04 19:23:30 +02:00
Matthias Koefferlein ae6f77f45f Serialization of custom device classes 2021-07-04 19:14:37 +02:00
Matthias Koefferlein 3220bdf60d Added device class templates for CapWithBulk and ResWithBulk 2021-07-04 19:14:11 +02:00
Matthias Koefferlein 45152dad00 Fixed a linker issue 2021-07-04 19:13:42 +02:00
Matthias Koefferlein ce61145f1c More control over primary/secondary flag of parameters in device extraction
- Spice reader will set primary flag for all (known) parameters
  read from a Spice netlist
- "extract_devices" will return the device class object
- primary/secondary flag can be set on device class objects
  through "enable_devices"
2021-07-04 17:05:17 +02:00
Matthias Koefferlein 1a0b05e663 Updated test data 2021-07-02 23:38:38 +02:00
Matthias Koefferlein 79c552b300 Fixed #858 (+ line continuation after blanks in Spice reader) 2021-07-02 23:31:54 +02:00
Matthias Koefferlein fd5efe9f92 Fixed #854 2021-07-02 00:46:22 +02:00
Matthias Koefferlein 6f63fa09bf Fixed #856 2021-07-02 00:44:17 +02:00
Matthias Koefferlein 2d24e36c89 Updated build scripts 2021-07-01 00:07:04 +02:00
Matthias Koefferlein 2986afc8f9 Fixed #851 2021-06-30 23:00:38 +02:00
Matthias Koefferlein cd70bea9a0 Basic enabling of Ruby 3 2021-06-29 23:32:36 +02:00
Matthias Koefferlein 3d6119f2a6 Updated tests, sloppy 'same_nets' in non-must-match mode 2021-06-29 08:43:28 +02:00
Matthias Koefferlein 2d2cf11308 Added tests for new features. 2021-06-28 23:08:02 +02:00
Matthias Koefferlein 8d45adcebd Updated doc. 2021-06-28 22:53:08 +02:00
Matthias Koefferlein ab70c42c68 Some enhancements for strong matching of nets
* same_nets! method for strong matching
* same_nets and same_nets! except glob pattern to circuits and nets
* both observe case sensitivity
* helper functions for case sensitivity Netlist#is_case_sensitive?, Netlist#case_sensitive=
* Netlist#nets_by_name to get nets from pattern
2021-06-28 22:33:46 +02:00
Matthias Koefferlein 72dc94197e New method: Circuit#nets_by_name 2021-06-28 20:29:40 +02:00
Matthias Koefferlein dae5d3227a Enhanced documentation for blank_circuit, consilidated 'blank_circuit' method provided which can be used anywhere 2021-06-28 19:51:57 +02:00
Matthias Koefferlein e0ccb4f980 Fixed a typo 2021-06-28 18:57:09 +02:00
Matthias Koefferlein 24afd571f0 LVS: can be used anywhere now: tolerance and join_symmetric_nets 2021-06-28 18:56:07 +02:00
Matthias Koefferlein c24c0933bf Bugfix: blackbox mode/abstract pins
Abstract pins are created when pins are not attached to any or only to passive nets
(passive nets are those without device terminals or subcircuit pins).

1. Such pins were treated swappable. Now named pins will not be treated
   swappable but are mapped by name. This enables blackbox models where
   the pins are labelled and must correspond to schematic pins.
2. A bug was present which lead to incorrect handling of abstract
   nets in net compare.
2021-06-27 22:56:28 +02:00
Matthias Koefferlein d65148ed0b Fixed #846 2021-06-27 17:29:41 +02:00
Matthias Koefferlein 881e0010d5 Implemented with(out)_angle, with(out)_area on edge pairs (DRC, GSI). Deprecated 'with(out)_angle' on polygon layers (DRC) as this is now redundant with 'corners' 2021-06-27 14:18:04 +02:00
Matthias Koefferlein 5251520876 Added more filters for edge pairs: with_area, with_internal_angle. Added tests 2021-06-21 23:44:48 +02:00
Matthias Koefferlein 6e7c9192d4 Implemented #818 2021-06-20 21:45:51 +02:00
Matthias Koefferlein 2bbf6b6998 Merge branch 'clipped-25d-view' 2021-06-20 21:02:40 +02:00
Matthias Koefferlein 4840c119a1 related to issue 841: allowing dash characters for package names too 2021-06-19 23:48:15 +02:00
Matthias Koefferlein 5fb2f024dc Fixed some typos 2021-06-19 23:12:59 +02:00
Matthias Köfferlein 6f0e525e55
Merge pull request #837 from KLayout/issue-835
Fixed #835
2021-06-18 18:42:11 +02:00
Matthias Koefferlein 6050eb85de Fixed #839 2021-06-14 22:50:54 +02:00
Matthias Koefferlein 5bc4ea0cb9 Confine 2.5d view to viewport box 2021-06-13 23:05:16 +02:00
Matthias Koefferlein 71e290b50e Added test for the last commit 2021-06-13 23:02:53 +02:00
Matthias Koefferlein d1f38a36b1 Not directly related (initially so): EdgeProcessor can restart now. 2021-06-13 23:02:09 +02:00
Matthias Koefferlein 3b22bc0a42 Fixed the fix: considering the case of non-layout hosted Shapes container too 2021-06-12 23:34:32 +02:00
Matthias Koefferlein 115593575d Merge branch 'master' of github.com:KLayout/klayout into issue-835 2021-06-12 09:47:31 +02:00
Matthias Koefferlein 6f583b1b21 Fixed #835 2021-06-12 09:45:02 +02:00
Matthias Köfferlein 8bd58be534
Merge pull request #830 from KLayout/issue-824
Issue 824
2021-06-12 08:58:00 +02:00
Matthias Köfferlein e4c698b3a0
Merge pull request #833 from KLayout/ide-fixes
Ide fixes
2021-06-12 08:57:47 +02:00
Matthias Köfferlein 620c69541f
Merge pull request #834 from KLayout/spelling
Fixed embarrassing typo: Minkowsky -> Minkowski (Hermann Minkowski, 2…
2021-06-12 08:57:32 +02:00
Eugene Zelenko d5c9067d8f Fix misspellings in various modules. 2021-06-11 20:11:37 -07:00
Matthias Koefferlein e85636df59 Updated test golden data 2021-06-10 23:46:13 +02:00
Matthias Koefferlein 43c941004a Fixed embarrassing typo: Minkowsky -> Minkowski (Hermann Minkowski, 22 June 1864 – 12 January 1909) 2021-06-10 23:33:49 +02:00
Matthias Koefferlein 437ba28fc8 Clarify DEF pin vs. LEF pin in LEF/DEF options dialog 2021-06-10 23:25:45 +02:00
Matthias Koefferlein 32addc6281 Macro IDE: completer input is more consistent now 2021-06-09 23:03:32 +02:00
Matthias Koefferlein c661db8279 Macro IDE: completer catches more words 2021-06-09 22:44:07 +02:00
Matthias Koefferlein a4039a1bf8 Macro IDE: Ctrl+F does not enter whole selection into find edit box - just if that's a part of a line and not empty 2021-06-09 21:58:16 +02:00
Matthias Koefferlein 2337149eb5 Macro IDE: replace-and-find only replaces if current selection is matching search expression 2021-06-09 21:53:41 +02:00
Matthias Koefferlein 4cb477a91d Macro IDE: replace only in selected text if multi-line selection is present 2021-06-09 21:43:51 +02:00
Matthias Koefferlein 4c3729631a Rework: need to properly parse NAME records in map files, adjusted test data 2021-06-08 22:49:22 +02:00
Matthias Koefferlein b02a4a3bfa Propsed solution for #824: introduce a new internal purpose: LEFLabel which maps label for LEF pins 2021-06-08 22:16:35 +02:00
Eugene Zelenko ed27447ce0 Fix misspellings in db. 2021-06-07 18:21:02 -07:00
Matthias Koefferlein 8b528a8a7a Refactored the compound op node cache for multithreading support 2021-06-07 22:46:15 +02:00
Matthias Köfferlein f956dd478b
Merge pull request #821 from KLayout/test-stability
Test stability
2021-06-06 18:12:37 +02:00
Eugene Zelenko 8b0f60742e Fix misspellings in lay and tl. 2021-06-04 10:49:05 -07:00
Matthias Koefferlein 02ec262df0 Normalized resistor contact polygons for better test reproducibility. 2021-06-03 23:43:00 +02:00
Eugene Zelenko 2f7c7d3e00 Fix misspellings in laybasic. 2021-06-03 09:42:55 -07:00
Matthias Koefferlein 7aaddcf205 Normalize S/D choice on MOS transistor extraction for better test reproducability 2021-06-03 17:32:38 +02:00
Matthias Koefferlein a762797d58 Typos fixed. 2021-06-01 21:32:24 +02:00
Matthias Koefferlein 5f6b3710b5 Doc fixed. 2021-06-01 20:59:25 +02:00
Matthias Koefferlein a0d857d9dc Updated doc. 2021-05-31 18:44:43 +02:00
Matthias Koefferlein ef01bbf81b Restored merge behavior for DRC 'or' also in deep mode 2021-05-31 18:24:00 +02:00
Matthias Köfferlein 63f4d727e9
Merge pull request #813 from KLayout/wip
Wip
2021-05-29 23:59:44 +02:00
Matthias Koefferlein 83685a3715 Fixed a build issue. 2021-05-29 22:06:13 +02:00
Matthias Koefferlein eeaab8a417 Bugfix: Region#flatten and Edges#flatten did not update the merged cache to flat and Region#flatten did not produce PolygonRefs 2021-05-29 19:28:56 +02:00
Matthias Koefferlein 5ceeafc0ff Implemented #808 (Feature suggestion: DRC to report edges attached to corners as edge pairs). Solution is available for DRC layers and universal DRC expressions. 2021-05-29 17:57:38 +02:00
Matthias Koefferlein fd1e206c56 Provide a solution for #809 (density goes outside the area) 2021-05-29 10:16:30 +02:00
Matthias Koefferlein e57d573a42 Tests, so bug fixes, some refactoring 2021-05-29 09:43:12 +02:00
Matthias Koefferlein c8548709bb Implemented edge pair filters, DRC: with(out)_angle, with(out)_length and with(out)_distance 2021-05-28 23:46:52 +02:00
Matthias Koefferlein 931b3ef1ce Updated LVS (lvsdb) tests because of invalid layer properties bug 2021-05-26 23:03:14 +02:00
Matthias Koefferlein fcb966393a Fixed #806: first, the internal error gone. Second, the implementation of custom comparers is simplified as the 'equals' method does not need to be implemented. 2021-05-26 22:39:28 +02:00
Matthias Koefferlein ef22ead019 Fixed a bug in the Spice writer implementation (res3 not considered) 2021-05-26 22:27:42 +02:00
Matthias Koefferlein 2e63628ddd Fixed #805 - introducing layer.count and layout.hier_count for DRC 2021-05-26 22:11:47 +02:00
Niko Savola ff90c476c3 Fix typos systemically in gsiDecl*.cc 2021-05-26 13:18:23 +03:00
Niko Savola 99ef222f50
Fix more typos in gsiDeclDbLayoutToNetlist.cc
\\make_incluidelayer -> \\make_includelayer
sqaure -> square
2021-05-26 12:37:24 +03:00
Niko Savola b27e5de023
Fix typo in gsiDeclDbLayoutToNetlist
reprfesenting -> representing
2021-05-26 12:31:46 +03:00
Niko Savola bc16c4ad31
Fix missing 'to' typo
from another cell this cell -> from another cell to this cell
2021-05-26 10:33:07 +03:00
Matthias Koefferlein 5e04ea6156 Clarification of negative edge output for two-layer DRC's. 2021-05-26 01:12:35 +02:00
Matthias Koefferlein 660b723678 Updated test data because of non-merging hierarchical 'or' 2021-05-26 00:35:32 +02:00
Matthias Koefferlein 6ad8ec5662 Bugfix: whole edge output for fragmented second input. No way to fix that for the compound ops. Restrict negative output for two-layer checks on first layer for the same reason. 2021-05-26 00:27:13 +02:00
Matthias Koefferlein e54dc0e817 Updated tests. 2021-05-25 23:33:02 +02:00
Matthias Koefferlein 94e7f0dbd3 Updated test data, fixed DRC/LVS doc. 2021-05-25 23:30:43 +02:00
Matthias Koefferlein 19b28982e7 WIP: updated test data (bugfix: bulk does not have layer properties), Fixed Region::count and Region::hier_count (was counting non-polygons too) 2021-05-25 23:08:38 +02:00
Matthias Koefferlein 3789e38ce3 WIP: avoid one more segfault. 2021-05-25 22:45:19 +02:00
Matthias Koefferlein 0d6ce92d6b WIP: fixed a potential segfault 2021-05-25 21:41:27 +02:00
Matthias Koefferlein 0452e91e8c WIP: Some hardening against internal state changes in RecursiveShapeIterator, tests fixed 2021-05-25 21:36:54 +02:00
Matthias Koefferlein 1c8442f485 Fixed #807 - now supporting incremental connect and clear_connections in DRC/LVS 2021-05-24 21:56:57 +02:00
Matthias Koefferlein 58afc47071 WIP: reduced space runtimes (OpenRAM sample) by selective edge processing 2021-05-24 18:27:16 +02:00
Matthias Koefferlein 05b1023fd5 Updated tests. 2021-05-24 16:49:00 +02:00
Matthias Koefferlein 2fc301a0b6 More efficient shape counts on OriginalLayer 2021-05-23 12:21:18 +02:00
Matthias Koefferlein 93f9b693d3 RBA inspector does not crash on unknown class 2021-05-23 12:20:02 +02:00
Matthias Koefferlein 726fe40e22 More frequent updates of in-window log. 2021-05-22 22:34:43 +02:00
Matthias Koefferlein 47e110115f Updated documentation 2021-05-22 22:32:56 +02:00
Matthias Koefferlein 4bc665cbf3 Mapping deep-mode 'or' (DRC) to 'add' to avoid flat processing. 2021-05-22 22:32:29 +02:00
Matthias Koefferlein 560234cacb Less noisy output with verbose debug mode 2021-05-22 22:29:57 +02:00
Matthias Koefferlein 6cfe14a418 Typo corrected 2021-05-22 22:29:10 +02:00
Matthias Koefferlein 0a659124f6 Merge branch 'master' of github.com:KLayout/klayout into wip 2021-05-22 17:49:24 +02:00
Matthias Koefferlein 9239aacc35 Merge branch 'master' into wip 2021-05-22 17:49:01 +02:00
Niko Savola feb5e7eece
Fix documentation typo in gsiDeclDbCell.cc 2021-05-21 14:35:21 +03:00
Matthias Köfferlein 85eee4d6cc
Merge pull request #803 from KLayout/wip
Wip
2021-05-21 00:52:36 +02:00
Matthias Köfferlein 72c225839d
Merge pull request #802 from KLayout/issue-801
Implemented #801: update, added test case
2021-05-21 00:52:22 +02:00
Matthias Köfferlein 1a2054b484
Merge pull request #800 from KLayout/issue-798
Issue 798 (Spice reader enhancements for 3-terminal R and C)
2021-05-21 00:52:03 +02:00
Matthias Köfferlein 99f6beef54
Merge pull request #799 from KLayout/issue-778
Fixed #778 (monospace font selection generalized)
2021-05-21 00:51:21 +02:00
Matthias Koefferlein 7d7f99d1c8 Added resolve skew array option to buddy tools. 2021-05-21 00:15:51 +02:00
Matthias Koefferlein eb26b6ed34 Basic implementation of 'resolve skew aref' feature 2021-05-21 00:08:02 +02:00
Matthias Koefferlein 6496a71b5b Removed is_of_type() of gsi::Class which is not needed and appears to cause problems on M1 ARM 2021-05-19 22:40:14 +02:00
Matthias Koefferlein f4b981c71b Fixed #796: updated DXF version to AC1014 2021-05-19 22:30:09 +02:00
Matthias Koefferlein 55bdd904cb Implemented #801: update, added test case 2021-05-19 22:25:59 +02:00
Matthias Koefferlein 7a754b9c6f Fixed a basic bug in the deferred execution framework: when the execution of a deferred method unqueued another one, the application crashed. 2021-05-15 18:45:53 +02:00
Matthias Koefferlein f7fa6d8289 Added process_event for DRC log - makes progress log more useful. 2021-05-15 18:04:41 +02:00
Matthias Koefferlein ac57d0e473 New testdata because of #798 fix 2021-05-13 23:22:52 +02:00
Matthias Koefferlein aea8c4d1ad 3-terminal C's and R's for Spice writer too, using different default models for 2- and 3-terminal R and C 2021-05-13 21:13:41 +02:00
Matthias Koefferlein 4eb8f69a22 Spice reader: Support for resistance, capacitance and inductance values within parameters, basic support for 3-terminal resistors, more flexibility in SpiceReaderDelegate. 2021-05-13 20:40:28 +02:00
Matthias Koefferlein 948de369d6 Fixed #778 (monospace font selection generalized) 2021-05-13 13:53:34 +02:00
Matthias Köfferlein ea3bfabd90
Merge pull request #797 from KLayout/issue-795
Issue 795
2021-05-13 13:05:37 +02:00
Matthias Koefferlein f7631b2b2d Fixing a problem with log output in log window 2021-05-12 23:42:14 +02:00
Matthias Koefferlein 453ff7c7ad Removed process_events from log output as this is the main reason of instability. 2021-05-12 22:47:18 +02:00
Matthias Koefferlein e7ae7338b4 Fixed a potential invalid read access problem. 2021-05-12 22:46:54 +02:00
Matthias Koefferlein f5afdd91a5 Preventing event recursion on different levels. 2021-05-10 23:42:40 +02:00
Matthias Koefferlein d8f7873d53 Fixed #793 - problem was a wrong declaration of the iterator's return value 2021-05-08 23:16:27 +02:00
Matthias Köfferlein 9c5542d3d2
Merge pull request #788 from KLayout/issue-787
Issue 787 fixed
2021-05-08 22:26:10 +02:00
Matthias Köfferlein 3f46098d1b
Merge pull request #789 from KLayout/lefdef-macro-layouts-for-gui
Lefdef macro layouts for gui
2021-05-08 22:25:56 +02:00
Matthias Koefferlein 0d848d0597 Added LEF macro file list to API and UI 2021-05-04 22:56:03 +02:00
Matthias Koefferlein 70864e41af Implemented Edge#cut_point for GSI (was missing) 2021-05-04 21:12:46 +02:00
Matthias Koefferlein 31cc8f32e2 Fixed #787 - the results of const reference return values need to be copied as the holder object may go out of scope 2021-05-02 23:00:38 +02:00
Matthias Koefferlein 1285868546 Skip private-only tests without private data access 2021-05-01 21:36:52 +02:00
Matthias Köfferlein a3937d1943
Merge pull request #780 from KLayout/lefdef-enhancements
Lefdef enhancements
2021-04-30 07:21:00 +02:00
Matthias Koefferlein 4473e53b96 Merge branch 'master' into lefdef-enhancements 2021-04-29 23:54:26 +02:00
Matthias Koefferlein 7c3c631515 Merge branch 'master' into feedback 2021-04-29 23:53:47 +02:00
Matthias Koefferlein 281681fffb Limit hier processor instance/instance and instance/cluster cache depth to 20 entries per cell pair to avoid memory explosion 2021-04-28 22:51:00 +02:00
Matthias Koefferlein 855e8a3518 WIP: some enhancements with the effect of reducing instance interaction caching overhead and improving performance. More memory and cache metrics. 2021-04-27 22:27:22 +02:00
Matthias Koefferlein 3a5df63677 Merge branch 'master' into lefdef-enhancements 2021-04-27 07:41:47 +02:00
Matthias Koefferlein 2f204eaa21 Some refactoring of the instance-to-instance test in hier processor: gives some performance improvement with less memory for cache. 2021-04-26 23:15:27 +02:00
Matthias Koefferlein 6e52e6f0c6 WIP: introducing memory metrics for netlist/l2n 2021-04-26 22:26:31 +02:00
Matthias Koefferlein 7d8825a9fb Ghost cells are not renamed in blend mode 'rename' 2021-04-24 21:30:03 +02:00
Matthias Koefferlein 1ad0298d2d Merge branch 'lefdef-enhancements' 2021-04-24 20:53:43 +02:00
Matthias Koefferlein 44469f82d9 Corrected description of lefdef-lef-layouts options for buddy scripts. 2021-04-23 00:04:10 +02:00
Matthias Koefferlein 05901d767e Generalized macro resolution mode options for LEF/DEF reader (UI, buddy tools). Added lefdef-lef-layouts for buddy scripts for providing external layouts for FOREIGN. 2021-04-22 23:43:28 +02:00
Matthias Koefferlein ebfa187177 A somewhat more reasonable behavior for moving rulers in the presence of multiple rulers - the ruler highlighted in the transient selection is taken. 2021-04-20 23:00:34 +02:00
Matthias Köfferlein 721a4c6246
Merge pull request #776 from KLayout/issue-747
No comment skipping in descriptions - fixed #747
2021-04-19 22:29:48 +02:00
Matthias Köfferlein b917bf4fd6
Merge pull request #775 from KLayout/no-display-for-help-and-version
klayout -v and -h now work without a display
2021-04-19 22:29:24 +02:00
Matthias Köfferlein 7ef56c28c8
Merge pull request #774 from KLayout/issue-715
Fixes #715 (selection box larger than drawn)
2021-04-19 22:29:11 +02:00
Matthias Köfferlein e6ab8c2483
Issue 771 (#773)
* Fixed the issue - Byte array variant was not properly converted to Python/Ruby objects.

* Added tests + properly converting byte arrays to byte array variants in Python.
2021-04-19 22:28:27 +02:00
Matthias Koefferlein f8b8408adb No comment skipping in descriptions - fixed #747 2021-04-18 14:36:39 +02:00
Matthias Koefferlein 7a6364506d klayout -v and -h now work without a display 2021-04-18 14:27:00 +02:00
Matthias Koefferlein af6f11c2b3 Fixes #715 (selection box larger than drawn) 2021-04-18 14:02:26 +02:00
Matthias Köfferlein f8e7e3b6e1
Merge pull request #770 from KLayout/lvs-enhancement
Lvs enhancement
2021-04-14 23:24:30 +02:00
Matthias Koefferlein 44e495a77a Added test 2021-04-13 23:09:03 +02:00
Matthias Koefferlein 6ea04d6c27 Small LVS enhancement: reject backtracking branch if it leads to ambiguous name conflicts 2021-04-13 22:57:08 +02:00
Matthias Koefferlein a02c2c8eeb Merge branch 'master' into hierarchical-edges 2021-04-11 22:47:38 +02:00
Matthias Köfferlein f81b6588b6
Merge pull request #768 from KLayout/issue-757
Issue 757
2021-04-11 22:42:15 +02:00
Matthias Köfferlein 09e72d0507
Merge pull request #767 from KLayout/bugfixes
Bugfixes
2021-04-11 22:42:01 +02:00
Matthias Koefferlein e0d2be2ca6 Typo fixed 2021-04-11 09:50:40 +02:00
Matthias Koefferlein 93a6f2baa7 Warning for non-orthogonal array vectors; important bugfix: editing array vectors wasn't working properly in absolute coordinate mode 2021-04-11 09:40:27 +02:00
Matthias Koefferlein 841e6c8726 Merge branch 'bugfixes' into issue-757 2021-04-11 09:10:38 +02:00
Matthias Koefferlein 870fd2e0bd Fixed some valgrind issues. 2021-04-08 23:30:47 +02:00
Matthias Koefferlein c4e5310c95 Bugfix: holes and hulls are not neccessarily merged 2021-04-08 00:32:03 +02:00
Matthias Koefferlein 9ec5fb7384 Bugfix: LVS netlist browser did not navigate to device bbox correctly. 2021-04-07 23:52:39 +02:00
Matthias Koefferlein 25b46def17 Disallow zero columns and rows count for AREFs 2021-04-07 23:22:16 +02:00
Matthias Koefferlein 90b131a691 Fixed a warning about open transaction on snap/swap points in ruler properties - undo text is somewhat weak now :( 2021-04-07 23:15:23 +02:00
Matthias Koefferlein 217f957d60 Some more safety against accessing deleted user objects (stored point in temporary UserObject or DUserObject gets destroyed on destruction of the holder) - using C++ move semantics (overdue) 2021-04-07 22:16:52 +02:00
Matthias Koefferlein d7c79a3d32 Reversed the interpretation of 'good' row/column combination until further clarification. 2021-04-06 22:49:59 +02:00
Matthias Koefferlein 9b7879b2a9 Faster hierarchical edges. 2021-04-06 21:05:02 +02:00
Matthias Koefferlein 9b86ea96d2 Fixed another assertion 2021-04-05 00:30:33 +02:00
Matthias Koefferlein 2c245af13a Fixed an assertion happining with Qt binding enabled 2021-04-05 00:27:14 +02:00
Matthias Koefferlein 7b9a1ffdee Made 'rename' blend mode default for buddy scripts 2021-04-04 21:34:43 +02:00
Matthias Koefferlein ac9aa475ab Properly handle external classes such as PCellDeclarationHelper in gsi::initialize_expressions 2021-04-04 18:41:35 +02:00
Matthias Koefferlein 85c3128c13 Adding --blend-mode to buddy scripts for mitigating the risk of joining files 2021-04-03 18:26:53 +02:00
Matthias Koefferlein f9762009c6 Bugfix: don't forget to initialize child classes in gsi expressions. 2021-04-03 18:24:57 +02:00
Matthias Köfferlein 85448966d8
Merge pull request #763 from KLayout/25d-enhancements
25d enhancements
2021-04-03 15:33:57 +02:00
Matthias Köfferlein 09793e8502
Merge pull request #762 from KLayout/issue-757
Issue 757
2021-04-03 15:33:47 +02:00
Matthias Koefferlein 2862cb4ffd Marked 2.5d as experimental, wording of an error message 2021-04-03 01:39:19 +02:00
Matthias Koefferlein b4f2bfdd5c Enabled Qt4 builds hopefully 2021-04-03 01:24:24 +02:00
Matthias Koefferlein 52754ed418 2.5d view and help integration 2021-04-03 00:37:23 +02:00
Matthias Koefferlein 53f2c0e28f Doc for 2.5d view 2021-04-03 00:17:28 +02:00
Matthias Koefferlein 9c1ef3c6dd Enhanced 2.5d navigation 2021-04-02 22:58:39 +02:00
Matthias Koefferlein 173ba147b1 Rework for D25 tech management - compilation happens dynamically now. 2021-04-02 18:48:00 +02:00
Matthias Koefferlein 773fcb6b67 z Stack description language enhanced. 2021-04-02 17:27:38 +02:00
Matthias Koefferlein 9acf4cd99e Implemented solution for #757 2021-04-02 00:22:30 +02:00
Matthias Koefferlein 892f940166 Fill feature: enhancements and debugging
- added "multi_origin" mode for repeated fill
- enhanced fill coverage by better separation of islands in auto-origin mode
2021-04-01 23:29:45 +02:00
Matthias Koefferlein 25b978f39f Doc clarification. 2021-04-01 18:41:37 +02:00
Matthias Koefferlein e66c8046db Limited lvs stack depth to 500 to prevent stack overflow. 2021-03-31 23:04:35 +02:00
Matthias Koefferlein cf51130339 Fixed some build issues that appeared during merge 2021-03-30 23:20:39 +02:00
Matthias Koefferlein 94556c1448 Merge branch 'master' into lvs-enhancements 2021-03-30 18:56:27 +02:00
Matthias Koefferlein 729975bae8 Fixed a doc XML integrity issue 2021-03-30 18:23:42 +02:00
Matthias Köfferlein 8cb73c2daa
Merge pull request #759 from KLayout/fill-enhancements
Fill enhancements
2021-03-30 12:36:48 +02:00
Matthias Köfferlein 9f26cffa23
Fixed issue #750 (#752) 2021-03-30 12:36:29 +02:00
Matthias Köfferlein 93ba3c14ec
Merge pull request #751 from KLayout/drc-enhancements
Global transformations and some bug fixes
2021-03-30 12:35:47 +02:00
Matthias Koefferlein 6971048d28 Changed default for fill pitch (equal to cell's bbox w/h). Updated doc. 2021-03-29 22:57:20 +02:00
Matthias Koefferlein 47a845884d Added tests 2021-03-29 22:44:39 +02:00
Matthias Koefferlein 3f37b0e5a4 Fill cell box introduced as a concept, added tests, overlapping fill cells supported. 2021-03-29 22:12:47 +02:00
Matthias Koefferlein 127b520899 Updated doc. 2021-03-29 21:00:50 +02:00
Matthias Koefferlein b725f5fb0f fill_with_left, implementation + tests 2021-03-29 20:58:16 +02:00
Matthias Koefferlein f0386b616a Regenerated documentation 2021-03-29 17:27:16 +02:00
Matthias Koefferlein 311d0e3ca7 Fixed some merge issues. 2021-03-29 15:18:19 +02:00
Matthias Koefferlein 8fda92a9c4 Merge branch 'drc-enhancements' into fill-enhancements 2021-03-29 15:07:47 +02:00
Matthias Koefferlein dc3fa096d3 Renamed DRC tests to reduce merge conflicts. 2021-03-29 15:03:37 +02:00
Matthias Koefferlein 1608fa7d0e Bug fixes and tests for fill DRC feature. 2021-03-29 15:00:31 +02:00
Matthias Koefferlein d862970d47 Added doc for DRC fill. 2021-03-29 13:56:34 +02:00
Matthias Koefferlein 76982a3206 DRC support for fill, experimental 2021-03-29 13:28:43 +02:00
Matthias Koefferlein cefc2eeddb Bug fixes. 2021-03-29 01:05:53 +02:00
Matthias Koefferlein abd96c8400 Deep mode: avoid flattening by FlatRegion/FlatEdges poisoning 2021-03-28 23:19:14 +02:00
Matthias Koefferlein 6df333a05e Avoid turning DeepRegions into flat ones as this spoils hierarchical processing. 2021-03-28 22:33:24 +02:00
Matthias Koefferlein de4454a0d6 Updated documentation 2021-03-27 23:56:53 +01:00
Matthias Koefferlein 6ceac2c6ba Updated a test. 2021-03-27 23:14:33 +01:00
Matthias Koefferlein 9f295523e4 explicit net joining - preparations 2021-03-27 21:56:53 +01:00
Matthias Koefferlein e0eac2147b Refining the display enhancements for terminals in netlist browser. 2021-03-27 00:44:48 +01:00
Matthias Koefferlein 3ce13f6769 Attempt to get a better picture of mismatching device pins at the presence of device pin swapping 2021-03-26 17:46:10 +01:00
Matthias Koefferlein a0cab9832f Fixed probe feature of LVS dialog for flat extraction. 2021-03-26 00:40:18 +01:00
Matthias Koefferlein cb2d76def6 New test case for LVS 2021-03-26 00:02:01 +01:00
Matthias Koefferlein 8d5ef02c3d Using unlimited complexity and depth for LVS compare 2021-03-25 23:50:45 +01:00
Matthias Koefferlein 4252085663 Fixed an internal error in netlist compare
Problem was that during ambiguity resolution a choice may
be invalidated by further choices. This is taken care by
locking nets against re-mapping.
2021-03-25 01:56:23 +01:00
Matthias Koefferlein c48be51cb6 Made SPICE netlist elements case insensitive in LVS scripts 2021-03-24 22:11:15 +01:00
Matthias Koefferlein 3777d311af typos fixed, doc update 2021-03-24 00:07:16 +01:00
Matthias Koefferlein b8be13e2e6 Fixed a potential crash in the netlist browser 2021-03-23 22:55:30 +01:00
Matthias Koefferlein fa1719acc3 Avoid a deadlock in the logger system 2021-03-23 22:45:45 +01:00
Matthias Koefferlein 1ae109f90d DRC: deep mode region input does not flatten the layout on clip 2021-03-21 23:54:13 +01:00
Matthias Koefferlein 866ee9bd81 DRC: tiling mode with global transformation, debug + tested 2021-03-21 23:27:42 +01:00
Matthias Koefferlein afdc50d05a Global transformations for DRC and RecursiveShapeIterator 2021-03-21 23:09:09 +01:00
Matthias Koefferlein 536681f5e1 Small, but important bugfix: sometimes, the layout view got stuck in 'disable edits' mode which could only be left by closing the view. 2021-03-16 23:43:04 +01:00
Matthias Koefferlein 9fbc39a827 Fixed a segfault happening when closing a layout tab. 2021-03-16 23:35:24 +01:00
Matthias Koefferlein 3bd63e4b80 Qt4 compatibility 2021-03-15 18:23:34 +01:00
Matthias Koefferlein d9686c1f77 Added one more LVS test 2021-03-15 17:18:30 +01:00
Matthias Koefferlein 1495d9521c Tests updated. 2021-03-15 16:51:56 +01:00
Matthias Koefferlein b8677f650b Supply event processing from log events also if an abstract progress is used 2021-03-15 16:04:58 +01:00
Matthias Koefferlein 738e830c8d Important bug fix for LVS
It's very important for LVS to use the same compare delegates
for layout and schematic. Otherwise the sorting of the devices
won't be identical and fake mismatches will occure.
This is achieved in a bit hacky way to imposing the layout
compare delegates to the schematic netlist.
2021-03-15 15:40:02 +01:00
Matthias Koefferlein af4395e9a8 doc fixes. 2021-03-15 10:42:46 +01:00
Matthias Koefferlein a8f3df7aa5 Refactoring of the interpreter scheme with the goal to provide a functional cleanup. This is required if someone stops inside the debugger. Without a proper cleanup the application becomes dysfunctional. 2021-03-15 10:17:25 +01:00
Matthias Koefferlein f2b1661647 Merge branch 'drc-enhancements', remote-tracking branch 'origin' into lvs-debug 2021-03-14 23:52:03 +01:00
Matthias Koefferlein fea594ff69 Unit tests modified because of interface change for netlist comparer 2021-03-14 23:51:20 +01:00
Matthias Koefferlein 3845658319 Typo fixed. 2021-03-14 20:44:01 +01:00
Matthias Koefferlein 98c2db34e9 Another bugfix to cover the case of non-sequential pin IDs 2021-03-14 19:51:15 +01:00
Matthias Koefferlein 19741c9fb2 Bufix: LVS browser crashed on 'unload' and 'unload all' 2021-03-14 19:30:55 +01:00
Matthias Koefferlein 7bd9e8dc1b Bugfix: with BJT3 and BJT4 included, the extracted .lvsdb file could not be read back. 2021-03-14 18:40:16 +01:00
Matthias Koefferlein 4549da561b Better information in LVS report - at least for skipped circuits for now. 2021-03-14 18:21:32 +01:00
Matthias Koefferlein bb9ae20c32 Rework of the progress reporting scheme: LVS got a log now, the layout is horizontal for multiple progress objects, less flicker and more quiet display, cancel function should work more reliably now. 2021-03-14 16:25:56 +01:00
Matthias Köfferlein 34109c6096
Merge pull request #741 from KLayout/new-layout-with-layer
Implemented new layout dialog with intial layers
2021-03-14 12:28:11 +01:00
Matthias Köfferlein 184f2bee50
Smooth bug (#740)
* Smoothing function: provide ability to keep horizontal/vertical lines (important for cut lines)

* Introducting API compatibility macros for generic plugins.
2021-03-14 12:27:36 +01:00
Matthias Koefferlein 518145fd3e Fixed a crash in the netlist browser (pending highlights while netlist has been changed) 2021-03-14 10:01:51 +01:00
Matthias Koefferlein 67a1b3a99f WIP: fill + DRC, experimental. 2021-03-14 02:40:12 +01:00
Matthias Koefferlein c8f4c83c53 Fill tool enhancement (GSI, db): glue box for fill cell array compatibility in tiling processor. 2021-03-13 18:01:43 +01:00
Matthias Koefferlein c43cff0e43 UI cleanup. 2021-03-13 18:01:19 +01:00
Matthias Koefferlein 1b4eb1d401 Reworked fill_cell GSI integration (using defaults rather than variants, doc fixes) 2021-03-13 10:36:01 +01:00
Matthias Koefferlein f03f745ed8 Using a 'final' progress in the tiling processor to stop child progress objects from showing. 2021-03-13 10:35:26 +01:00
Matthias Koefferlein 1aa595560e Some refactoring 2021-03-13 10:34:48 +01:00
Matthias Koefferlein 3378a9a7ce 'final' progress objects: will prevent child progress objects from showing too. 2021-03-13 10:12:53 +01:00
Matthias Koefferlein 7c4c928632 Sync mode for tiling progress enhanced - with progress now. 2021-03-13 10:12:01 +01:00
Matthias Koefferlein f323c830d7 Enhancements for sync mode in threaded workers: allows providing progress too. 2021-03-13 10:11:27 +01:00
Matthias Koefferlein 9e474e4cc2 Provide more information for GSI error messages. 2021-03-13 00:15:05 +01:00
Matthias Koefferlein fd01328659 Fixed Expressions error message for multi-line expressions. 2021-03-12 23:18:23 +01:00
Matthias Koefferlein f2d106651b Reworked the fill scheme for better support of skewed fill repetitions. 2021-03-11 21:27:49 +01:00
Matthias Koefferlein 7d53f6d454 WIP. 2021-03-10 00:43:08 +01:00
Matthias Koefferlein d4f641bff8 WIP. 2021-03-09 23:45:53 +01:00
Matthias Koefferlein 7bd4a692d8 WIP 2021-03-08 20:45:52 +01:00
Matthias Koefferlein 9e3183250f Fixed some flaws in the layer list
- sometimes, layers which were supposed to be hidden were still shown
  (e.g. after paste, "add other layer views" etc.)
- sometimes, layers were only partially hightlighted due to invalid
  persistent model indexes.
2021-03-07 22:20:28 +01:00
Matthias Koefferlein a7c263bc98 Fixed an uninitialized member. 2021-03-07 22:20:18 +01:00
Matthias Koefferlein 175fde2562 Enabled shortcuts for actions in macro editor widget
For example, Ctrl+S was captured by the editor rather than forwarded to the
action.
2021-03-07 22:19:23 +01:00
Matthias Koefferlein d76fc02244 Fixed a memory corruption issue in db::rasterize 2021-03-07 11:26:54 +01:00
Matthias Koefferlein 6e6ce998aa Refactoring, preparing script generation. 2021-03-06 19:38:19 +01:00
Matthias Koefferlein 637968cbc4 Centering of bounding box in fill tool - this allows using step vectors alone without a boundary layer 2021-03-06 00:31:05 +01:00
Matthias Koefferlein 07966baf71 First draft of fill dialog with enhancements 2021-03-05 18:20:45 +01:00
Matthias Koefferlein 0d04937c91 Added tests for fill tool 2021-03-05 16:27:57 +01:00
Matthias Koefferlein dbeee1531e Matrix2d and Matrix3d generalized for integer coordinates, added transformation methods for polygons, regions, boxes, edges, etc. Fill enhancements basically implemented. Needs testing. 2021-03-05 15:31:40 +01:00
Matthias Koefferlein beefaf40f5 Added test to discover that the issue is already fixed. 2021-03-04 23:21:50 +01:00
Matthias Koefferlein 3a9a7e81fb Implemented new layout dialog with intial layers
Plus small enhancements: the first layer will be selected
initially, so you can starting drawing immediately.
2021-03-04 23:11:54 +01:00
Matthias Koefferlein 0ca3484e98 Fixed #739 (display bug) 2021-03-04 22:00:46 +01:00
Matthias Koefferlein 9cb7c2cc2a Fixed a build issue without HAVE_QT_XML 2021-03-03 00:15:12 +01:00
Matthias Koefferlein 687059525c Fine-grained Qt module selection for Qt binding and disabling of view_25d plugin without OpenGL 2021-03-02 23:28:35 +01:00
Matthias Koefferlein 44baeea362 Disable view25d plugin if OpenGL is not enabled. 2021-03-02 22:01:08 +01:00
Matthias Koefferlein a904aabcce Fixed DRC logging. 2021-03-01 22:35:04 +01:00
Matthias Koefferlein e639c30570 split_* operations in DRC (interacting/non_interacting in one step), doc, tests. 2021-03-01 21:04:57 +01:00
Matthias Koefferlein 570c79e446 gsi binding, DRC binding of split_... region functions. 2021-03-01 00:47:00 +01:00
Matthias Koefferlein 98eebe25ad gsi binding of split interaction functions. 2021-03-01 00:25:50 +01:00
Matthias Koefferlein c5788f3621 Fix: clone() is good :) 2021-03-01 00:09:13 +01:00
Matthias Koefferlein 6f8e981504 Merge branch 'master' into drc-enhancements 2021-02-28 23:31:14 +01:00
Matthias Koefferlein 2a9564856b Fixed Qt-binding less builds 2021-02-28 23:31:06 +01:00
Matthias Koefferlein 8c6b231ae6 First steps towards differential interaction functions 2021-02-28 23:22:44 +01:00
Matthias Koefferlein aad393d7c9 DRC density check: updated doc, added tile_count option 2021-02-28 18:46:14 +01:00
Matthias Koefferlein cfc86ad62f Implemented density check: 'with_density', 'without_density' 2021-02-28 18:21:05 +01:00
Matthias Koefferlein 77356cd877 More unit test stability 2021-02-27 21:31:32 +01:00
Matthias Koefferlein be5714607f Added a build dependency for safer building 2021-02-27 19:08:43 +01:00
Matthias Koefferlein 33ae3b0239 Added a build system option to enable/disable uitools support as some distributions do not support that 2021-02-27 18:03:37 +01:00
Matthias Koefferlein 66199958a5 Stupid typo fixed 2021-02-27 00:02:09 +01:00
Matthias Koefferlein 9350b33bcb Squashed commit of the following:
commit 2a8a2d228d
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date:   Fri Feb 26 23:54:08 2021 +0100

    One more fix.

commit 8c4d76505c
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date:   Fri Feb 26 23:03:07 2021 +0100

    More patches for uitools-less build for CentOS 8

commit 2ac28292b8
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date:   Fri Feb 26 22:52:27 2021 +0100

    First steps for fixing build on CentOS 8 without uitools
2021-02-26 23:59:23 +01:00
Matthias Koefferlein f993c0397d A linker issue fixed on Windows. 2021-02-25 23:08:42 +01:00
Matthias Koefferlein 68e1284c93 Fixed #728 2021-02-25 22:03:41 +01:00
Matthias Köfferlein b968f2b47f
#730: providing a new Qt module named QtUiTools for QUiLoader class s… (#735)
* #730: providing a new Qt module named QtUiTools for QUiLoader class support.

* Fixed a compile error on Mac

* Added QtUiTools to some more places

* Fixed a linker issue in the QtUiTools Python lib

* On occasion fixed a infinite recursion problem in the debugger

The recursion happened because by mistake I instantiated a
QApplication inside an in-application Python script. This
crashed the debugger due to infinite recursion. This is not
a real use case but to prevent similar issues, a recursion
sentinel was added.

* Removed QCoreApplication#notify from script bindings

Reasoning: "notify" made standalone scripts using QApplication and
QUiLoader virtually impossible.

Problem description:
- When a QApplication object is instantiated, e.g. in Python, the Qt binding
  will install reimplementation hooks as the object may be dynamically
  extended.
- A notify is virtual this means the *every* "notify" call in the application
  is routed through the interpreter.
- For one thing this will slow down the application
- But as "notify" is called a zillion times this has more than this side effect.
- Specifically "notify" is called from within the QWidget constructor to
  indicate a new widget. Then, if a QDialog for example is instatiated, it's
  base class constructor will call "notify" when the object isn't ready yet.
- This has another severe side effect: as the object isn't ready yet, it gets
  registered in the Python space with the wrong class and QDialog is not visible
  as such.

To mitigate these problems, the most efficient solution is to disable "notify"
in general. There is hardly any use case in a script environment (in C++,
apart from hacking the only reasonable use case is exception handling, but
this does not apply to scripts). For providing the call functionality of
"notify" you should better use "postEvent" or "sendEvent" anyway.

So farewell QCoreApplication.notify ...

* Fixed python test for QtUiTools module

* Fixed UiTools test on Qt4 - QUiLoader needs an application object

Co-authored-by: Kazunari Sekigawa <kazunari.sekigawa@gmail.com>
2021-02-25 21:29:21 +01:00
Matthias Köfferlein 8b2ecf41df
Fixed issue by providing a compatibility bridge between tl::Stream (abstract paths) and tl::URI (#734) 2021-02-25 21:28:48 +01:00
Matthias Köfferlein 483f67307c
Merge pull request #732 from KLayout/lefdef-enhancements
Lefdef enhancements
2021-02-25 21:28:02 +01:00
Matthias Köfferlein 82587e70c3
Merge pull request #731 from KLayout/recursive-inst-iterator
Recursive inst iterator
2021-02-25 21:27:41 +01:00
Matthias Köfferlein 9d5636a89d
Merge pull request #729 from KLayout/search-improvements
Search improvements
2021-02-25 21:27:25 +01:00
Matthias Köfferlein c28451ed88
Merge pull request #727 from KLayout/drc-enhancements
Drc enhancements
2021-02-25 21:27:06 +01:00
Matthias Koefferlein f700b3e056 Linker issue solved 2021-02-21 23:18:57 +01:00
Matthias Koefferlein 835133854c Qt4 compatibility, some enhancement of macro IDE completer 2021-02-21 22:42:52 +01:00
Matthias Koefferlein 9074c918bb Fixed a linker name clash. 2021-02-21 22:11:33 +01:00
Matthias Koefferlein fea33b284e Qt4 compatibility. 2021-02-21 21:55:36 +01:00
Matthias Koefferlein 3db1db831f Test update after update of LEF/DEF reader. 2021-02-21 21:23:45 +01:00
Matthias Koefferlein fe2d4eb570 Bugfix: LEF/DEF FILLS options were not active in buddy scripts. 2021-02-21 21:07:13 +01:00
Matthias Koefferlein eda1992a7d Added VIA size selectors for LEF/DEF .map files. 2021-02-21 21:00:55 +01:00
Matthias Koefferlein 898dbf07e9 Implemented FILLS support for LEF/DEF 2021-02-21 18:27:25 +01:00
Matthias Koefferlein 96e3570c6d LEF/DEF: preparations for FILLS support, UI rearrangement. 2021-02-21 17:28:58 +01:00
Matthias Koefferlein 2168a72b9d Technology changed event for CellView 2021-02-21 09:12:13 +01:00
Matthias Koefferlein b31a64b367 Formulas for 'goto position' dialog. 2021-02-21 08:45:54 +01:00
Matthias Koefferlein b1fc6008d9 WIP: better progress when reading OASIS irregular repetitions. 2021-02-21 08:36:45 +01:00
Matthias Koefferlein 0f4a10441d RecursiveInstanceIterator: Doc fixes, tests, instance array iteration. 2021-02-20 22:17:43 +01:00
Matthias Koefferlein a1bae225e3 Recursive instance iterator, tests 2021-02-20 17:50:32 +01:00
Matthias Koefferlein ca11f0799a Recursive instance iterator, selection of target cells. 2021-02-20 01:09:17 +01:00
Matthias Koefferlein 0f47ff68a5 Recursive instance iterator, debugging. 2021-02-20 01:03:05 +01:00
Matthias Koefferlein 6527d29f8f Recursive instance iterator, debugging. 2021-02-20 00:48:07 +01:00
Matthias Koefferlein 412056afed Recursive instance iterator, first draft. 2021-02-20 00:40:05 +01:00
Matthias Koefferlein effa8027cc Implemented completer for macro editor. 2021-02-14 23:12:50 +01:00
Matthias Koefferlein 16f6174ad9 'apply as filter' for search feature in libraries view too 2021-02-14 21:07:36 +01:00
Matthias Koefferlein 92d36868bb Enhancements to search and replace in macro editor. 2021-02-13 19:13:22 +01:00
Matthias Koefferlein 0f8dc9ac13 Improvements on layer list search and filtering 2021-02-13 09:51:28 +01:00
Matthias Koefferlein 71f64f5f63 Bugfixed search function for cells. 2021-02-12 23:46:57 +01:00
Matthias Koefferlein c64dad0b3a Bugfix, crash on switching to flat cell list 2021-02-12 01:20:38 +01:00
Matthias Koefferlein 423dddae62 Bug fixes on cell name search feature. 2021-02-12 00:44:31 +01:00
Matthias Koefferlein 71a7326fe9 Enhancements to cell name search feature. Needs more debugging. 2021-02-10 00:17:01 +01:00
Matthias Koefferlein b3685c6722 Implemented with_holes for generic DRC too 2021-02-08 21:29:41 +01:00
Matthias Koefferlein a9fa5d73f9 Introducing 'with_holes' and 'without_holes' in DRC and RBA::Region. 2021-02-08 20:59:17 +01:00
Matthias Koefferlein 94e6f0f7a6 Logging progress for DRC, introducing 'abstract progress' concept 2021-02-07 23:41:53 +01:00
Matthias Koefferlein 620776fe51 Provide better log output for region 2021-02-07 19:15:47 +01:00
Matthias Koefferlein b97413234a trying to provide a log along with progress 2021-02-07 19:14:20 +01:00
Matthias Köfferlein d8c0ea806a
Issue 723 fixed. (#724)
* Fixed a segfault with simple 'klayout -v'

* Fixed #723
2021-02-05 23:28:22 +01:00
Matthias Köfferlein e31d7afb64
Reduce risk of DRC polygon split artefacts in deep mode (#722)
* Fixed a segfault with simple 'klayout -v'

* is_halfmanhattan polygon predicate, confine polygon splitting to halfmanhattan

Splitting any-angle polygons for area reduction in the
deep processor creates a risk of introducing grid-snap
artefacts. Hence we avoid this.
2021-02-05 23:28:04 +01:00
Matthias Köfferlein c837b306be
Issue 720 (#721)
* Implemented a backup scheme for the file writer.

* Also consider backup files when the writer fails.

* Removed test exception

* Added config option for number of backups.
2021-02-02 22:47:25 +01:00
Matthias Koefferlein 8e7d571c2c Removed inclusion of APPDATA into search path on Windows - this was pulling DLLs from other installations. 2021-02-02 22:31:22 +01:00
Matthias 47777b7eba Fixed crash in WebDAV access test observed on MacOS, but probably also relevant for other platforms. 2021-02-02 19:53:55 +01:00
Matthias Koefferlein fc4976be81 Remove test code 2021-02-01 22:01:29 +01:00
Matthias Koefferlein fdbf26f184 Merge branch 'master' of github.com:KLayout/klayout 2021-01-31 21:49:32 +01:00
Matthias Koefferlein 036e9f7d6b Yet another fix for Windows build. 2021-01-31 21:49:20 +01:00
Matthias Koefferlein d10165928f Trying to fix Windows build. 2021-01-31 20:21:14 +01:00
Matthias Köfferlein 4134829304
Issue 718 (#719)
* WIP: first part of fix - generation of hole cutlines

First problem was that hole cutlines got extended
over the whole length and sometimes lead to coincident
edges which are difficult to resolve for the polygon
cutter.

* Refined solution, fixed #718

- disabled elaborate hole insertion procedure for now as the
  performance impact has to be assessed yet and the new scheme
  will break many tests
- stricter rejection of ambiguous configurations in the polygon cutter
- fallback is boolean AND now since there is no need to re-invoke the
  polygon cutter (we can't do so as we made it more strict).
  Performance-wise we replace a merge by an AND step which may even be
  faster the output is smaller and the polygon cutter does not need
  to be re-invoked.

* Compatibility with other STLs
2021-01-31 19:21:15 +01:00
Matthias Köfferlein 10eee4d895
Fixed #709. (#714) 2021-01-31 19:21:00 +01:00
Matthias Köfferlein 97ed4cf0f2
Merge pull request #712 from KLayout/gsi-fixes
Some enhancements to script API
2021-01-31 19:20:35 +01:00
Matthias Koefferlein f263f5c44c Compatibility with older Ruby and Python versions in unit tests. 2021-01-31 17:14:21 +00:00
Matthias Koefferlein f1d2f39031 Added signal-safe sleep function which does not return when a timer signal happens. Fixes some random fails in the test suite. 2021-01-31 16:20:16 +01:00
Matthias Koefferlein 290d393126 Fixed another link issue on Windows 2021-01-27 21:42:43 +01:00
Matthias Koefferlein 1cdcf546f8 Fixed linker issue on Windows. 2021-01-27 12:54:25 +01:00
Matthias Koefferlein cdb62cc111 Merge branch 'master' into gsi-fixes 2021-01-27 12:46:34 +01:00
Matthias Köfferlein 1ba4394c2a
Merge pull request #710 from KLayout/byte-arrays
Byte arrays
2021-01-27 12:42:48 +01:00
Matthias Koefferlein 96136e6993 Fixed Qt-less builds. 2021-01-27 08:05:02 +01:00
Matthias Koefferlein dce371caaa Fixed Qt-less builds. 2021-01-26 23:42:18 +01:00
Matthias Köfferlein bd41f7222d
Merge pull request #706 from KLayout/spline-as-api
Generalized spline interpolation of DXF reader
2021-01-26 23:39:51 +01:00
Matthias Koefferlein c7113b8c72 Added methods to manipulate key bindings and menu visibility through scripts (MainWindow#set_key_bindings, MainWindow#get_key_bindings, MainWindow#set_menu_items_hidden ...) 2021-01-26 23:10:26 +01:00
Matthias Koefferlein 6a23769387 Different integration of Dispatcher interface with MainWindow
In 0.27 the main window got it's own configuration API
as now it's possible to instantiate a main window explicitly
and not application backs up configuration. Because GSI allows
as single base class only, we cannot derive from Dispatcher.
A delegate is used instead.
2021-01-26 07:56:49 +01:00
Matthias Koefferlein 702852a8a9 Merge branch 'master' of github.com:KLayout/klayout into byte-arrays 2021-01-25 08:11:53 +01:00
Matthias Koefferlein 885c52eeeb Stupid bug fixed 2021-01-25 08:10:47 +01:00
Matthias Koefferlein 204cb7ec3f Fixed build with curl 2021-01-25 08:05:16 +01:00
Matthias Koefferlein 199602424a Merge branch 'master' of github.com:KLayout/klayout into byte-arrays 2021-01-24 23:52:56 +01:00
Matthias Koefferlein d31f87f053 Some issues with the byte array binding fixed, less ambiguitites with Qt bindings, tests added. 2021-01-24 23:44:40 +01:00
Matthias Koefferlein 245bf93429 Some build fixes to enable basic compilation on CentOS6 2021-01-24 17:37:46 +00:00
Matthias Koefferlein 5aac018503 Mapping QByteArray (and std::vector<char>) to Python 'bytes' now. 2021-01-24 17:36:40 +01:00
Matthias Koefferlein c309961109 More verbose debugging for HTTP requests. 2021-01-23 22:27:53 +01:00
Matthias Koefferlein d1e6845ae4 Replaced std::auto_ptr by std::unique_ptr because the latter is deprecated 2021-01-23 21:55:51 +01:00
Matthias Koefferlein a1ace443f7 Added LayoutView#close 2021-01-23 20:56:00 +01:00
Matthias Koefferlein fdd5671602 Attempt to solve WebDAV redirection issue on Windows. 2021-01-23 20:40:25 +01:00
Matthias Koefferlein 372a42e84a Renamed test files so that debugger doesn't get confused 2021-01-23 20:40:10 +01:00
Matthias Koefferlein c8951c10cd Generalized spline interpolation of DXF reader and provide a script binding (RBA::Utils). 2021-01-23 18:44:36 +01:00
Matthias Koefferlein d7986c4849 Merge branch 'master' into opengl-fix 2021-01-23 16:22:56 +01:00
Matthias Koefferlein 1a3675956e Ported to OpenGL 3.2 for Windows compatibility. 2021-01-23 15:54:02 +01:00
Matthias Köfferlein 41094ab839
Fixed #704 (DXF reader: rational splines not supported) (#705)
* Fixed issue #704. TODO: replace algorithm by De Boor, check if accuracy is still maintained.

* Switch spline interpolation algorithm to De Boor for better numerical stability.

* Updated tests with DXF accuracy test, provide a warning for unsupported SPLINE types.
2021-01-21 07:48:08 +01:00
Matthias Koefferlein dc40f9a885 Trying to fix OpenGL compatibility issue. 2021-01-20 22:25:16 +01:00
Matthias Koefferlein 618e1134c4 More robustness against test variations on different platforms. 2021-01-19 22:23:02 +01:00
Matthias Koefferlein 63d19bdb4c More robustness against test variations on different platforms. 2021-01-19 21:49:38 +01:00
Matthias Koefferlein 73485a5061 More robustness against differences on different platforms. 2021-01-19 20:36:25 +01:00
Matthias Koefferlein 11e9f89fc2 Introduced normalization into region/edges/edge pairs/texts tests to get rid of platform dependency because of unordered_set implementation details. 2021-01-19 08:03:42 +01:00
Matthias Koefferlein 3677a36804 Made region tests less susceptible to 'unordered_set' implementation details. 2021-01-19 01:26:20 +01:00
Matthias Koefferlein c184a8a5fb Merge branch 'master' of github.com:KLayout/klayout 2021-01-18 21:36:59 +01:00
Matthias Koefferlein 9b275d85a6 More stable hash function (the previous one was too sparse for small coordinates). Test updates for this reason. 2021-01-18 20:26:03 +01:00
Matthias Koefferlein 757543ec48 Fixed a build issue with 64bit coordinates. 2021-01-18 20:25:40 +01:00
Matthias Köfferlein f32901407c Fixed Windows build 2021-01-18 12:30:05 +01:00
Matthias Koefferlein 9a7b2babc0 Fixed Windows build 2021-01-17 23:50:42 +01:00
Matthias Koefferlein 19ecf8866c Fixed Windows build 2021-01-17 23:41:51 +01:00
Matthias Koefferlein 5b60e2be90 Fixed Windows build 2021-01-17 23:35:22 +01:00
Matthias Koefferlein e1312d7a0c Merge branch 'master' of github.com:KLayout/klayout into complex_drc_ops 2021-01-17 22:45:40 +01:00
Matthias Köfferlein a026da9bf8
Merge pull request #699 from KLayout/oas-reader-issue
Fixed an issue with the OASIS reader (unused cells popped up as dummy…
2021-01-17 22:45:01 +01:00
Matthias Koefferlein 081c445cd8 Merge branch 'master' into complex_drc_ops 2021-01-17 19:55:28 +01:00
Matthias Koefferlein e3773be7dc Updated tests and provide 'lesser' and 'greater' edge pair extraction operator. 2021-01-17 19:55:21 +01:00
Matthias Koefferlein 9cf0a9e659 Major enhancements for DRC feature (universal DRC)
Main issue: universal DRC scheme and rectangle filtering/opposite filtering/shielding.

The space function required some enhancements to accomodate symmetric interactions.
Now there are symmetric edge pairs. Space initially runs twofold (primary to foreign)
but produces symmetric edge pairs. These are filtered later unless converted before.
2021-01-17 19:26:22 +01:00
Matthias Koefferlein fd90e66ee1 WIP (shielding, various bug fixes) 2021-01-17 14:38:44 +01:00
Matthias Koefferlein 9a55bdc687 Fixed caching implementation of complex DRC ops. 2021-01-16 20:34:15 +01:00
Matthias Koefferlein c66a19ba42 More consistent progress reporting for complex ops. 2021-01-16 19:01:45 +01:00
Matthias Koefferlein 80e033c618 Fixed shielded implementation for DRC 2021-01-16 18:09:26 +01:00
Matthias Koefferlein 758861226f Doc updates 2021-01-16 18:08:44 +01:00
Matthias Koefferlein ed73046c13 Allow flatten for non-editable layouts too 2021-01-16 18:08:23 +01:00
Matthias Koefferlein d5f18ca1c1 Spelling fixed. 2021-01-16 11:13:17 +01:00
Matthias Koefferlein f0ad373248 Build errors fixed. 2021-01-16 10:31:08 +01:00
Matthias Koefferlein 3732e0428e Build errors fixed. 2021-01-16 10:12:48 +01:00
Matthias Koefferlein 785bc0b6e5 Build error fixed, test cases updated. 2021-01-16 10:09:07 +01:00
Matthias Koefferlein 4460c294b0 Some bug fixes, doc update, test updates. 2021-01-16 00:32:06 +01:00
Matthias Koefferlein 111b49f0ef Updated DRC documentation 2021-01-15 19:01:32 +01:00
Matthias Koefferlein bbd511bc8b Added some tests for 'switch', small bug fix. 2021-01-15 17:32:39 +01:00
Matthias Koefferlein ec88362eca Doc updates 2021-01-15 00:56:17 +01:00
Matthias Koefferlein 8051bef9ac Doc update, fixed DRC's 'switch' function 2021-01-15 00:31:26 +01:00
Matthias Koefferlein 80996a77fb New *_sum quantifiers, doc enhancements, bug fixing 2021-01-14 00:21:21 +01:00
Matthias Koefferlein 80d0229b7c More intuitive DRC specification of 'projection_limits' with 'projecting' and a condition 2021-01-13 15:58:55 +01:00
Matthias Koefferlein c5859cd957 Tests for new DRC features (square, new attiribute tests) 2021-01-13 13:35:37 +01:00
Matthias Koefferlein a8f08bffac WIP: new ratio filters, squares for DRC 2021-01-13 02:12:33 +01:00
Matthias Koefferlein dce22fee37 New region filters (square, area ratio, relative height) 2021-01-13 01:08:42 +01:00
Matthias Koefferlein ae29c75326 WIP: documentation, local merging of polygon for interact, covering .. 2021-01-12 01:08:12 +01:00
Matthias Koefferlein aefc3153fe Doc update. 2021-01-10 21:47:43 +01:00
Matthias Koefferlein f3f196cfb3 Doc update, implemented != for DRC operations. 2021-01-10 21:36:58 +01:00
Matthias Koefferlein 2951bf424c Updated doc. 2021-01-10 20:20:33 +01:00
Matthias Koefferlein 383f72eb09 Added missing files, tests for angle and length (universal DRC), some clarifications and bug fixes. 2021-01-10 20:18:06 +01:00
Matthias Koefferlein 0a7ca69da2 Some refactoring (angle check), angle check and length check for universal DRC, tests, bug fixes. 2021-01-10 19:54:16 +01:00
Matthias Koefferlein 158ea196ec WIP: more tests, bug fixes, new feature: deep_reject_odd_polygons, odd_polygons check disabled in deep mode 2021-01-10 18:46:01 +01:00
Matthias Koefferlein c24568b510 Added more tests, debugging. 2021-01-10 09:02:41 +01:00
Matthias Koefferlein 168b41c119 WIP: new tests for complex DRC ops. 2021-01-09 23:38:53 +01:00
Matthias Koefferlein 858c78729f More tests for complex DRC 2021-01-09 23:23:50 +01:00
Matthias Koefferlein ddf36290fa Corner detection feature: tests, bug fixes, enhancements (inclusive/exclusive angle constraints) 2021-01-09 23:10:17 +01:00
Matthias Koefferlein bc63f98622 WIP: more tests on complex DRC ops 2021-01-09 18:40:32 +01:00
Matthias Koefferlein 6f93ff616f More tests, bug fixes. 2021-01-09 17:50:39 +01:00
Matthias Koefferlein b15e7f2b9f WIP: proper integration of complex DRC ops in DRC framework 2021-01-09 16:37:16 +01:00
Matthias Koefferlein 7093dfd0eb WIP: bug fixes, more tests for complex DRC 2021-01-09 15:56:55 +01:00
Matthias Koefferlein d1868a4b23 WIP: some development, bugfixing on DRC implementation - mainly about correct opposite filter operation 2021-01-06 23:39:51 +01:00
Matthias Koefferlein 9c95bed67e Generic DRC: new tests, bug fixes. 2021-01-06 11:59:47 +01:00
Matthias Koefferlein 0d9ee8a70d First test for generic DRC feature 2021-01-06 09:52:24 +01:00
Matthias Koefferlein 736fe874eb Fixed an issue in the DRC doc generation (needs explicit doc for enum defaults) 2021-01-06 02:31:56 +01:00
Matthias Koefferlein c160f7f43f Documentation updates 2021-01-06 02:20:36 +01:00
Matthias Koefferlein 37d62f97e1 WIP: More documentation for complex DRC ops 2021-01-06 01:27:02 +01:00
Matthias Koefferlein 7d4310d343 Updated copyright to 2021 2021-01-05 22:57:48 +01:00
Matthias Koefferlein 9812ff7901 WIP: a new concept for complex DRC - 'foreign' subjects 2021-01-05 22:49:30 +01:00
Matthias Koefferlein 6dd190e3af More compound DRC operations (join, merge, count filter) 2021-01-04 21:34:12 +01:00
Matthias Koefferlein ee082f65a0 WIP: documentation 2021-01-04 01:14:39 +01:00
Matthias Koefferlein 7f1d91f529 WIP: typo fixed 2021-01-03 23:32:24 +01:00
Matthias Koefferlein d273c2514d WIP: DRC complex ops, implementation, doc, refactoring ... 2021-01-03 19:33:14 +01:00
Matthias Koefferlein f3d8fb4a43 WIP: refactoring of DRC Ruby code 2021-01-03 19:03:30 +01:00
Matthias Koefferlein 815b81ce59 WIP: Introduced DRC negative options in GSI 2021-01-02 21:10:05 +01:00
Matthias Koefferlein 82a70bdde0 WIP: negative output of DRC functions. 2021-01-02 20:33:16 +01:00
Matthias Koefferlein 98792c55de WIP: attempt to implement negative edge output on width and space 2021-01-02 19:34:46 +01:00
Matthias Koefferlein 70ccc50b39 WIP: some refactoring to make functions available for DRC compound operations and to simplify binding 2021-01-01 23:20:11 +01:00
Matthias Koefferlein dd84e64446 Fixed an issue with the OASIS reader (unused cells popped up as dummy top levels)
This happens when OASIS declares a cell name without actually using it.
The intended behavior is to drop such cells.
2020-12-30 23:37:01 +01:00
Matthias Koefferlein cd73987b30 More consistent behavior of the preset views (front, top ...) 2020-12-28 21:13:07 +01:00
Matthias Koefferlein a0d05753ad No segfault on OpenGL initialization failure but nice error screen. 2020-12-28 00:09:27 +01:00
Matthias Köfferlein 70dcc92640
Merge pull request #694 from KLayout/issue-693
Fixed #693: URI relative path resolution if the first URI is empty.
2020-12-27 21:23:40 +01:00
Matthias Koefferlein cdcac6f5d3 WIP: copy-on-write for FlatRegion and FlatEdges too 2020-12-27 19:19:09 +01:00
Matthias Koefferlein cc58d7d8ee WIP: performance improvement: copy-on-write for flat edge pairs 2020-12-27 18:45:10 +01:00
Matthias Koefferlein 4ec00fb129 Fixed an issue with wrapping new objects into tl::Variants which are returned directly. For these objects, ownership needs to be transferred to the script. 2020-12-27 17:09:06 +01:00
Matthias Koefferlein 1026d197cb WIP: Some optimization of check functions 2020-12-27 01:05:55 +01:00
Matthias Koefferlein 3f8113e404 WIP: Updated some test, debugging 2020-12-26 23:55:50 +01:00
Matthias Koefferlein dcaa0d0ea5 WIP: deep mode and complex DRC ops, debugging 2020-12-26 21:11:22 +01:00
Matthias Koefferlein 493024734d WIP: more tests enabled for deep mode 2020-12-26 20:48:11 +01:00
Matthias Koefferlein 1bb04c711c WIP: more tests enabled for deep mode too. 2020-12-26 19:55:42 +01:00
Matthias Koefferlein afc9fc9c7a WIP: Bugfixed deep processor (multi-input mode and input layer index), added tests 2020-12-26 19:43:51 +01:00
Matthias Koefferlein dc80ed77b1 WIP: region/edge booleans, more tests, debugging 2020-12-26 17:48:53 +01:00
Matthias Koefferlein 9b4f65bab4 Typo fixed 2020-12-26 17:18:23 +01:00
Matthias Koefferlein 953bee4790 WIP: more tests, debugging 2020-12-26 17:17:43 +01:00
Matthias Koefferlein 8d6dd23850 WIP: more tests, debugging 2020-12-26 17:06:44 +01:00
Matthias Koefferlein cc6ad01529 WIP: more tests, debugging 2020-12-26 16:04:35 +01:00
Matthias Koefferlein 00a7021a30 WIP: more tests, debugging. 2020-12-26 15:41:20 +01:00
Matthias Koefferlein 3707fae3c2 WIP: more tests, debugging 2020-12-26 14:58:07 +01:00
Matthias Koefferlein 9c6e0129d9 WIP: debugging, test case for compound booleans 2020-12-26 00:06:49 +01:00
Matthias Koefferlein 80509c64e5 WIP: generalization of EdgePair/Edge/Polgyon processors, chained operations in compound ops. 2020-12-25 18:03:57 +01:00
Matthias Koefferlein 19508f96e9 WIP: debugging 2020-12-25 16:27:24 +01:00
Matthias Koefferlein 4974a81af6 WIP: debugging 2020-12-25 15:00:52 +01:00
Matthias Koefferlein 46a4178010 More elaborate handling of selection changed events in LayoutView (avoids dummy events) and some more GSI methods for manipulating or checking selections. 2020-12-24 17:57:01 +01:00
Matthias Koefferlein 0fbfa4dfde Fixed URI relative path resolution if the first URI is empty. 2020-12-23 23:33:11 +01:00
Matthias Koefferlein 45a8f7aa20 Merge branch 'master' into complex_drc_ops 2020-12-20 23:50:54 +01:00
Matthias Koefferlein ca1ec353fb Some fixes for the technology feature
- Fixed some potential segfaults due to invalid layout object
- More consistent handling of potential technology switch due to
  active cellview change
2020-12-20 23:49:29 +01:00
Matthias Koefferlein 1c6ffb4086 Fixed unit tests. 2020-12-20 21:45:55 +01:00
Matthias Koefferlein db19e92083 Fixed some merge issues. 2020-12-20 20:53:43 +01:00
Matthias Koefferlein 9290bb7154 Fixed a merge conflict 2020-12-20 19:27:54 +01:00
Matthias Koefferlein cfe38aab42 Merge branch 'lefdef' 2020-12-20 19:26:51 +01:00
Matthias Koefferlein 866ac7ec76 Merge branch 'issue-691' 2020-12-20 19:25:31 +01:00
Matthias Koefferlein 4213f44d72 More robustness against configuration corruption. 2020-12-20 17:58:37 +01:00
Matthias Koefferlein 5a828b4c8f WIP: code cleanup 2020-12-20 17:57:34 +01:00
Matthias Koefferlein ee47a1e087 Fixed the manager's 'cancel' implementation: with this, redo of a cancelled operation isn't possible any more 2020-12-20 00:42:17 +01:00
Matthias Koefferlein 4b8577a89b Temporary compatibility with lefdef branch - remove when this branch is merged. 2020-12-20 00:35:23 +01:00
Matthias Koefferlein b6f710a9fe WIP: Fixed DXF reader 2020-12-19 23:37:37 +01:00
Matthias Koefferlein 953367f3c1 Multi-mapping for layer map files for LEF/DEF reader 2020-12-19 22:11:23 +01:00
Matthias Koefferlein 9688da9ffd WIP: test for multimapping in LEF/DEF 2020-12-19 21:28:22 +01:00
Matthias Koefferlein d4b5dab0db WIP: bugfix. 2020-12-19 20:35:58 +01:00
Matthias Koefferlein 8cc75438b0 WIP: LEF/DEF multi-mapping. 2020-12-19 19:42:40 +01:00
Matthias Koefferlein 2b61b48164 WIP: multi-mapping for named layer readers, bugfix for GDS/OASIS 2020-12-19 18:25:53 +01:00
Matthias Koefferlein 02f96f022a WIP: added brackets for clarity in mapping expressions. 2020-12-19 16:37:58 +01:00
Matthias Koefferlein a1eb8c121b WIP: implementation for GDS2 and OASIS, added tests. 2020-12-19 15:36:03 +01:00
Matthias Koefferlein f86c13689b WIP: some refactoring to simplify multi-mapping implementation 2020-12-19 13:21:33 +01:00
Matthias Koefferlein dda2724d0c WIP: Documentation, mapping file option for buddy scripts. 2020-12-19 01:37:38 +01:00
Matthias Koefferlein 3fbfb20727 WIP: shorter mapping strings. 2020-12-19 00:56:45 +01:00
Matthias Koefferlein 5bd1cb8bd7 WIP: making list the default for layer mapping edit widget 2020-12-16 23:54:57 +01:00
Matthias Koefferlein 0fddf7f389 WIP: text edit feature for layer mapping edit widget. 2020-12-16 23:52:58 +01:00
Matthias Koefferlein 91de370901 WIP: bugfix, RBA tests. 2020-12-16 23:02:01 +01:00
Matthias Koefferlein 3e249b0b54 WIP: More tests for layer multi-mapping 2020-12-15 23:51:01 +01:00
Matthias Koefferlein 1f635015ce WIP: backward compatible implementation of multi-map capability of layer mapping. 2020-12-15 23:05:34 +01:00
Matthias Koefferlein 7852568284 WIP 2020-12-15 18:42:43 +01:00
Matthias Koefferlein 1106a52688 WIP: first draft of implementation 2020-12-14 23:55:04 +01:00
Matthias Koefferlein b5c0193a0a LEF/DEF reader: Macro resolution mode is only effective now when reading DEF. Not when reading LEF. 2020-12-14 22:46:07 +01:00
Matthias Koefferlein 85311d414c Implemented LEF DENSITY statement properly 2020-12-14 22:20:29 +01:00
Matthias Koefferlein 6a9a024d64 Merge branch 'master' into lefdef 2020-12-14 21:38:55 +01:00
Matthias Koefferlein 11bf413cb8 Fixed the manager's 'cancel' implementation: with this, redo of a cancelled operation isn't possible any more 2020-12-13 22:13:51 +01:00
Matthias Koefferlein 92d81c5844 WIP: cold proxies are written to GDS2 and OASIS too. This means we keep the library references even if we load and save with the wrong libraries or technology. 2020-12-13 22:09:21 +01:00
Matthias Koefferlein 86e7fa56f0 WIP: undo/redo for applying a technology. 2020-12-13 22:02:19 +01:00
Matthias Koefferlein 740f550964 WIP: handling the case of entirely lost libraries. 2020-12-13 19:54:23 +01:00
Matthias Koefferlein 0fc4caace0 WIP: Libraries View follows technology now. 2020-12-13 19:39:45 +01:00
Matthias Koefferlein ab36a660fb WIP: cold references - keep reference information while libraries are not there or cells are missing. 2020-12-13 19:11:12 +01:00
Matthias Koefferlein fcf4fd74f6 WIP: bugfixing. 2020-12-13 14:13:59 +01:00
Matthias Koefferlein 78695f9c23 WIP: new technology management scheme, libraries can be tech specific, update of technology in layout updates library references 2020-12-13 12:13:21 +01:00
Matthias Koefferlein fd066127ff Merge branch 'master' into complex_drc_ops 2020-12-08 23:34:07 +01:00
Matthias Koefferlein 57a7671640 Fixed enclosing feature, added tests + DRC impl., DRC doc. 2020-12-08 22:44:33 +01:00
Matthias Koefferlein 1b26f48b13 WIP: some bug fixes 2020-12-08 00:39:07 +01:00
Matthias Koefferlein 0670e83d77 WIP: bug fixes, renamed "enclosing" to "covering" in Region/DRC.
Reasoning: "enclosing" was reserved for the DRC function.
2020-12-07 23:55:52 +01:00
Matthias Koefferlein 5934bd529f WIP: DRC 'enclosing' feature 2020-12-07 22:48:03 +01:00
Matthias Koefferlein ca388150bb Added tests for opposite and rect filter. 2020-12-06 19:03:44 +01:00
Matthias Koefferlein a833dd57fe Implemented rectangle and opposite filters for DRC functions. 2020-12-06 18:25:57 +01:00
Matthias Koefferlein 153289b5d8 WIP: rectangle error pattern filter implemented. 2020-12-06 16:33:10 +01:00
Matthias Koefferlein 6c4d1f4ef3 WIP: bugfix and tests for opposite filter for DRC 2020-12-06 10:56:56 +01:00
Matthias Koefferlein 574660174e WIP: 'not_opposite' and 'rect_filter' 2020-12-06 09:06:16 +01:00
Matthias Koefferlein 347a33024d Added a disclaimer note for the compound DRC feature. 2020-12-05 18:19:51 +01:00
Matthias Koefferlein 6ac766d68f More complete compound DRC operations. 2020-12-05 18:18:27 +01:00
Matthias Koefferlein 44aef92160 Bugfixed GSI binding of compound DRC operation nodes. 2020-12-05 17:11:01 +01:00
Matthias Koefferlein 44fd6bff11 Refactoring: bulk options structure for DRC functions. Will be easer to enhance 2020-12-05 14:14:28 +01:00
Matthias Koefferlein f14a4c6220 WIP: made compile. 2020-12-02 00:13:41 +01:00
Matthias Koefferlein bb19acead4 Bugfix: double-clicking on an object to start move brought the move service into a weird state and made the object 'jump' on the next click. 2020-12-01 23:02:18 +01:00
Matthias Koefferlein 9305861102 Bugfix (consider porting): undo triggered
Transaction::cancel was sometimes triggering an undo:
when the current transaction was empty, "commit" did just
remove it which made the subsequent undo act on the
*previous* transaction.
2020-12-01 23:00:11 +01:00
Matthias Koefferlein 63819e3292 Bugfix: Browser's HTML panel was collapsed sometimes. 2020-12-01 00:14:51 +01:00
Matthias Köfferlein 511e30ef45
Fixed #646 (crash on delete of library) (#685)
* Fixed a compiler warning

* Fixed #646 (crash on PCell Library "delete")

The issue was mainly caused by a "cleanup" call on
the library. Cleanup is supposed to remove excess
top level PCell variants. For libraries this is not
possible, as the library does not know which variants
are used and which are not.

In addition, some hardening against segfaults in
case of defect layouts has been applied.
2020-11-27 18:36:56 +01:00
Matthias Köfferlein 517903dafa
Fixed #647 (text orientation not working on search & replace) (#684)
* Fixed a compiler warning

* Fixed #647 (search & replace not working for text rotation)
2020-11-25 21:29:40 +01:00
Matthias Köfferlein 0217cf253d
Merge pull request #683 from KLayout/display_bug
Fixed display bug happening when child cells are instantiated with a …
2020-11-25 21:29:05 +01:00
Matthias Köfferlein d5f6b51092 Compatibility with Qt 4.6.x on CentOS6 2020-11-22 19:54:13 +00:00
root 62d56e3507 Fixed an issue with initialization order (found on CentOS6) 2020-11-22 19:52:58 +00:00
Matthias Koefferlein fd95dc6637 Windows build fix, Qt4 build fix. 2020-11-22 16:20:18 +01:00
Matthias Koefferlein be5fd1cd0e Fixed Windows build. 2020-11-22 15:34:22 +01:00
Matthias Koefferlein db6b3d280e Merge branch 'master' into complex_drc_ops 2020-11-22 09:31:15 +01:00
Matthias Koefferlein 95cec10105 Preparation for merge with master, fixed comments 2020-11-22 09:28:27 +01:00
Matthias Koefferlein 45664e834e Fixed a merge issue. 2020-11-22 09:12:05 +01:00
Matthias Koefferlein a7dd683d59 Fixed display bug happening when child cells are instantiated with a small magnification factor. 2020-11-21 23:38:50 +01:00
Matthias Koefferlein 96898d31d7 LEF/DEF layer map reader test case added. 2020-11-21 21:58:34 +01:00
Matthias Koefferlein 3b61255d9b Bugfix, restore previous behavior for empty tech component suffix 2020-11-21 21:06:05 +01:00
Matthias Koefferlein b0f25dd61e Fixed DEF layer mapping for compatibility with 0.26
Problem was: general layers (e.g. OUTLINE) were not routed through
the layer map.
2020-11-21 20:39:31 +01:00
Matthias Koefferlein 6eac98907f WIP: bugfix. 2020-11-21 01:00:28 +01:00
Matthias Koefferlein 2300c391ae Better alignment DEF layer map reader with specification (still some options are ignore). 2020-11-21 00:38:25 +01:00
Matthias Koefferlein 0e596e67ce WIP: compound operations. 2020-11-17 23:19:45 +01:00
Matthias Koefferlein 8175306423 WIP: compound operations. 2020-11-16 23:21:58 +01:00
Matthias Koefferlein 5c1efe151e WIP: fixed a segfault in the unit test. 2020-11-15 18:24:45 +01:00
Matthias Köfferlein beae26ec2e
Merge pull request #678 from KLayout/port-658-to-master
Port of #658 fix to master
2020-11-15 17:15:42 +01:00
Matthias Köfferlein 248168ea67
Merge pull request #677 from KLayout/issue-666
Issue 666
2020-11-14 20:55:28 +01:00
Matthias Koefferlein 13c3353148 Fixed merge commit. 2020-11-14 20:51:39 +01:00
Matthias Koefferlein 50dc53615c Merge branch 'master' of https://github.com/KLayout/klayout into usability-enhancements 2020-11-13 02:09:42 +01:00
Matthias Koefferlein f3668a713d Merge branch 'master' into usability-enhancements 2020-11-13 02:08:10 +01:00
Matthias Köfferlein 94b71cbf76
Merge pull request #642 from KLayout/2.5d-view-devel
2.5d view devel
2020-11-13 02:06:41 +01:00
Matthias Koefferlein ad0cad83c8 Port of #658 fix to master 2020-11-13 02:04:53 +01:00
Thomas Ferreira de Lima 16aba12a84 Adding clarification on GDS properties in cell, instance, shape and layout. 2020-11-13 01:33:55 +01:00
Matthias Koefferlein 5988c92f05 Trying to save some (potentially expensive) layout updates on 'overwrite' cell name conflict resolution. 2020-11-13 01:19:18 +01:00
Matthias Koefferlein 4f0b9118c3 Added test for the collect modes, bugfixed the new modes. 2020-11-13 00:31:56 +01:00
Matthias Koefferlein 035cd1bd34 Removed debug output. 2020-11-12 22:22:12 +01:00
Matthias Koefferlein f61aac6b1b Doc: resolve references to child classes too. 2020-11-12 10:22:22 +01:00
Matthias Koefferlein 6c8f802444 Correct production of ghost cells for OASIS 2020-11-12 00:27:49 +01:00
Kevin Zheng a1d1156407 Add -lexecinfo for BSD 2020-11-04 20:52:56 -08:00
Matthias Koefferlein 888b0936f7 Updated test golden data (order of cells only) 2020-11-03 23:11:07 +01:00
Matthias Koefferlein 61696f1ae7 Don't emit CELLNAME records for cells which are not written. This was confusing the new implementation of the OASIS reader. 2020-11-03 23:10:50 +01:00
Matthias Koefferlein 2ef3290f65 WIP: updated some golden data (only sequence of cells), restored old error messages, proper reporting of cell names in OASIS error messages 2020-11-03 21:18:47 +01:00
Matthias Koefferlein a92ebd0e17 WIP: cell name conflict resolution modes, bugfixed first implementation 2020-11-03 00:13:55 +01:00
Matthias Koefferlein 85869c329d BUGFIX: db::Shapes::insert(db::Shapes) wasn't working correctly! 2020-11-03 00:13:28 +01:00
Matthias Koefferlein eb3600d620 WIP: First implementation. Needs testing. 2020-11-02 01:23:27 +01:00
Matthias Koefferlein 50ee44b6e2 Addressed issue #663 by internal merging of the intruders. 2020-10-28 23:01:54 +01:00
Matthias Koefferlein c71d884e7e More elaborate DRC logging (number of results, timing, memory) 2020-10-26 21:19:27 +01:00
Kevin Zheng 96123c3429
Fix build on FreeBSD (#656)
* Fix build on FreeBSD

* Add missing dependency on qtWidgets
2020-10-18 23:43:28 +02:00
Matthias Koefferlein f1c7e2e8e1 Refactoring of the containers (Edges, Region, EdgePairs, Texts): size -> count, added hier_count. Added SRegion for shape iterator as generic polygonizable things 2020-10-11 17:51:54 +02:00
Matthias Koefferlein 8c1e0d7e0e Added option to retrieve current memory footprint, implemented for Windows (to be tested) 2020-10-11 17:47:30 +02:00
Matthias Köfferlein 591d4a5c37
Fixed #652 (M scaling not working sometimes for Spice), provided test… (#653)
* Fixed #652 (M scaling not working sometimes for Spice), provided testcases

* One more patch (bugfix, Spice reader)
2020-10-10 23:16:02 +02:00
Matthias Köfferlein 051a8bdc77
Fixed #651 (DRC "select" feature issues) (#654)
* WIP: added test case, fixed dup problem and '-' shortcut

* WIP: updated DRC doc and could not resist the temptation to fix 'it's' vs. 'its'

* Deep mode also working with select now. Updated tests.
2020-10-10 23:15:51 +02:00
Matthias Köfferlein 52f54ab39e
Fixed #648 (join_nets should work on global nets too) (#655) 2020-10-10 23:15:36 +02:00
Matthias Koefferlein f21dfb4a1c WIP: further code. 2020-10-09 23:15:02 +02:00
Matthias Koefferlein 18e63d352f WIP: complex DRC operations ... 2020-10-06 23:51:35 +02:00
Matthias Koefferlein 8e4fd2f679 WIP: complex DRC operations. 2020-10-04 21:46:06 +02:00
Matthias Koefferlein de97e2cde7 WIP: some bug fixes 2020-10-02 01:00:05 +02:00
Matthias Koefferlein 12a7ea4cd3 WIP: a small bugfix introduced with the latest refactoring 2020-10-01 23:15:53 +02:00
Matthias Koefferlein 61f18f7f33 [PORTBACK] fixed an issue with in-place processing of flat regions 2020-10-01 23:10:24 +02:00
Matthias Koefferlein 145c298d58 WIP: more generalization 2020-10-01 01:45:53 +02:00
Matthias Koefferlein bb5d30e0c0 WIP: more generalization 2020-10-01 01:12:12 +02:00
Matthias Koefferlein 453275e67e WIP: more generalization 2020-10-01 00:41:02 +02:00
Matthias Koefferlein 1b74607598 WIP: generalization of algorithms with local processor, include texts, edge pairs, edges 2020-09-27 23:57:17 +02:00
Matthias Koefferlein b464279dcf WIP: generalization of algorithms with local processor, first steps 2020-09-27 23:14:54 +02:00
Matthias Koefferlein 26028cdeb9 WIP: refactoring, unify shape iterator 2020-09-26 23:41:39 +02:00
Matthias Koefferlein f05fd28a94 WIP: some refactoring of the flat local processor mode for generalization 2020-09-26 21:45:26 +02:00
Matthias Koefferlein ec01c9b72b WIP: tests for local processor flat mode 2020-09-26 17:11:13 +02:00
Matthias Koefferlein 00ae88a5d4 WIP: Refactoring - local ops outsourced 2020-09-26 00:00:34 +02:00
Matthias Koefferlein cfdd3bec9d Merge branch 'master' into interact_with_count 2020-09-25 23:04:56 +02:00
Matthias Koefferlein bc98336d2a Added DRC test for interact with count 2020-09-22 19:19:26 +02:00
Matthias Koefferlein 56572bd481 Added DRC documentation for interacting, not_interacting, select_interacting, select_not_interacting. 2020-09-22 19:06:12 +02:00
Matthias Koefferlein 737e12d6a4 Added GSI tests. 2020-09-22 18:36:40 +02:00
Matthias Koefferlein f6107e0686 WIP: fixed a few issues with the DRC implementation 2020-09-21 23:35:35 +02:00
Matthias Koefferlein 91e924c559 WIP: Basic implementation of Region::interact with count 2020-09-21 22:54:46 +02:00
Matthias Koefferlein 965d796992 Fixed a build warning. 2020-09-20 18:55:13 +02:00
Matthias Koefferlein 151fd81bd3 Should fix unit test fails on Windows (backslash vs. slash for file name separators) 2020-09-20 01:07:39 +02:00
Matthias Koefferlein 0166d48eec ruby 1.x compatibility. 2020-09-19 21:19:27 +02:00
Matthias Koefferlein a81cc3cacf Merge branch 'master' of https://github.com/KLayout/klayout into drc-enhancements 2020-09-19 21:10:32 +02:00
Matthias Köfferlein f3fa3aac1a Merge remote-tracking branch 'origin/master' 2020-09-19 21:02:59 +02:00
Matthias Köfferlein ccfec5fe88 An issue with MSVC2017 builds fixed
On MSVC2017 builds, a crash is observed in the RBA basic
tests. There is no obvious reason, but empirically, the
instantation of a std::vector<VALUE> caused this problem.
Compiler bug or strange interaction with Ruby's GC?
2020-09-19 21:00:31 +02:00
Matthias Koefferlein db9f43f576 Updated DRC doc and enhanced generation of DRC doc somewhat (bigger images, no exaes etc.) 2020-09-16 23:45:26 +02:00
Matthias Koefferlein 3043418f8a Made shielding an option for some DRC features. 2020-09-16 23:44:44 +02:00
Matthias Koefferlein 15985c4ca8 Removed a duplicate definition 2020-09-16 22:23:43 +02:00
Matthias Koefferlein db2157bb94 Fixed builds without ruby/python 2020-09-16 01:25:54 +02:00
Matthias Koefferlein 66945c4944 Fixed build. 2020-09-16 01:17:32 +02:00
Matthias Koefferlein edaacff594 Fixed build. 2020-09-15 19:26:03 +02:00
Matthias Koefferlein 9200c2924f Fixed build. 2020-09-15 08:01:47 +02:00
Matthias Koefferlein a20bd38f17 Updated documentation 2020-09-15 00:19:47 +02:00
Matthias Koefferlein e75333ea41 DRC enhancements: max_vertex_count, max_area_ratio and forget 2020-09-15 00:12:55 +02:00
Matthias Koefferlein ce9c7e848a Merge branch 'master' into drc-enhancements 2020-09-14 20:52:02 +02:00
Matthias Koefferlein b5e158a6b6 Merge branch 'master' into 2.5d-view-devel 2020-09-14 20:48:46 +02:00
Matthias Koefferlein 60e3f87877 Merge branch 'master' into usability-enhancements 2020-09-14 20:41:23 +02:00
Matthias Koefferlein d7a82ab7dd Merge branch 'issue-639' 2020-09-14 18:40:38 +02:00
Matthias Köfferlein ff79b36740
Fixed #637 (Points are not selected properly for mirrored subcells) (#638) 2020-09-14 18:35:07 +02:00
Matthias Köfferlein 8f35c9b486
Merge pull request #632 from KLayout/gsi-enhancements
Enumerators for Ruby, "void to self" for Ruby+Python
2020-09-14 18:34:50 +02:00
Matthias Köfferlein 59ee6b6a83
Fixed #629 (timeout event of QTimer not present on Qt5) (#631)
In addition, the "destroyed" and "objectNameChanged" signals
were added (specifically to QObject).

The API binding for Qt5 was updated which adds some events.
2020-09-14 18:34:28 +02:00
Matthias Köfferlein 9cef935fad
Merge pull request #630 from KLayout/ruby-include
Ruby include
2020-09-14 18:33:57 +02:00
Matthias Köfferlein 8cdb6187b8
Fixed issue #617 (constness problem in netlist) (#622) 2020-09-14 18:33:24 +02:00
Matthias Köfferlein 948819472b
Issue 615 (#621)
* Password encoding to UTF-8 for Basic HTTP authentication - this is basically a hack. Needs to be reverted as soon as Qt switches to UTF-8 encoding.

* Workaround for issue #615
2020-09-14 18:33:01 +02:00
Matthias Koefferlein 33229ccfaa Updated fix version in RBA::Layout documentation. 2020-09-13 23:47:23 +02:00
Matthias Koefferlein 5280c762e4 Provide multi-cell copy/move of shapes (GSI binding) 2020-09-13 23:42:09 +02:00
Matthias Koefferlein 7d3abce201 Added multi-cell mapping for transferring multiple cells from one layout to another while including their hierarchy without duplicating cells. 2020-09-13 23:42:07 +02:00
Matthias Koefferlein d20aac77c6 Snap indicator when moving point in partial mode (no indicator for edge move yet as edge-to-object mapping isn't implemented yet) 2020-09-13 22:28:02 +02:00
Matthias Koefferlein 655c8c7658 WIP: mouse tracking on instance, box, path and text editor. 2020-09-08 00:06:06 +02:00
Matthias Koefferlein 316cf77175 WIP: Ruler now has a mouse snapping indicator too. 2020-09-07 23:49:42 +02:00
Matthias Koefferlein df1583b5db WIP: config options for mouse tracking options. 2020-09-07 23:19:44 +02:00
Matthias Koefferlein 307c10f184 WIP: better highlighting of snap objects. 2020-09-07 22:35:06 +02:00
Matthias Koefferlein e42136ee27 Editor options: recent layers are created if not there. 2020-09-06 23:03:18 +02:00
Matthias Koefferlein 55f5132514 WIP: fixed visibility of editor options. 2020-09-06 21:26:06 +02:00
Matthias Koefferlein a9a9f88f92 WIP: further reworking. 2020-09-06 21:10:26 +02:00
Matthias Koefferlein 46b5b87eaf WIP: refactoring editor options - moved some classes from edt to lay namespace 2020-09-06 18:45:58 +02:00
Matthias Koefferlein fb90144176 WIP: mouse cursor and snap highlighting 2020-09-05 23:58:10 +02:00
Matthias Koefferlein 70981ab03b Help dialog: bookmarks are persisted now. 2020-09-05 00:16:21 +02:00
Matthias Koefferlein 6bfed45b5d WIP: nicer icons, added bookmark button. 2020-09-04 18:23:26 +02:00
Matthias Koefferlein 842501c9e8 WIP: some updates, specifically: width of help browser does not change when the window is resized -> good for bookmarks, history ... 2020-09-04 17:43:56 +02:00
Matthias Koefferlein fd6e126038 WIP: some refinement of help dialog search function. 2020-09-03 23:54:58 +02:00
Matthias Koefferlein 523f8e41e4 WIP: help browser: on-page search, search box completer 2020-09-03 23:38:55 +02:00
Matthias Koefferlein 97df81f996 WIP: UI preparations for help browser in-page search and bookmarks 2020-09-02 23:58:33 +02:00
Matthias Koefferlein 9c7a9f4c6c Some refactoring for reducing size of layMainWindow.cc a little. 2020-09-02 23:38:31 +02:00
Matthias Koefferlein 0cc41f43c4 Fixed one more issue with the include implementation. 2020-09-01 22:02:47 +02:00
Matthias Koefferlein ad6809a084 Fixed a few issues with the include implementation. 2020-09-01 19:57:27 +02:00
Matthias Koefferlein a20f0d5891 Also provide 'void to self' return values for Python. 2020-08-31 23:55:26 +02:00
Matthias Koefferlein 5608327899 Another cool one: void as C++ return value is translated to returning self for Ruby. 2020-08-31 23:44:02 +02:00
Matthias Koefferlein 4c127b4644 Ruby iterators now automatically return an Enumerator if no block is given - allows very cool code .. 2020-08-31 23:09:37 +02:00
Matthias Koefferlein 77799de043 Added doc for include feature to DRC. 2020-08-31 20:57:06 +02:00
Matthias Koefferlein a01eb70891 Added tests for include feature, some bug fixes and enhancements. 2020-08-31 20:27:57 +02:00
Matthias Koefferlein a69d65daa3 Auto-substitution of __FILE__/__LINE__ for include-infested files. 2020-08-31 20:27:57 +02:00
Matthias Koefferlein 9c2914f016 WIP: allow breakpoints for files with includes and inside includes 2020-08-31 20:27:57 +02:00
Matthias Koefferlein 77a9253273 WIP: Provide a generic include file expansion mechanism, basic class. 2020-08-31 20:27:57 +02:00
Matthias Koefferlein 5c6d3775cb Fixed a compilation issue for a shader program. 2020-08-31 00:45:49 +02:00
Matthias Koefferlein 1dc9d11745 Merge branch 'master' into 2.5d-view-devel 2020-08-30 23:40:54 +02:00
Matthias Koefferlein 2953ad3329 Merge branch 'master' into drc-enhancements 2020-08-30 23:35:37 +02:00
Matthias Koefferlein be6a351385 Updated testdata after unused vias do no longer show up in imported DEF files. 2020-08-30 23:29:44 +02:00
Matthias Koefferlein be26c679d8 Merge branch 'master' into lefdef-enhancments 2020-08-30 22:55:45 +02:00
Matthias Koefferlein 4bba58cde1 Merge branch 'master' into usability-enhancements 2020-08-30 14:14:36 +02:00
Matthias Koefferlein a5d675304c Fixed an issue with deferred method execution in unit test context. 2020-08-30 13:06:50 +02:00
Matthias Koefferlein eccbb9884c Fixed an internal error happening when a librrary isn't registered and destroyed by the GC 2020-08-30 11:35:30 +02:00
Matthias Koefferlein 28cf0853b1 Restored previous behavior for FOREIGN cell resolution. 2020-08-30 02:15:30 +02:00
Matthias Koefferlein b99cbb50e2 Provide better feedback on invalid layer and property specs in LEF/DEF reader options 2020-08-30 01:57:49 +02:00
Matthias Koefferlein a6e750b088 Added a configuration option for providing macro substitution layouts (not through UI, only scripting so far) 2020-08-30 01:37:14 +02:00
Matthias Koefferlein 9a4cd629fc WIP: some little refactoring. 2020-08-30 01:36:17 +02:00
Matthias Koefferlein d762074bc0 Some refactoring, Cell#dup for convenience 2020-08-29 23:43:05 +02:00
Matthias Koefferlein 2a3fe08e7b Provide multi-cell copy/move of shapes (GSI binding) 2020-08-29 22:49:38 +02:00
Matthias Koefferlein a425d522cc Added multi-cell mapping for transferring multiple cells from one layout to another while including their hierarchy without duplicating cells. 2020-08-29 10:07:17 +02:00
Matthias Koefferlein 213eb9f1e8 Ignore COMP .. statements in LEF/DEF map file, "outline" renamed to "die area" 2020-08-29 08:57:21 +02:00
Matthias Koefferlein 1eea4e32b1 Provide scroll bars for rule-based part of LEF/DEF options. 2020-08-29 08:56:43 +02:00
Matthias Koefferlein 95364ea36e WIP: image properties now are also 'live' - auto-apply button has been removed. 2020-08-27 21:44:26 +02:00
Matthias Koefferlein 7bf2c7f060 WIP: live ruler properties. 2020-08-27 20:53:33 +02:00
Matthias Koefferlein 25588c10c8 WIP: partial editing now opens general options 2020-08-27 20:32:37 +02:00
Matthias Koefferlein 994731c1f0 WIP: more consistent editor options 2020-08-27 19:28:27 +02:00
Matthias Koefferlein 3003eb96e7 WIP: life updated on most shape properties, some bug fixes. 2020-08-26 00:38:41 +02:00
Matthias Koefferlein 6e860361c0 WIP: show properties - use transient selection if nothing else is selected. 2020-08-24 22:44:17 +02:00
Matthias Koefferlein ac10c72df4 WIP: immediate update of property changes - instances so far. 2020-08-24 22:40:01 +02:00
Matthias Koefferlein e36f6913de Recent file lists for sessions, layer properties and bookmarks. 2020-08-23 23:39:18 +02:00
Matthias Koefferlein dcc0743969 Buddies: added option to concatenate files with '+' 2020-08-23 21:13:02 +02:00
Matthias Koefferlein be15e2dbf6 Updated priority of map file purposes according to Stefan's suggestions. 2020-08-23 19:44:38 +02:00
Matthias Koefferlein 98973e345d Bugfix for command line parser - did not print name of unknown option 2020-08-23 19:41:51 +02:00
Matthias Koefferlein 56dead9662 LEF/DEF component maskshift: some implementation tuning and test updates. 2020-08-23 19:20:53 +02:00
Matthias Koefferlein af2bfce051 Tests and bug fixes for component maskshift implementation 2020-08-23 18:58:52 +02:00
Matthias Koefferlein cb1b3655e9 Bugfix in the command line parser: inverted bool options with value have not been inverted. 2020-08-23 01:55:55 +02:00
Matthias Koefferlein af7d8bba89 WIP: provide a LEF reader mode where all macros are read. For DEF only those macros which are used are read. 2020-08-23 01:29:10 +02:00
Matthias Koefferlein dcc99060fc WIP: further preparations for MASKSHIFT components. 2020-08-23 00:40:28 +02:00