Commit Graph

555 Commits

Author SHA1 Message Date
Matthias Koefferlein 7a6364506d klayout -v and -h now work without a display 2021-04-18 14:27:00 +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 Koefferlein 2862cb4ffd Marked 2.5d as experimental, wording of an error message 2021-04-03 01:39:19 +02:00
Matthias Koefferlein 53f2c0e28f Doc for 2.5d view 2021-04-03 00:17:28 +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 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 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 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 f0386b616a Regenerated documentation 2021-03-29 17:27:16 +02:00
Matthias Koefferlein 8fda92a9c4 Merge branch 'drc-enhancements' into fill-enhancements 2021-03-29 15:07:47 +02:00
Matthias Koefferlein d862970d47 Added doc for DRC fill. 2021-03-29 13:56:34 +02:00
Matthias Koefferlein de4454a0d6 Updated documentation 2021-03-27 23:56:53 +01:00
Matthias Koefferlein fa1719acc3 Avoid a deadlock in the logger system 2021-03-23 22:45:45 +01:00
Matthias Koefferlein 3bd63e4b80 Qt4 compatibility 2021-03-15 18:23:34 +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 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 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 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 c43cff0e43 UI cleanup. 2021-03-13 18:01:19 +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 7bd4a692d8 WIP 2021-03-08 20:45:52 +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 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 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 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 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 aad393d7c9 DRC density check: updated doc, added tile_count option 2021-02-28 18:46:14 +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 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 835133854c Qt4 compatibility, some enhancement of macro IDE completer 2021-02-21 22:42:52 +01:00
Matthias Koefferlein fea33b284e Qt4 compatibility. 2021-02-21 21:55:36 +01:00
Matthias Koefferlein b31a64b367 Formulas for 'goto position' dialog. 2021-02-21 08:45:54 +01:00
Matthias Koefferlein effa8027cc Implemented completer for macro editor. 2021-02-14 23:12:50 +01:00
Matthias Koefferlein 92d36868bb Enhancements to search and replace in macro editor. 2021-02-13 19:13:22 +01:00
Matthias Koefferlein 94e6f0f7a6 Logging progress for DRC, introducing 'abstract progress' concept 2021-02-07 23:41:53 +01:00
Matthias Koefferlein b97413234a trying to provide a log along with progress 2021-02-07 19:14:20 +01:00
Matthias Koefferlein 7d3449e126 Fixed a segfault with simple 'klayout -v' 2021-02-03 08:50:21 +01:00
Matthias Köfferlein c837b306be
Issue 720 (#721)
* Implemented a backup scheme for the file writer.

* Also consider backup files when the writer fails.

* Removed test exception

* Added config option for number of backups.
2021-02-02 22:47:25 +01:00