[Development] Qt 5.2 header diff: QtWidgets
Jake Petroules
jake.petroules at petroules.com
Tue Nov 5 18:39:55 CET 2013
On Nov 5, 2013, at 12:22 PM, Marc Mutz <marc.mutz at kdab.com> wrote:
> On Tuesday, November 05, 2013 17:51:25 Thiago Macieira wrote:
>> On terça-feira, 5 de novembro de 2013 11:09:48, Giuseppe D'Angelo wrote:
>>>> class Q_WIDGETS_EXPORT QMacCocoaViewContainer : public QWidget
>>>> {
>>>>
>>>> Q_OBJECT
>>>>
>>>> public:
>>>> - QMacCocoaViewContainer(void *cocoaViewToWrap, QWidget *parent =
>>>> 0); + QMacCocoaViewContainer(NSView *cocoaViewToWrap, QWidget
>>>> *parent = 0);
>>>>
>>>> virtual ~QMacCocoaViewContainer();
>>>>
>>>> - void setCocoaView(void *cocoaViewToWrap);
>>>> - void *cocoaView() const;
>>>> + void setCocoaView(NSView *view);
>>>> + NSView *cocoaView() const;
>>>>
>>>> private:
>>>> Q_DECLARE_PRIVATE(QMacCocoaViewContainer)
>>>
>>> Isn't this binary and source incompatible?
>>
>> Yes.
>>
>> Technically speaking, the cocoaView() const member is still binary
>> compatible because we're talking about a Mac here and we know its ABI does
>> not encode return types (except for template functions, which this one
>> isn't).
>
> And it very probably is source compatible, because assignemnt to void* still
> works, and casts to NSView*, too.
>
>> But the constructor and the setter are definitely binary incompatible.
>
> But can be overloaded on the new types, right.
Does this 100% NEED to be reverted? It wasn't even functional until 5.2 IIRC.
I really hope this does not have to wait until 6.0, it was a great improvement in usability.
--
Jake Petroules
Chief Technology Officer
Petroules Corporation · www.petroules.com
Email: jake.petroules at petroules.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20131105/ec813b3a/attachment.html>
More information about the Development
mailing list