Matthias Koefferlein
b95634edf3
Fixing some flaws inside the macro IDE
...
* When deleting a macro, the tab was not closed but
became "zombie"
* After creating a new folder, macros made there
behaved "zombie" too
2024-05-30 13:58:13 +02:00
Matthias Koefferlein
149c972172
Enhancing 'blend-mode' 0 (buddy tools) such that it will not generate instance duplicates
2024-05-29 22:39:57 +02:00
Matthias Koefferlein
496818f0a8
Added testdata for #1719 , part 3
2024-05-28 23:21:58 +02:00
Matthias Koefferlein
f1d3597b2e
Small doc update
2024-05-27 19:06:56 +02:00
Matthias Koefferlein
2360eb41fd
Generated documentation
2024-05-27 19:04:06 +02:00
Matthias Koefferlein
dc526132c0
Part 3 of issue #1719
...
New LVS/DRC functions: "name" and "name_prefix"
to control what layer names are used. "name" needs
to be used explicitly and before a layer is used
(and gets auto-assigned a name).
2024-05-27 19:02:53 +02:00
Matthias Koefferlein
45e77ce40c
Fixed a typo
2024-05-27 19:02:38 +02:00
Matthias Koefferlein
f01d8d46b5
Improving reports for errors in 'same_nets' cases
2024-05-27 00:43:36 +02:00
Matthias Koefferlein
3edb193562
A proposal for fixing issue #1719 , part 1
2024-05-26 22:55:37 +02:00
Matthias Koefferlein
14b1fddcc5
Trying to improve must-connect error messages
...
* Avoid repetitions
* Include geometry for nets if possible
* Better wording
* All joined nets tested together - leaner code
2024-05-26 19:32:15 +02:00
Matthias Koefferlein
994b23abf6
Refining solution of issue #1719 , part 2
2024-05-26 17:23:50 +02:00
Matthias Koefferlein
35d9068f72
Updating unit tests - stray text nets are gone.
2024-05-26 17:08:34 +02:00
Matthias Koefferlein
0c52934100
Trying a solution for issue #1719 , part 2
...
The solution is to drop clusters that have no area
and not connections downward. This implies, we cannot
connect from upward to such clusters - i.e. we cannot
force a pin inside a subcircuit with a plain text. We
need some polygon at least. This is not a problem as
texts were not enough so far anyway.
2024-05-26 15:17:58 +02:00
Matthias Koefferlein
b5e2eb253c
Adjusted unit tests
2024-05-26 01:17:27 +02:00
Matthias Koefferlein
81872d41f0
Fixed a problem triggered by the new foreign layout handling
...
Problem was that with forward-referenced text strings
in OASIS, StringRef objects were created (string placeholders).
Those where not properly migrated when transferring the foreign
layouts into DEF space, causing a memory corruption issue.
This solution is to provide a central, singleton string
repository. This needs to be MT safe (reference counting)
which should also fix potential problems when accessing
StringRef-based Text objects from multiple threads.
2024-05-26 01:03:24 +02:00
Matthias Koefferlein
1677111735
Enhanced documentation for LayoutToNetlist class, two more methods (layer_indexes, layer_info)
2024-05-25 19:57:51 +02:00
Matthias Koefferlein
4f88ff68da
Better error messages on Expressions too.
2024-05-25 19:18:15 +02:00
Matthias Koefferlein
d59d318218
Bugfix: restoring original overload matching scheme for Ruby and Python
2024-05-25 18:58:18 +02:00
Matthias Koefferlein
eb92e5f2d1
Better error messages on argument mismatch for Ruby too.
2024-05-25 18:43:44 +02:00
Matthias Koefferlein
1861abc68c
Bugfix for passing default arguments to GSI calls
...
This happens when default arguments (specifically
user class or enum types) and passed between keyword
and positional arguments. We must not use a temporary
tl::Variant object as it gets out of scope and a
reference is stored.
In addition: better error messages for Python when
a method can't be matched to arguments.
2024-05-25 17:48:17 +02:00
Matthias Koefferlein
370abf7ab3
Enum to variant binding: needs to use enum class, not EnumWrapper<E>
...
The effect of this fix is that tl::Variant gets enabled for
enums declared with gsi::Enum.
2024-05-25 17:46:29 +02:00
Matthias Koefferlein
3ca99907de
Improved OASIS-to-OASIS file size by re-introducing sorting of repetition arrays
2024-05-25 14:24:00 +02:00
Matthias Koefferlein
e4267e53da
Removed some debugging code
2024-05-25 14:23:16 +02:00
Matthias Koefferlein
cf8ff2f750
Slight adjustment of wording
2024-05-19 17:35:03 +02:00
Matthias Koefferlein
8422fe8f83
Implementing solution for issue #1701 (Feature request: strm2oas should report input unit differences)
2024-05-18 19:41:43 +02:00
Matthias Koefferlein
51a1a2627f
Fix for issue-1710 (feature request: create separate cell for def FILL)
2024-05-18 18:37:52 +02:00
VFLC
70104b5fa5
_drc_engine.rb: replace removed method "file.exists?" with "file.exist?"
...
`file.exists?` got removed in version 3.2.0
see: https://www.ruby-lang.org/en/news/2022/12/25/ruby-3-2-0-released/
2024-05-18 15:25:07 +00:00
Matthias Koefferlein
029d71f30e
Trying to fix bug #1706 (crash on user properties form)
2024-05-12 16:24:33 +02:00
Matthias Koefferlein
547ce99c37
Implemented fix from @Kazzz-S. Thank you!
2024-05-03 23:34:59 +02:00
Matthias Koefferlein
b2b9c221b4
Maybe fixing shader programs for 2.5d view
2024-05-02 23:58:05 +02:00
Matthias Koefferlein
ebbd8708db
bug fixing
2024-04-30 23:17:00 +02:00
Matthias Koefferlein
70bf4b4a20
Translate 2.5d view to GLGS 1.2 and skipping the goemetry shader for (hopefully) compatibility with OpenGL 3.0
2024-04-30 23:04:04 +02:00
Matthias Koefferlein
43066284d5
Updating stubs and DRC/LVS doc
2024-04-30 19:27:34 +02:00
Matthias Koefferlein
05c129dd81
Doc fixes
2024-04-30 17:45:56 +02:00
Matthias Köfferlein
7b3804ce1a
Merge pull request #1697 from KLayout/bugfix/issue-1696
...
Bugfix/issue 1696
2024-04-30 15:27:31 +02:00
Matthias Köfferlein
d14f8b0253
Merge pull request #1694 from KLayout/waive-concept
...
Waive concept
2024-04-30 15:27:15 +02:00
Matthias Köfferlein
d5a67080c0
Merge pull request #1690 from KLayout/wip
...
Wip
2024-04-30 15:26:59 +02:00
Matthias Koefferlein
a10356fd85
Added tests
2024-04-29 19:18:39 +02:00
Matthias Koefferlein
de535c711f
Fixed problem by creating a default device class from an empty template string
2024-04-29 18:58:04 +02:00
Matthias Koefferlein
14f9d579c9
'apply waiver DB' feature in marker browser
2024-04-29 18:56:32 +02:00
Matthias Koefferlein
db0e9efe31
Bugfix: reload was not working properly
2024-04-29 18:51:31 +02:00
Matthias Koefferlein
a7f0f3ba8e
Compatibility with old Ruby versions
2024-04-29 00:10:57 +02:00
Matthias Koefferlein
405ac5109a
Update DRC documentation, explaining the waive flow.
2024-04-28 19:57:10 +02:00
Matthias Koefferlein
92a0c38d96
Tests for waiving flow
2024-04-28 19:32:54 +02:00
Matthias Koefferlein
7e32344287
Including sub-categories in RDB::apply, fixing handling of waived count in a category hierarchy in marker browser
2024-04-28 19:23:44 +02:00
Matthias Koefferlein
86a2a6dd40
'Save As Waiver DB' implemented
2024-04-28 19:05:39 +02:00
Matthias Koefferlein
9fcd9d7616
RDB browser: mark waived items as unvisited initially
2024-04-28 18:50:53 +02:00
Matthias Koefferlein
9619081f84
Use fuzzy compare for RDB#apply
2024-04-28 18:50:33 +02:00
Matthias Koefferlein
daa406d518
Auto-apply *.w files on RDB output in DRC
2024-04-28 17:53:10 +02:00
Matthias Koefferlein
4f96914b3c
Also copy comments on RDB#apply
2024-04-28 17:52:51 +02:00
Matthias Koefferlein
fbc336dde2
Added tests
2024-04-28 17:37:58 +02:00
Matthias Koefferlein
1c367f3757
Updating test data
2024-04-28 16:16:21 +02:00
Matthias Koefferlein
6e3eb568c3
Implementing variant reporting
...
Instead of reporting working layout cell names, the
original cell names plus a variant indicator is reported.
Also, the variant information from the RDB is filled now.
Also, the marker browser now shows the qname of the cells
instead of the name alone.
2024-04-28 15:30:29 +02:00
Matthias Koefferlein
aacdc1a4b7
Info feature for marker browser
2024-04-27 23:36:48 +02:00
Matthias Koefferlein
3152be5c3d
Original file name is written into DRC marker db now
2024-04-27 23:36:27 +02:00
Matthias Koefferlein
ed64d4a59b
DRC enhancements:
...
- Shapes are added to existing categories rather than creating
a new category with the same name
- The category name in "output" can be an array creating a
hierarchy of categories.
2024-04-27 23:02:54 +02:00
Matthias Koefferlein
4b967fcc51
Show filename in RDB drop-down, 'save' button, bindkeys for reload, save, open
2024-04-27 21:41:04 +02:00
Matthias Koefferlein
bab4d7b5c7
Cleanup
2024-04-27 21:14:02 +02:00
Matthias Koefferlein
0b5473c153
Editor feature for RDB item comments, bindkeys for waive and edit
2024-04-27 21:09:14 +02:00
Matthias Koefferlein
9ef51ca981
RdbCell#layout_name and RdbItem#comment with tests and GSI binding
2024-04-27 19:56:39 +02:00
Matthias Koefferlein
2ff06ede07
UI enhancments
...
- marker list is sorted by waived flag by default showing waived items at the end
- "unwaive_all" works now
- waiving items now makes them visited
2024-04-27 17:57:06 +02:00
Matthias Koefferlein
aadb745fb9
Enhanced display of waived count
2024-04-27 01:14:14 +02:00
Matthias Koefferlein
aba5362e82
Displaying waived marker count
2024-04-27 00:55:50 +02:00
Matthias Koefferlein
369f85561e
[consider merging] escape category descriptions for marker browser info box
2024-04-26 22:47:36 +02:00
Matthias Koefferlein
1939fd2909
GSI binding of RdbDatabase#apply
2024-04-26 22:38:10 +02:00
Matthias Koefferlein
9b1fd34573
WIP: debugging and tests
2024-04-26 22:12:21 +02:00
Matthias Koefferlein
0a88349277
WIP
2024-04-25 23:41:40 +02:00
Matthias Koefferlein
bb17250d94
Implemented a fix for issue #1691
...
The root cause was that the terminal identity could
not be derived in the presence of soft connections
inside the device abstract cell. The solution is to
join soft connected clusters in the device abstracts with
a warning.
2024-04-21 18:13:54 +02:00
Matthias Koefferlein
f68fd4f8d0
Refactoring of EdgePairs/Edges API to avoid ambiguities
2024-04-21 00:17:05 +02:00
Matthias Koefferlein
753f2cd164
Fixed one unit test (remove file path reference)
2024-04-20 23:35:38 +02:00
Matthias Koefferlein
ac5b3073f1
Some enhancements on rulers: pasted ruler is selected now, 'duplicate_interactive' now working on rulers too
2024-04-20 23:31:54 +02:00
Matthias Koefferlein
a18a6be181
DRC: New options for "corners", "angle", "with(out)_angle"
...
- layer.corners: absolute and negative option
- drc(corners): absolute option, != operator supported
- layer.with_angle/without_angle: absolute option
- drc(angle): absolute option
+ corresponding API updates:
- EdgePairs#with_angle, with_angle_both: 'absolute' flag added
- Edges#with_angle: 'absolute' flag added
- Region#corners: 'inverse' and 'absolute' added
2024-04-20 21:52:38 +02:00
Matthias Koefferlein
424ead4d9a
Some enhancements to expression parser:
...
- upcase() and downcase() functions
- type error messages indicate argument number
2024-04-18 22:02:46 +02:00
Matthias Koefferlein
cba126e9ee
Small enhancements for Spice reader
...
- Detects recursive subcircuit calls now
- Dismisses empty top level circuit which happened to be created
when there were not top level elements and control statements
were present (such as .param)
2024-04-18 21:27:09 +02:00
Matthias Koefferlein
e8ecaa6472
Merge branch 'master' into wip
2024-04-18 21:00:11 +02:00
Matthias Koefferlein
16ef23864c
Enabled 64bit coordinate builds
2024-04-18 20:59:37 +02:00
Matthias Koefferlein
b634d93cb2
Bugfix: timeout for HTTP(S) connection was including the time taken to input the password if one is requested.
2024-04-17 22:54:01 +02:00
Matthias Koefferlein
18eadb119e
Fixed a small problem: browser windows did not get closed when closing the window.
2024-04-17 22:42:58 +02:00
Matthias Köfferlein
ede328d3cb
Merge pull request #1687 from KLayout/feature/issue-1678
...
Implemented solution for issue-1678
2024-04-17 22:38:39 +02:00
Matthias Köfferlein
840beea152
Merge pull request #1686 from KLayout/feature/issue-1666
...
Feature/issue 1666
2024-04-17 22:38:27 +02:00
Matthias Köfferlein
6bc314a6cd
Merge pull request #1685 from KLayout/bugfix/issue-1679
...
Bugfix/issue 1679
2024-04-17 22:38:17 +02:00
Matthias Köfferlein
c6174b1df5
Merge pull request #1684 from KLayout/bugfix/issue-1683
...
Bugfix/issue 1683
2024-04-17 22:38:04 +02:00
Matthias Köfferlein
3c2a254a9b
Merge pull request #1682 from KLayout/bugfix/issue-1681
...
Fixed issue #1681
2024-04-17 22:37:53 +02:00
Matthias Köfferlein
2f015b603a
Merge pull request #1675 from KLayout/issue-1671
...
Issue 1671
2024-04-17 22:37:41 +02:00
Matthias Koefferlein
e3dc4e7310
Qt4 compatibility
2024-04-16 21:50:30 +02:00
Matthias Koefferlein
06c65e2879
Updating tests
2024-04-15 00:01:49 +02:00
Matthias Koefferlein
daa2df159e
Fixed a build issue on some Qt versions
2024-04-14 23:54:10 +02:00
Matthias Koefferlein
1e83df0a56
Implemented solution for issue-1678
...
* Help index file name encodes KLayout version and Qt version
* Help index file is gzip compressed to save space as many files are expected to accumulate now
2024-04-14 21:59:10 +02:00
Matthias Koefferlein
0eb3c22ec2
Aligning menu layout of materials list with layer list
2024-04-14 21:42:59 +02:00
Matthias Koefferlein
9fd791a603
Implemented solution for issue-1666 ('Visibility Follows Selection' option for the 2.5d view)
2024-04-14 21:39:49 +02:00
Matthias Koefferlein
62f0ea3b97
Fixing issue #1683 (Spice reader accepts circuits without definition but pins get shorted)
2024-04-14 21:04:02 +02:00
Matthias Koefferlein
6a876d2cd6
Fixed issue #1681
2024-04-14 19:43:50 +02:00
Matthias Koefferlein
ae2d6fb42f
Updating sample macros for Qt6 compatibility
2024-04-10 23:18:51 +02:00
Matthias Koefferlein
7fa1337cd8
Moving from QFormBuilder to QUiLoader as QFormBuilding is deprecated in Qt6 binding
2024-04-10 22:40:56 +02:00
Matthias Koefferlein
95c1ee82f0
Proposal for fix.
2024-04-04 23:06:34 +02:00
Matthias Koefferlein
7f16c7b597
Fixed doc
2024-04-01 20:24:43 +02:00
Matthias Koefferlein
2dc9df3f40
Updated documentation with example
2024-03-31 22:23:23 +02:00
Matthias Koefferlein
4809c06091
Implemented editor hooks for partial mode too. Integrated modification events into edit protocol
2024-03-31 22:10:24 +02:00
Matthias Koefferlein
1c284b0939
Editor hooks for move operations
2024-03-31 19:26:22 +02:00
Matthias Koefferlein
00bc208e3f
Merge branch 'master' into editor-hooks
2024-03-31 10:39:00 +02:00