Log in

View Full Version : jumping dialog box


dimitrius
21st January 2004, 17:44
this has been sort of a "feature" of vdub and derivatives for as long as I remember. When the little dialog with a label, progress indicator, another label and a Cancel button appears (in the form of MPEG import or OGM imports or Rederiving AVI keyframes or in other forms) if you click on it's title bar, then click on the main window, then click on on the dialog's title bar again, it jumps into a random location. Is that an easter egg or a subclassing error or something else?

I've been wondering about this since vdub could open asf files.

fccHandler
22nd January 2004, 05:50
:confused: Mine doesn't do that...

dimitrius
22nd January 2004, 19:06
you sure you were doing it right?

try opening a long mpeg, or a long avi with "re-derive kyframe flags" in the extended options.

while the progress indicator is going:

click on the title bar (the one with the minnimize, max and close buttons), then click anywhere inside vdub window, then click again on the title bar of the progress dialog. for me, on the 3 machines i've tried, it jumps to a random location not far from the original location.

fccHandler
22nd January 2004, 21:18
OK, I just got the "AVI Import Filter" dialog jumping around while re-deriving keyframe flags. Also, it seems that after it jumps, I have to press "Abort" twice to close it. Interesting...

However, the "MPEG Import Filter" doesn't jump for me, nor does the processing status dialog. (I should note that I'm using VirtualDub-MPEG2 (http://fcchandler.home.comcast.net/stable), not the original VirtualDub.)

dimitrius
23rd January 2004, 14:48
well, at least I am not dreaming...

I think I'll get myself vdub source code and take a look at what happens. I am hoping that Suiryc or Belgabor could give us some clue to this mistery.

fccHandler
23rd January 2004, 17:55
I asked Avery Lee about it, and here is his reply:

This occurs because the AVI dialog isn't parented to a window and thus it has to run the message pump only for the progress dialog, which causes Windows to act slightly strangely... messages that are sent to the main window don't get answered in a timely fashion. This prevents severe reentrancy issues in the UI. The MPEG dialog solves this by attaching to the main window and disabling it so UI input can't get in during the scan -- I'm not entirely satisfied with this solution however because you can't drag or otherwise manipulate the main window, and it requires an ugly global variable hack for the low-level routines to find a parent window.

dimitrius
23rd January 2004, 18:07
I see, so it is a subclassing error, I was rather hoping it was an egg, I might have become famous if it was. :cool: People would say "I wonder who noticed it", "It was Dimitrius, isn't he great".