[Qt-interest] Windows that move together- the answer

John Weeks john at wavemetrics.com
Thu Aug 26 21:28:46 CEST 2010


I finally found the answer to the question: this is how the Cocoa  
framework on OS X works. Qt is using the NSWindow windowDidMove  
notification in order to call my event filter, which is how it should  
be doing it. But that notification simply isn't sent very often. I  
found numerous bitter complaints about it on the Cocoa Developer's list.

The only solution is to use Carbon. But if you use Carbon, you can't  
build for 64 bits, so it looks like I'm just screwed by Apple. That's  
becoming a familiar feeling...

> My company's application, that we are in the beginning stages of  
> porting to Qt, has grouped windows- windows that move together,  
> basically looking like separate windows but acting like one window.
>
> Under Mac OS X Carbon, we use Macintosh window groups. On Windows,  
> we have an emulation of window groups that basically just catches  
> window move events and applies the moves to all the windows of the  
> group.
>
> I implemented such a scheme under Qt using an eventFilter that  
> watches for QEvent::Move. It works OK on Windows, but on Macintosh  
> the events are very much delayed. The grouped windows never move  
> with the main window, and actually wait for a second's delay or so  
> before they catch up.
>
> I was wondering if anyone might have experience with QEvent::Move,  
> and have a solution.
>

Regards,
John Weeks

WaveMetrics, Inc.
Phone (503) 620-3001
Fax   (503) 620-6754
email   support at WaveMetrics.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20100826/edd29869/attachment.html 


More information about the Qt-interest-old mailing list