Diffusion Kexi 14dada252f59

Fix build with Qt 5.6

Authored by staniek on Mar 21 2018, 11:47 AM.

Description

Fix build with Qt 5.6

Summary: QOverload<>::of() is new in Qt 5.7, so "emulate" it with static_cast<>() when building against lower Qt versions.

Test Plan:
Kexi 3.1.0 builds fine now on openSUSE Leap 42.3 with Qt 5.6.2.
Before I got these compiler errors:

/home/abuild/rpmbuild/BUILD/kexi-3.1.0/src/widget/KexiFileRequester.cpp: In member function 'void KexiFileRequester::init()':
/home/abuild/rpmbuild/BUILD/kexi-3.1.0/src/widget/KexiFileRequester.cpp:479:30: error: 'QOverload' was not declared in this scope
     connect(d->locationEdit, QOverload<>::of(&KUrlComboBox::returnPressed),
                              ^
/home/abuild/rpmbuild/BUILD/kexi-3.1.0/src/widget/KexiFileRequester.cpp:479:40: error: expected primary-expression before '>' token
     connect(d->locationEdit, QOverload<>::of(&KUrlComboBox::returnPressed),
                                        ^
/home/abuild/rpmbuild/BUILD/kexi-3.1.0/src/widget/KexiFileRequester.cpp:479:41: error: '::of' has not been declared
    connect(d->locationEdit, QOverload<>::of(&KUrlComboBox::returnPressed),
                                         ^

Still builds fine with Qt 5.9.4 and 5.10.0 too...

Reviewers: staniek, piggz

Reviewed By: staniek

Subscribers: KEXI

Tags: KEXI

Differential Revision: https://phabricator.kde.org/D11544

Details

Committed
staniekMar 21 2018, 11:48 AM
Reviewer
staniek
Differential Revision
D11544: Fix build with Qt 5.6
Parents
R71:1578fcb4a040: Fix build with Qt 5.11 (missing headers)
Branches
Unknown
Tags
Unknown