Commit Graph

27 Commits

Author SHA1 Message Date
Matthias Koefferlein d248bfddf3 Updating copyright to new year 2024-01-01 17:06:23 +01:00
Matthias Koefferlein 3736b59156 it's -> its 2023-07-30 14:46:58 +02:00
Matthias Koefferlein a85dbd3d31 Updating copyright notice to 2023 2023-01-01 22:27:22 +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 Koefferlein 82909001c4 Build fixes with pymod 2021-12-03 07:28:09 +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 18fee75276 WIP: QtCore enabling 2021-11-28 16:31:37 +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 66199958a5 Stupid typo fixed 2021-02-27 00:02:09 +01:00
Matthias Koefferlein 9350b33bcb Squashed commit of the following:
commit 2a8a2d228d
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date:   Fri Feb 26 23:54:08 2021 +0100

    One more fix.

commit 8c4d76505c
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date:   Fri Feb 26 23:03:07 2021 +0100

    More patches for uitools-less build for CentOS 8

commit 2ac28292b8
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date:   Fri Feb 26 22:52:27 2021 +0100

    First steps for fixing build on CentOS 8 without uitools
2021-02-26 23:59:23 +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 Koefferlein 7d4310d343 Updated copyright to 2021 2021-01-05 22:57:48 +01:00
Matthias Koefferlein 8275e47334 More @args removed. 2020-03-14 22:44:43 +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 b8c82c4f8b Updated copyright notice to 2020 2020-01-05 00:59:43 +01:00
Matthias Koefferlein b0d7f5f7f5 Updated copyright. 2019-01-08 00:58:45 +01:00
Matthias Köfferlein 376e4ea0ae WIP: MSVC compatibility for pymod module. 2018-08-04 18:13:49 +02:00
Matthias Köfferlein 23d715001b First steps towards enablement of MSVC2017 for pymod. A lot of things to TODO yet ... 2018-08-04 18:02:39 +02:00
Matthias Koefferlein 21bf382549 WIP: Fixed documentation, added QtCore.Qt.QT_VERSION(_STR) 2018-06-05 21:03:21 +02:00
Matthias Koefferlein ecc0520ffb WIP: Qt5 compatibility 2018-05-31 17:54:29 +02:00
Matthias Koefferlein b91a3b5cad WIP: added Qt5 support 2018-05-31 09:19:26 +02:00
Matthias Koefferlein f1f9132d48 WIP: further refactoring of Qt binding libs 2018-05-30 22:02:27 +02:00
Matthias Koefferlein 3b144259fd WIP: build works again at least on Qt4. 2018-05-30 01:22:33 +02:00
Matthias Koefferlein 6468bb7ab9 WIP: refactoring of GSI structure for separated modules. 2018-05-30 00:39:58 +02:00