--- In [email protected], "p.renfrew" <p.renf...@...> wrote:
>
> --- In [email protected], "brucexs" <bswitzer@> wrote:
> > > 
> > > Can I easily create a script loop that only runs while my bar is running 
> > > and restores if state is minimized?
> > > 
> > > 
> > Maybe (not tested)
> > event.create(500, 0, "if(win.minned(?=Myclist=)\rwin.show(?=myclist=,1)")
> 
> I have discovered that this can not work because PPro is a WS_EX_TOOLWINDOW. 
> The method does work in a sample dialog app if it isn't a toolWindow (it then 
> receives WM_WINDOWPOSCHANGED which can immediately restore the window).
> 
> Show Desktop (IShellDispatch4.ToggleDesktop()), will minimize all minimizable 
> windows by forcing a "ShowWindow(SW_MINIMIZE)", but toolWindows do not move; 
> the desktop is activated and placed in front of them.  That is why windows 
> with (WS_EX_TOPMOST | WS_EX_TOOLWINDOW) will remain after a "Show Desktop", 
> along with those that have the desktop as a parent.
> 
> But, I can't think of a ppro event and function that would allow me to bring 
> ppro in front of the desktop if (and only if) the desktop comes in front of 
> it.
>

If you know PowerPro bar overlaps position x, y on desktop, then if 
mainhandlefrompoint(x,y) is not the powerpro bar, can you move the bar back on 
top with win.showna(no activate) or failing that do a setwindowpos with 
dll.call as a test (I can throw setwindopos into win plugin if dll.call works 
and you don't want to rely on distributing dll plugin).




Reply via email to