> Obviously this behaviour wasn't suitable for my application 
> so I had to look to the windows API to work out how to solve 
> it. I ended up doing this:
> 
>       HWND win = fl_xid(window);
>       SetForegroundWindow(win);


As an aside - does Win7 still honour the TOPMOST flag?
If so, something like this might work:

HWND hw = fl_xid(main_win);
SetWindowPos(hw, HWND_TOPMOST, 0, 0, 0, 0, (SWP_NOMOVE | SWP_NOSIZE |
SWP_SHOWWINDOW));


Then later put it back the way you found it with:

HWND hw = fl_xid(main_win);
SetWindowPos(hw, HWND_NOTOPMOST, 0, 0, 0, 0, (SWP_NOMOVE | SWP_NOSIZE |
SWP_SHOWWINDOW));


In principle, if TOPMOST is still honoured, that should force your
window to the top of the stack in an "always on top" sort of way - that
ought to get the end-users attention!

And is also why TOPMOST is generally frowned upon of course!




SELEX Galileo Ltd
Registered Office: Sigma House, Christopher Martin Road, Basildon, Essex SS14 
3EL
A company registered in England & Wales.  Company no. 02426132
********************************************************************
This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.
********************************************************************

_______________________________________________
fltk mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to