Commit Graph

160 Commits

Author SHA1 Message Date
Matthias Koefferlein 5e04ea6156 Clarification of negative edge output for two-layer DRC's. 2021-05-26 01:12:35 +02:00
Matthias Koefferlein 6496a71b5b Removed is_of_type() of gsi::Class which is not needed and appears to cause problems on M1 ARM 2021-05-19 22:40:14 +02:00
Matthias Koefferlein 51c5cd504a Added missing file, updated debian build script 2021-05-01 08:39:35 +02:00
Matthias Koefferlein f122cdf953 Final touches before 0.27 release 2021-05-01 00:42:10 +02: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 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 4460c294b0 Some bug fixes, doc update, test updates. 2021-01-16 00:32:06 +01:00
Matthias Koefferlein 111b49f0ef Updated DRC documentation 2021-01-15 19:01:32 +01:00
Matthias Koefferlein 8051bef9ac Doc update, fixed DRC's 'switch' function 2021-01-15 00:31:26 +01:00
Matthias Koefferlein 80996a77fb New *_sum quantifiers, doc enhancements, bug fixing 2021-01-14 00:21:21 +01:00
Matthias Koefferlein c160f7f43f Documentation updates 2021-01-06 02:20:36 +01:00
Matthias Koefferlein 7d4310d343 Updated copyright to 2021 2021-01-05 22:57:48 +01:00
Matthias Koefferlein 57a7671640 Fixed enclosing feature, added tests + DRC impl., DRC doc. 2020-12-08 22:44:33 +01:00
Matthias Koefferlein a833dd57fe Implemented rectangle and opposite filters for DRC functions. 2020-12-06 18:25:57 +01:00
Matthias Koefferlein 56572bd481 Added DRC documentation for interacting, not_interacting, select_interacting, select_not_interacting. 2020-09-22 19:06:12 +02:00
Matthias Koefferlein db9f43f576 Updated DRC doc and enhanced generation of DRC doc somewhat (bigger images, no exaes etc.) 2020-09-16 23:45:26 +02:00
Matthias Köfferlein 59ee6b6a83
Fixed #629 (timeout event of QTimer not present on Qt5) (#631)
In addition, the "destroyed" and "objectNameChanged" signals
were added (specifically to QObject).

The API binding for Qt5 was updated which adds some events.
2020-09-14 18:34:28 +02:00
Matthias Koefferlein eacd67df1c Dependeny list for Ubuntu 20 2020-05-30 22:41:13 +02:00
Matthias Koefferlein f410c91339 Updated documentation 2020-05-23 21:14:01 +02:00
Matthias Koefferlein 7574a41d09 Fixed problem of missing exec_ documentation 2020-04-22 08:07:22 +02:00
Matthias Koefferlein 666cdeadc5 MERGE: documentation enhancements for LVS/DRC 2020-03-28 12:29:53 +01:00
Matthias Koefferlein daba9d78be More @args removed. 2020-03-14 22:26:21 +01:00
Matthias Koefferlein d4b06ca143 WIP: fixed dependencies 2020-02-21 23:51:04 +01:00
Matthias Koefferlein 3b8fdf52a2 Fixed #496 (CentOS 8 builds) 2020-02-21 21:43:26 +01:00
Matthias Koefferlein a57d2cd934 Fixed #496 (CentOS 8 builds) 2020-02-21 21:41:38 +01:00
Matthias Koefferlein 4e4778afba CentOS8 builds, first fix iteration. 2020-02-21 21:16:38 +01:00
Matthias Köfferlein 69e7704430
Issue 501 (#505)
* Fixed #501 (more Qt ownership management) - this commit contains some more changes because I had to regenerate the Qt binding sources.

* Fixed #501 (Qt object ownership transfer) - repairs, added tests

* Updated Jenkinsfile to not publish a PR build

* Update Jenkinsfile - exclude PR's from build
2020-02-21 18:25:22 +01:00
Matthias Koefferlein 21397283f3 Fixed #477 2020-01-23 18:38:41 +01:00
Matthias Koefferlein b8c82c4f8b Updated copyright notice to 2020 2020-01-05 00:59:43 +01:00
Matthias Koefferlein c6fabea87f Fixed #449 (added styles plugin folder) 2019-12-15 16:26:33 +01:00
Matthias Köfferlein 446b2f15b0 #434 fixed, properly including Ruby gems and providing NumPy+SciPy with Python installation (this not in git but happens through the build process) 2019-12-01 23:55:53 +01:00
Matthias Koefferlein e7989c4006 Updated Windows build script so the installation won't get polluted by /bin files. 2019-11-14 00:47:12 +01:00
Matthias Koefferlein 4ae71075ed Minor fix in Windows deployment script 2019-11-13 23:23:44 +01:00
Matthias Koefferlein f768d012e5 Updated windows build script because of argument list overflow in shell script (shorter paths) 2019-11-13 21:11:40 +01:00
Matthias Koefferlein 897ccb12bf Add an option to Windows build script to support building and deployment of 64bit coordinate version 2019-11-12 21:51:49 +01:00
Matthias Koefferlein a697df021c More generic Python binary for Windows build 2019-11-09 19:39:20 +01:00
Matthias Köfferlein 9a324727d2
Merge pull request #312 from KLayout/dvb
Dvb
2019-07-27 22:32:59 +02:00
Matthias Koefferlein 5dabd6093d Provide new 'align' feature in LVS for automatic circuit flattening. 2019-07-23 01:12:12 +02:00
Matthias Koefferlein 11d433e103 Fixed issue #294: renamed icon file. 2019-07-21 23:18:43 +02:00
Matthias Koefferlein 2f66f3ee3b WIP: Extraction of DRC and LVS doc, added doc to classes 2019-06-28 18:44:36 +02:00
Matthias Koefferlein d02a5c2cab Fixed build script for Windows - include streamer and other plugins in .zip file too. 2019-05-15 23:47:09 +02:00
Matthias Koefferlein 08d1cff797 DRC documentation images updated - have not been made with full hierarchy. Fixed script. 2019-05-01 23:03:14 +02:00
Matthias Koefferlein 0121652084 Removed a .swp file checked in by mistake 2019-03-24 21:24:45 +01:00
Matthias Köfferlein 85808527c6
Merge pull request #244 from KLayout/issue-241
Fixed issue-241 (no TextGenerator.default_generator for pymod)
2019-03-22 17:52:22 +01:00
Matthias Koefferlein 69282f8fef Fixed issue-241 (no TextGenerator.default_generator for pymod)
The issue was there because the fonts got imported
through Qt Resources. But in pymod there is no Qt.
The solution is to import them though compiled-in
blobs.
2019-03-21 23:11:52 +01:00
Matthias Koefferlein de85058ecf Bugfix: crash on Ubuntu in pya:qtbinding
Reason: a reference to a temporary object was passed
to a function. This happened for a default value.
The solution is to create a heap object to such default values.
2019-03-17 18:22:19 +01:00
Matthias Koefferlein 49621aa13a Fixed some documentation issues, DRC doc updated. 2019-03-03 10:17:54 +01:00
Matthias Koefferlein 93f4cbf294 Fixed Windows installer: stream plugins have not been included. 2019-01-23 21:16:26 +01:00
Matthias Koefferlein b0d7f5f7f5 Updated copyright. 2019-01-08 00:58:45 +01:00
Matthias Koefferlein 994ea47146 Fixed RPM spec file 2018-10-22 22:45:26 +02:00