Commit Graph

3472 Commits

Author SHA1 Message Date
Matthias Koefferlein 1cdc26b137 Added transparent flag for lay::Image 2022-05-02 22:46:56 +02:00
Matthias Koefferlein d7b9bd71a1 Added performance tests for image 2022-05-02 22:27:30 +02:00
Matthias Koefferlein 3a2ae4ede1 WIP: More tests for lay::Image 2022-05-02 01:02:46 +02:00
Matthias Koefferlein 373f307ae6 WIP: image object, first steps 2022-05-02 00:26:13 +02:00
Matthias Koefferlein 0b48cb9020 WIP: added new lay::Image class 2022-05-02 00:02:47 +02:00
Matthias Koefferlein e49b9a5e8a WIP 2022-05-01 21:56:47 +02:00
Matthias Koefferlein 48f5f95a8f WIP 2022-05-01 20:23:53 +02:00
Matthias Koefferlein 0a804f2e32 WIP 2022-05-01 19:29:20 +02:00
Matthias Koefferlein 8cbb49d5f9 WIP 2022-05-01 17:47:00 +02:00
Matthias Koefferlein 9b7a237a79 WIP 2022-05-01 10:30:26 +02:00
Matthias Koefferlein 63a1b24d24 WIP 2022-04-30 23:08:05 +02:00
Matthias Koefferlein c4be80bb2f WIP 2022-04-30 20:51:54 +02:00
Matthias Koefferlein 2378f7964e WIP 2022-04-30 19:13:36 +02:00
Matthias Koefferlein 2298a9a5c8 WIP 2022-04-29 23:40:07 +02:00
Matthias Koefferlein 7048dde7b3 WIP: HSV support in lay::Color 2022-04-27 23:03:17 +02:00
Matthias Koefferlein a6f2528aff WIP 2022-04-26 00:31:10 +02:00
Matthias Koefferlein c3f3fd00ce WIP 2022-04-26 00:09:39 +02:00
Matthias Koefferlein 51e7c0a038 WIP 2022-04-25 23:09:57 +02:00
Matthias Koefferlein 177290f680 Some cleanup 2022-04-24 23:33:42 +02:00
Matthias Koefferlein 1b129758d8 More range for NoQt option - covers lym (without MacroCollection), drc, lvs and buddies now 2022-04-24 23:28:04 +02:00
Matthias Köfferlein 9cb77d6222
Lefdef enhancements (#1053)
* Implementated patch as suggested by issue-1047

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

* Added testcase, fixed other tests

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

* Bug fixes

* Experimental: DEF multipart paths

* Experimental: ignore LEF wire extension, ignore PATTERNNAME

* Implemented PATTERNNAME in DEF instead of LEF ..

* Implemented nondefaultrule vias

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

* Refined solution for NDR via names, updated test data

* Updated test data

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

* Added test data, updated doc.

* Some enhancements and feedback

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

* Simplified buddy tool options for LEF/DEF property names

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

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

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

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

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

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

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

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

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

* Some doc bug fixes and enhancements for PDF manual generation

* Fixed a number of invalid references found during PDF generation

* Enable PCellDeclarationHelper doc for help system

* Fixed doc text

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

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

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

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

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

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

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

* Bugfixed solution (partially)

* Introducing third pass in netlist compare

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

* Bugfix

* Comment fixed, test updates

* Added tests

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

* Updated tests (text become a single point)

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

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

* WIP: more tests, bug fixes

* split_gates feature, added test case

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

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

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

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

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

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

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

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

* Added missing files

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

* WIP: bugfixes

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

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

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

* Early warning when trying to build a recursive hierarchy.

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

* First attempt to fix issue 984

* Fixed issue-983 solution

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

* WIP: bugfixes

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

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

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

* Early warning when trying to build a recursive hierarchy.

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

* Fixed issue-983 solution

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

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

Solution is to pre-sort when iterators are issued also when the
iterator is non-region selecting. This way, plain and region query
iterators can be used together. In addition, the dirty flag scheme
of Cell+Shapes was cleaned up a little for bboxes.
2021-12-26 01:12:36 +01:00
Matthias Koefferlein 2b9193331e Small bugfix: no 'nil' layer generated when no layer is selected for a PCell 2021-12-25 18:38:39 +01:00
Matthias Koefferlein 9cd77e5cec WIP: expose a new method of PCellDeclaration called 'wants_lazy_evaluation' 2021-12-25 18:03:30 +01:00
Matthias Koefferlein f985d946a1 WIP: implementing an optional 'update' button for lazy evaluation PCells 2021-12-25 17:40:10 +01:00
Matthias Koefferlein 4820207cd3 Merge remote-tracking branch 'origin/master' into qt6 2021-12-17 21:44:50 +01:00
Matthias Koefferlein 219fbceb28 Fixed the fix. 2021-12-17 08:18:35 +01:00
Matthias Koefferlein e1df15a47f Fixed Windows tests 2021-12-16 22:51:20 +01:00
Matthias Köfferlein f60a5de325
Merge pull request #948 from KLayout/less-expressions
Less expression evaluation for more robustness
2021-12-16 07:56:21 +01:00
Matthias Köfferlein 7bc5b51fad
Merge pull request #947 from KLayout/issue-946
Fixed issue #946 for the case of file paths with blanks
2021-12-16 07:55:58 +01:00
Matthias Koefferlein a6d4c80c6c Less expression evaluation for more robustness 2021-12-16 00:23:06 +01:00
Matthias Koefferlein 533a72b7bd Added tests, fixed implementation 2021-12-15 23:18:42 +01:00
Matthias Koefferlein 07515cd716 Fixed issue #946 for the case of file paths with blanks 2021-12-15 23:04:58 +01:00
klayoutmatthias edd5884a1a WIP: enabling build on MSVC2019 with Qt6 2021-12-15 00:31:13 +01:00
klayoutmatthias 626d404d83 BUild fixes for Windows 2021-12-12 23:49:14 +01:00
Matthias Koefferlein c76dde4533 Fixed Windows Qt binding for Qt6 2021-12-12 23:00:42 +01:00
Matthias Koefferlein 279342e61a Added more declarations for gcc in release mode 2021-12-12 16:48:44 +01:00
klayoutmatthias 0c142c9252 gcc 4.x (CentOS 7) does not support all C++11 type traits 2021-12-11 18:56:44 +00:00
Matthias Koefferlein 9aed8529f8 Build needs C++11 2021-12-11 16:37:05 +01:00
Matthias Koefferlein eecda3222b Fixed pymod_tests 2021-12-11 15:17:16 +01:00
Matthias Koefferlein 4966601bd1 Updated Qt4 bindings 2021-12-11 14:05:09 +01:00
Matthias Koefferlein 8b87fba8d4 Updated Qt5 bindings 2021-12-11 10:46:24 +01:00
Matthias Koefferlein ea83b4285d Enabling multiple bases and child classes for GSI expressions 2021-12-11 10:45:54 +01:00
Matthias Koefferlein a0546098b3 Fixed Qt5 binding generator config 2021-12-11 10:45:38 +01:00
Matthias Koefferlein 93942e907e Updated Qt5 bindings 2021-12-11 10:14:14 +01:00
Matthias Koefferlein 2d334bd88d Some code simplification 2021-12-11 01:09:07 +01:00
Matthias Koefferlein 8dbc31a41f Removed debug output 2021-12-11 00:42:26 +01:00
Matthias Koefferlein ca304b15c8 Enable multi-base support for RBA + Qt binding 2021-12-11 00:14:10 +01:00
Matthias Koefferlein 0aca56b1c6 Fixed pymod tests 2021-12-10 01:23:54 +01:00
Matthias Koefferlein f15db66fc4 Providing a different implementation of the multi-base mixin concept for Python to support multiple bases in Qt binding (e.g. QIODeviceBase) 2021-12-10 00:53:51 +01:00
Matthias Koefferlein 202ac55200 Preparations for multiple bases for Python objects 2021-12-08 23:53:38 +01:00
Matthias Koefferlein 1e795ebb6e Put in some blank lines for better readibility of generated Qt binding code 2021-12-07 23:43:40 +01:00
Matthias Koefferlein 519d7f6353 Fixed issue #942 (plus: cleaned some config inconsistencies and fixed a small Ui flaw) 2021-12-07 23:40:26 +01:00
Matthias Koefferlein 9c0e94e63c WIP: Allowing extension (mixin) classes
Needed to represent QIODeviceBase as a second base class for
QIOdevice, QFile etc. Additional base classes are supported but
in a rather limited way. They only contribute constants like enums.
No methods can be provided this way (a limitation of the method
enumeration scheme which only supports one base classe)
2021-12-07 23:24:08 +01:00
Matthias Koefferlein 6f9fa7a4a2 Merge branch 'qt6' of www.klayout.org:/home/matthias/git/klayout into qt6 2021-12-05 17:21:09 +01:00
Matthias Koefferlein 818beaa6a4 WIP: build fixes 2021-12-05 17:20:58 +01:00
Matthias Koefferlein 085db4f33f WIP: enterEvent has a different signature in Qt6 2021-12-05 17:18:19 +01:00
Matthias Koefferlein e07b9dc609 WIP: batch mode does not crash anymore (QAction cannot be created in non-GUI mode) 2021-12-05 17:07:40 +01:00
Matthias Koefferlein 96650cb65d WIP: Qt4 compatibility, cleanup, version bumped 2021-12-05 17:03:16 +01:00
Matthias Koefferlein 5eafb5ac13 WIP: cleanup plus added missing files. 2021-12-05 14:43:05 +01:00
Matthias Koefferlein cb680875de Merge branch 'qt6' of www.klayout.org:/home/matthias/git/klayout into qt6 2021-12-05 13:39:43 +01:00
Matthias Koefferlein 9124881180 Added missing file. 2021-12-05 13:38:26 +01:00
Matthias Koefferlein 3bb46e2717 Qt5 builds functional again, enabled QLatin1String for Qt5 and Qt4 too. 2021-12-05 13:38:08 +01:00
Matthias Koefferlein 3a68daa0e4 WIP: global enums translated for qtbindings too 2021-12-05 13:36:43 +01:00
Matthias Koefferlein 4a1f1cb1ef WIP: Qt binding - don't propagate class enum constants to parent scope 2021-12-05 12:02:56 +01:00
Matthias Koefferlein 0e2ff48c14 Compatbility with C++11 2021-12-05 00:29:15 +01:00
Matthias Koefferlein 5bff49c0d5 Merge branch 'qt6' of github.com:KLayout/klayout into qt6 2021-12-05 00:28:19 +01:00
Matthias Koefferlein 248bac5f6d Compatbility with C++11 2021-12-05 00:28:06 +01:00
Matthias Koefferlein 302a5fccd0 Build fixes 2021-12-05 00:27:41 +01:00
Matthias Koefferlein ef62a126d4 WIP: format string problem fixed in 2.5d view 2021-12-05 00:08:08 +01:00
Matthias Koefferlein 3ef28c8a9d WIP: fixed some string extractors 2021-12-04 23:57:24 +01:00
Matthias Koefferlein 6aae46772c WIP: typo bug fixed. 2021-12-04 22:46:59 +01:00
Matthias Koefferlein ab97a4722d WIP: fixed some Qt binding and GSI issues, added tests 2021-12-04 22:15:04 +01:00
Matthias Koefferlein e677cc7300 WIP: tests for QStringView and QByteArrayView bindings 2021-12-04 09:03:59 +01:00
Matthias Koefferlein 125543957d WIP: Fixed GSI to some extent, some tests 2021-12-04 00:31:01 +01:00
Matthias Koefferlein 82909001c4 Build fixes with pymod 2021-12-03 07:28:09 +01:00
Matthias Koefferlein acf1edb6ce Build fixes with Ruby and Python 2021-12-02 23:46:39 +01:00
Matthias Koefferlein 709ed19e13 Added first version of Qt binding for Qt6 2021-12-02 23:40:31 +01:00
Matthias Koefferlein e72060407c WIP: enabling QLatin1String, QStringView, QByteArrayView for GSI 2021-12-02 20:30:19 +01:00
Matthias Koefferlein bc26fd6333 WIP: some more patches for Qt6 Qt binding. 2021-12-02 01:08:42 +01:00
Matthias Koefferlein a17f89201f Updated Qt binding generation scripts and build fixes 2021-11-30 23:12:12 +01:00
Matthias Koefferlein a0319c4073 WIP: some more build fixes 2021-11-30 07:56:04 +01:00
Matthias Koefferlein 6b49386b67 WIP: fixed some build errors 2021-11-29 23:27:26 +01:00
Matthias Koefferlein 132ad2ed8d WIP: removing need to tl::type_traits 2021-11-29 22:54:28 +01:00
Matthias Koefferlein 18fee75276 WIP: QtCore enabling 2021-11-28 16:31:37 +01:00
Matthias Koefferlein 3bbb49770b WIP: __null to nullptr as in modern C++. 2021-11-27 15:47:58 +01:00
Matthias Koefferlein f4c0a43d49 unit tests pass now with the exception of two XML parser tests (QTBUG-98656) 2021-11-25 22:18:25 +01:00
Matthias Koefferlein 39aa5cb805 WIP 2021-11-25 20:44:39 +01:00
Matthias Koefferlein 2ee4d5414e WIP 2021-11-25 20:37:10 +01:00
Matthias Koefferlein c3010745ec WIP 2021-11-25 19:53:00 +01:00