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
1d8db227e5
Minor code enhancements
2022-05-29 11:41:40 +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
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 Koefferlein
585aa4667f
Fixed non-Qt-binding case
2022-05-14 01:48:59 +02:00
Matthias Koefferlein
42f0a79dee
Resize method and tests
2022-05-07 22:12:36 +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
32813b80f2
GSI binding for PixelBuffer and tests
2022-05-07 12:53:00 +02: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 Köfferlein
cee33a0099
Merge pull request #992 from KLayout/api-enhancements
...
Api enhancements
2022-02-18 23:28:28 +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 Koefferlein
8091464916
Fixed unit tests
2022-02-11 19:12:57 +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 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
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
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 Koefferlein
ca304b15c8
Enable multi-base support for RBA + Qt binding
2021-12-11 00:14:10 +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
1777002d4a
WIP: fixed a unit test (Qt6 QActions seem to remember checked state even if not checkable)
2021-12-05 16:04:13 +01:00
Matthias Koefferlein
634f6da615
Fixed RBA basic test for Qt5.
2021-12-05 13:48:52 +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
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
7d316b2a2c
Added missing file
2021-11-14 14:39:42 +01:00
Matthias Koefferlein
0ca82001ed
#935 fixed (checking for valid cell index)
2021-11-13 01:03:54 +01:00
Matthias Koefferlein
ac1167278e
Updated tests with 'enclosed' rule
2021-11-09 00:32:23 +01:00
Matthias Koefferlein
ebe38912a6
Tests and documentation for dbTrans#is_complex?
2021-10-27 23:36:58 +02:00
Matthias Koefferlein
c5607777a8
Updated testdata
2021-09-19 21:37:52 +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 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 Koefferlein
7a37a6b7ed
Implemented extent(cell_filter) for DRC, added Layout#cells with name filter
2021-07-21 18:31:51 +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
2e21498422
Updated unit tests
2021-07-19 07:58:42 +02:00
Matthias Koefferlein
2fee924103
Updated the solution
2021-07-15 23:39:02 +02:00
Matthias Koefferlein
4e54715d64
Merge branch 'wip-lvs'
2021-07-06 23:40:44 +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
8f65ab099f
Fixed DeviceClass assignment operator
2021-07-06 07:56:27 +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
cd70bea9a0
Basic enabling of Ruby 3
2021-06-29 23:32:36 +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
1d42711b65
Updated test data
2021-06-27 16:07:10 +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
1c8442f485
Fixed #807 - now supporting incremental connect and clear_connections in DRC/LVS
2021-05-24 21:56:57 +02:00
Matthias Koefferlein
05b1023fd5
Updated tests.
2021-05-24 16:49:00 +02:00
Matthias Koefferlein
2e4c5a535a
Fixed test fails: infinite recursion due to duplicate alias on -e following -ne
2021-05-19 22:16:47 +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 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 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
af6f11c2b3
Fixes #715 (selection box larger than drawn)
2021-04-18 14:02:26 +02:00
Matthias Koefferlein
94556c1448
Merge branch 'master' into lvs-enhancements
2021-03-30 18:56:27 +02:00
Matthias Koefferlein
8fda92a9c4
Merge branch 'drc-enhancements' into fill-enhancements
2021-03-29 15:07:47 +02:00
Matthias Koefferlein
cefc2eeddb
Bug fixes.
2021-03-29 01:05:53 +02:00
Matthias Koefferlein
9f295523e4
explicit net joining - preparations
2021-03-27 21:56:53 +01:00
Matthias Koefferlein
afdc50d05a
Global transformations for DRC and RecursiveShapeIterator
2021-03-21 23:09:09 +01:00
Matthias Koefferlein
1495d9521c
Tests updated.
2021-03-15 16:51:56 +01:00
Matthias Koefferlein
c8246d1e66
Adjusted RBA tests
2021-03-15 10:29:32 +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 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
af5435f869
Added more tests (inline transformation of region etc. with matrix transformations)
2021-03-05 15:39:02 +01:00
Matthias Koefferlein
44e59bc2ff
Added tests for EdgePairs transformation
2021-03-05 15:34:23 +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
e639c30570
split_* operations in DRC (interacting/non_interacting in one step), doc, tests.
2021-03-01 21:04:57 +01:00
Matthias Koefferlein
b353f7db79
Test stability for Windows/32bit
2021-02-28 13:50:33 +01:00
Matthias Koefferlein
77356cd877
More unit test stability
2021-02-27 21:31:32 +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 Koefferlein
3db1db831f
Test update after update of LEF/DEF reader.
2021-02-21 21:23:45 +01:00
Matthias Koefferlein
0f4a10441d
RecursiveInstanceIterator: Doc fixes, tests, instance array iteration.
2021-02-20 22:17:43 +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 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 Koefferlein
bde58da2a1
Fixed key binding unit test for multiple passes.
2021-02-01 08:30:24 +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
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
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
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
5aac018503
Mapping QByteArray (and std::vector<char>) to Python 'bytes' now.
2021-01-24 17:36:40 +01:00