Commit Graph

3399 Commits

Author SHA1 Message Date
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