Matthias Koefferlein
be62abd646
Added strm2lstr buddy tool
2025-11-09 09:10:31 +01:00
Matthias Koefferlein
89cc79cbbc
Fixing issue #2208
...
Problem was rounding that lead to incorrect distance measurements
between parallel edges when one edge was very short.
2025-11-08 23:45:09 +01:00
Matthias Koefferlein
3809e44777
Added smoke tests for streams in Python module
2025-11-08 20:25:06 +01:00
Matthias Koefferlein
ef5f8953aa
Enabling lstream for Python module builds - that needs some refactoring later
2025-11-08 17:55:51 +01:00
Matthias Koefferlein
93522bc134
Also renaming suffix of generated files to .cc
2025-11-08 16:12:31 +01:00
Matthias Koefferlein
47f4ca5224
Switching kj and capnp to static libs, maybe solves Windows build issues
2025-11-08 15:55:41 +01:00
Matthias Koefferlein
5add5c3df2
[consider merging] Library rename now removes an existing library
2025-11-08 15:55:25 +01:00
Matthias Koefferlein
da0558e7b4
Fixed two memory sanity issues found with valgrind
2025-11-08 14:04:07 +01:00
Matthias Koefferlein
448ebcc8c6
Trying to fix builds
2025-11-08 13:52:01 +01:00
Matthias Koefferlein
6aa66830e8
Trying to fix builds
2025-11-08 10:24:10 +01:00
Matthias Koefferlein
59ef8e7106
Trying to fix builds
2025-11-08 10:16:32 +01:00
Matthias Koefferlein
f5f8e6edba
Trying to fix builds
2025-11-08 10:12:59 +01:00
Matthias Koefferlein
ce44efe9ad
Trying to fix builds
2025-11-08 10:08:58 +01:00
Matthias Koefferlein
076ed98358
Trying to fix builds
2025-11-08 10:07:20 +01:00
Matthias Koefferlein
ea086b8cbf
Trying to fix builds
2025-11-08 10:03:19 +01:00
Matthias Koefferlein
f375dd0907
Trying to fix builds
2025-11-08 10:00:36 +01:00
Matthias Koefferlein
5e823337b3
Trying to fix builds
2025-11-08 09:56:59 +01:00
Matthias Koefferlein
e6ec9a54aa
LStream bugfix integrated: points have not been written correctly
2025-11-08 01:23:06 +01:00
Matthias Koefferlein
e8d5499598
WIP: LStream samples+test, OASIS writer
...
Current version of LStream code, samples and reader tests.
OASIS Writer: now writing points (to degenerated edges)
and edge pairs without asserting.
2025-11-08 00:35:18 +01:00
Matthias Koefferlein
115b6d5716
LStream: Establishing C++ 14 by default for building without Qt6
2025-11-07 23:15:43 +01:00
Matthias Koefferlein
642fe435cf
Include a build script option to disable lstream
2025-11-07 01:02:40 +01:00
Matthias Koefferlein
cc3bda51a5
Providing a script to sync sources
2025-11-07 00:46:59 +01:00
Matthias Koefferlein
d2e5393d0c
Integration of LStream sources
2025-11-07 00:44:08 +01:00
Matthias Koefferlein
7d0912db17
Fixing unit tests after change of snap behavior
2025-11-02 00:00:11 +01:00
Matthias Koefferlein
ddc847ac1f
Object snapping: now snapping to edge centers for polygons and boxes, snapping to box centers
2025-11-01 16:44:40 +01:00
Matthias Koefferlein
289facd5ee
Merge branch 'master' into devel
2025-10-26 16:36:03 +01:00
Matthias Köfferlein
3a069427cd
Merge pull request #2202 from KLayout/bugfix/issue-2201
...
Fixed issue #2201 (trace path)
2025-10-26 16:35:43 +01:00
Matthias Köfferlein
fdeab5d104
Merge pull request #2200 from KLayout/issue/issue-2183
...
Implementing request from issue #2183
2025-10-26 16:35:29 +01:00
Matthias Köfferlein
ff49a81723
Merge pull request #2199 from KLayout/feature/issue-2195
...
Feature/issue 2195
2025-10-26 16:35:14 +01:00
Matthias Koefferlein
b454d2ae42
Fixed issue #2201 (trace path)
...
* you can zoom in now to select the end point. Problem was
actually that zooming in was a problem when the start point
went out of the viewport
In addition:
* Messages are sticky now ("Click on second point")
* "Esc" will cancel path trace mode
* The cursor switches back to normal after tracing
2025-10-25 23:12:22 +02:00
Matthias Koefferlein
b9906180e8
Implementing request from issue #2183
...
For strmxor, --drop-empty-cells now is default.
To explicitly turn it OFF, use
strmxor --drop-empty-cells=false ...
2025-10-25 17:54:26 +02:00
Matthias Koefferlein
fc3185165f
Added some tests
2025-10-25 17:16:13 +02:00
Matthias Koefferlein
b523f05f80
Some typos fixed
2025-10-25 00:33:25 +02:00
Matthias Koefferlein
e8e2858af3
Implemented a solution for #2195
...
A new PCell method cell_name/cell_name_impl that
delivers a cell name, which is used for "convert to
static cell" and as cell name in general.
Needs testing.
2025-10-25 00:21:04 +02:00
Matthias Koefferlein
e6e85ab3b3
FIxing issue #2194 (can't attach key binding to 'forward'/'backward')
2025-10-23 21:49:24 +02:00
Matthias Koefferlein
564111af77
Merge branch 'master' of github.com:KLayout/klayout
2025-10-23 19:21:26 +02:00
Matthias Koefferlein
b4371d14ca
Fixing TextInfo bbox in case of oversampling
2025-10-23 19:19:06 +02:00
Matthias Koefferlein
4ee73b5f86
Added one more test
2025-10-23 18:50:44 +02:00
Matthias Koefferlein
853a7d7a13
Refinement of HM fix
2025-10-23 00:25:47 +02:00
Matthias Köfferlein
e955e4e987
Merge pull request #2193 from KLayout/feature/issue-2147
...
Feature/issue 2147
2025-10-21 21:52:55 +02:00
Matthias Köfferlein
df261559b0
Merge pull request #2189 from KLayout/feature/issue-2180
...
Feature/issue 2180
2025-10-21 21:52:41 +02:00
Matthias Köfferlein
e3e96c97c7
Merge pull request #2188 from KLayout/feature/issue-2176
...
Implemented solution for issue #2176
2025-10-21 21:52:26 +02:00
Matthias Koefferlein
a1d6ff9a3c
Selectability follows visibility
2025-10-20 22:57:03 +02:00
Matthias Köfferlein
3183b707ea
Merge pull request #2190 from KLayout/bugfix/issue-2160
...
Applied suggested patch for #2160
2025-10-19 19:46:21 +02:00
Matthias Köfferlein
0ce335d8cf
Merge pull request #2192 from KLayout/bugfix/issue-2191
...
Implemented a fix for issue #2191 (LIBNAME not saved)
2025-10-19 19:45:37 +02:00
Matthias Köfferlein
af667ef6bf
Merge pull request #2187 from KLayout/feature/issue-2175
...
Solution for issue #2175
2025-10-19 19:45:26 +02:00
Matthias Köfferlein
295ce2a340
Merge pull request #2186 from KLayout/feature/issue-2174
...
Fixed issue #2174 - two new events
2025-10-19 19:45:15 +02:00
Matthias Köfferlein
397bae03cf
Merge pull request #2185 from KLayout/feature/issue-2170
...
Moving the checkbox as requested
2025-10-19 19:45:00 +02:00
Matthias Köfferlein
b885cf64e7
Merge pull request #2184 from KLayout/bugfix/issue-2169
...
Fixed issue #2169 : adding path to 'python' and 'ruby' subfolders to i…
2025-10-19 19:44:50 +02:00
Matthias Koefferlein
6746dad08a
Fixed display of markers for ghost cells in viewer mode
2025-10-19 19:39:46 +02:00
Matthias Koefferlein
48f6610457
Fixing Python module builds
2025-10-19 18:49:08 +02:00
Matthias Koefferlein
0d09ef6df7
Refinement: do not merge library cells that are already present
2025-10-19 18:34:54 +02:00
Matthias Koefferlein
6d234d4ea5
Merge branch 'master' into feature/issue-2147
2025-10-19 18:20:53 +02:00
Matthias Koefferlein
06aa0c48cd
Commit local changes before merge
2025-10-19 18:00:43 +02:00
Matthias Koefferlein
c9fde4c3cd
Implemented solution for #2147 (merge multiple files into one library)
...
The complication is auto-load: in case one file changed and needs to
get merge, the whole library needs to be updated. Solution is to do
a rescan of the whole folder in case something has changed there.
2025-10-19 17:47:02 +02:00
Matthias Koefferlein
937e557564
Implemented a fix for issue #2191 (LIBNAME not saved)
...
The fix consists of moving that options into the case-specific
options like DBU, instead of having it in the format-specific,
default writer options. So they can be specified on a per-case
basis and taken from the current layout by default.
Specifically:
* SaveLayoutOptions#gds2_libname is deprecated and replaced
by SaveLayoutOptions#libname
* -ol (buddy tools) is no longer format specific
* The GDS writer takes SaveLayoutOptions#libname, and
if empty, substitutes by the current libname. As last
resort, "LIB" is used, because LIBNAME cannot be an
empty string.
* The libname got removed from the global writer options UI
* In the "Save As" options dialog, it now is part of the global
options and initialized with the current layout's libname.
2025-10-19 13:36:07 +02:00
Matthias Koefferlein
13af65270a
Applied suggested patch for #2160
2025-10-19 12:10:36 +02:00
Matthias Koefferlein
19dc5e8edb
Implemented a solution for #2180
...
Implements a new option to show/hide unresolved references
(ghost cells). The option is found in "Display/Cells"
in the Setup dialog and also in the View menu.
2025-10-18 23:40:50 +02:00
Matthias Koefferlein
0016710573
Preparations: more planes, for ghost cells too
2025-10-18 23:06:23 +02:00
Matthias Koefferlein
780615ea9d
Implemented solution for issue #2176
...
- On "via" (Key "O"), the application switches into path mode
- A selection menu pops up if multiple layers are possible starting
points below the cursor
As a side effect, "tap" will only display the layer selection menu
if there is more than one layer to be selected.
2025-10-18 22:02:58 +02:00
Matthias Koefferlein
c927ed121b
Solution for issue #2175
...
The solution consists of a new object, namely "TextInfo"
which allows deriving the true label bounding box from a
Text or DText object. See class documentation for details.
2025-10-18 19:26:17 +02:00
Matthias Koefferlein
3ca88ebfcb
Fixed issue #2174 - two new events
...
1.) LayoutView#on_current_layer_changed(iter)
"iter" is the iterator pointing to the new current layer
Is called after the current layer (the highlighted layer)
changed.
2.) LayoutView#on_selected_layers_changed
Is called after the selected layer set changed.
2025-10-18 15:46:10 +02:00
Matthias Koefferlein
3a352506a9
Moving the checkbox as requested
2025-10-18 15:13:03 +02:00
Matthias Koefferlein
84c76096cb
Fixed issue #2169 : adding path to 'python' and 'ruby' subfolders to interpreter search path also for technologies, not only for packages.
2025-10-18 15:01:44 +02:00
Matthias Köfferlein
8cc01ca814
Merge pull request #2178 from KLayout/feature/issue-2168
...
Feature/issue 2168
2025-10-18 13:51:25 +02:00
Matthias Köfferlein
5c11f9201a
Merge pull request #2177 from KLayout/bugfix/issue-2173
...
Issue #2173 fixed
2025-10-18 13:51:13 +02:00
Matthias Köfferlein
77cc0be2ef
Merge pull request #2164 from KLayout/bugfix/issue-2162
...
Bugfix/issue 2162
2025-10-18 13:50:47 +02:00
Matthias Koefferlein
ce0d619470
Force update of cell tree after rename of library
2025-10-15 22:35:27 +02:00
Matthias Koefferlein
bbd473ef47
Added 'Cell#change_ref' to modify the library reference of a cell
2025-10-14 23:50:08 +02:00
Matthias Koefferlein
b3cc5d73fe
Renaming a library will also change the references
2025-10-14 23:13:10 +02:00
Matthias Koefferlein
572fa7db18
Issue #2173 fixed
...
- on_selection_changed is issued on "del"
- it is also issued on "reduce selection to highlighted ones" in property dialog
2025-10-12 21:29:39 +02:00
Matthias Koefferlein
d1e440d565
Doc updates
2025-10-11 21:23:58 +02:00
Matthias Koefferlein
67de518611
'Refresh Libraries' feature in File menu, new GSI method Library#refresh_all (static)
2025-10-11 21:14:56 +02:00
Matthias Koefferlein
5045287712
Bugfixes
2025-10-11 19:26:11 +02:00
Matthias Koefferlein
ff2beaf32f
Bugfix: cells were not replaced by defunc cold proxies after unregistering a lib
2025-10-11 17:54:26 +02:00
Matthias Koefferlein
b3ec482eb8
WIP (also for other issue #2172 )
...
- New virtual method "reload" for Library
- Implementing that for file-based libraries
- Integrating that into "refresh"
- GSI binding for Library#rename, Library#unregister
- Trigger changed event on Library#unregister
- Library#_destroy will unregister the library
- Typos fixed
2025-10-11 16:24:25 +02:00
Matthias Koefferlein
17f4397f1b
Refining solution
2025-09-28 20:17:52 +02:00
Matthias Koefferlein
31ddbe24fa
Fixed a potential crash on application exit that was discovered during debugging
2025-09-28 16:25:35 +02:00
Matthias Koefferlein
292f6f84c6
Fixing issue #2162 (crash on selection + query)
...
Problem was that changing the active cellview index by clicking
on a specific item in the properties dialog cause a "clear_selection".
That interfered with the code of the properties dialog that
expects a static selection.
Fixed by disabling the events that lead to "clear_selection".
Side effect is that under these circumstances the active_cellview_changed
event is not triggered which also prevents side effects due to
scripts hooking into that event.
2025-09-28 16:14:11 +02:00
Matthias Koefferlein
a93d514911
More sanity checks for cell index on various Layout methods
2025-09-28 14:46:30 +02:00
Matthias Koefferlein
de72b05334
Moving code around so that laybasic can again be host for Plugin class - this enables putting that into the Python module without having Qt.
2025-09-24 23:17:43 +02:00
Matthias Koefferlein
97b6d82358
Moving lay.ButtonState, KeyCode and Cursor to Qt-less space again
2025-09-24 22:28:07 +02:00
Matthias Koefferlein
8b0a8c7317
Regenerating DRC doc and stubs
2025-09-11 22:13:52 +02:00
Matthias Koefferlein
0daba4f5e0
Fixing 64 bit coordinate build and incorrect porting of fill tool code.
2025-09-10 23:39:28 +02:00
Matthias Koefferlein
8659e165d5
Adjusting one sample
2025-09-10 18:21:59 +02:00
Matthias Köfferlein
0f739bcbef
Merge pull request #2146 from KLayout/devel
...
Devel
2025-09-10 16:02:48 +02:00
Matthias Koefferlein
788dd2b1bc
Fixing non-Qt builds
2025-09-09 22:36:41 +02:00
Matthias Koefferlein
e4789f7f1b
Enhanced object snapping for box edit mode - other corners snap too second order
2025-09-09 21:52:40 +02:00
Matthias Koefferlein
879df5a85b
[consider merging] LayoutView#clear_layer_list preserves layer list name now
2025-09-09 19:38:18 +02:00
Matthias Koefferlein
712237e67b
Implemented solution for issue #2145 (default_text_size option for GDS2 writer)
2025-09-08 23:23:05 +02:00
Matthias Koefferlein
0ddc07392b
[consider merging] suppress normalization of orientation on GSI DPolygon#to_itype and Polygon#to_dtype
2025-09-08 21:16:05 +02:00
Matthias Koefferlein
e2b5c29131
Some refactoring, bug fix
2025-09-08 19:30:07 +02:00
Matthias Koefferlein
20a3dbeaf8
Some refactoring (generalizing edt:: functions, basing move tool on lay::EditorService and support for 'tab' key (calls 'move by')
2025-09-08 18:54:00 +02:00
Matthias Koefferlein
e9584c289a
Tab order of some dialogs
2025-09-08 00:11:24 +02:00
Matthias Koefferlein
7fd01a64f6
WIP: adding tab key to move tool (calls 'move by' menu), enhancing 'move_to' and 'move_by' dialogs.
2025-09-07 23:54:40 +02:00
Matthias Koefferlein
aba1f87b0d
Enhancement to layer binding for images: now saving as img::ObjectV2 if layer binding is present. This does not break old KLayout versions trying to read session files. But old KLayout version will still crash when trying to save such a session.
2025-09-07 22:51:31 +02:00
Matthias Koefferlein
aa9d951cf7
Fixing build for old Qt versions
2025-09-07 21:43:23 +02:00
Matthias Koefferlein
128b1e596c
[consider merging] MainWindow should be managed (derived from gsi::ObjectBase)
2025-09-07 21:40:07 +02:00
Matthias Koefferlein
3d5833d323
Updated doc
2025-09-07 18:49:14 +02:00
Matthias Koefferlein
eb6369f90f
Updated doc
2025-09-07 00:31:08 +02:00