Jump to content

Why own IOSDPlgWindow is rendered repeatedly?


SnoopyDog

Recommended Posts

Hi :bye:

 

Currently i'm trying to create an own OSD window. Basically i succeeded, but there is a big problem for me:

 

My new window has a transparent background. If i show it in the OSD, it is not only rendered the first time it shows up on the OSD - no, there seems to be a timer running which renders it on and on. And with the time, the transparent background gets black!

 

If i open a standard OSD window like the "dialogInfo.xml" this does not happen!

 

How can i prevent my own window from getting rendered on and on automatically?

 

This is how i create the window:

VAR Something: IUnknown;
....
OSDWindowManager.NewWindow(MY_WIN_ID,'myWin.xml',Self,-1,'','','','-','','','',0,FALSE,Something);

 

And this is how i show it on the OSD:

OSDWindowManager.ActivateWindow(MY_WIN_ID);

 

Any help or hints would be VERY welcome! :lol:

Link to comment

First i've made a copy from the original "dialogInfo.xml" and used it. When i open this xml file with the standard Info dialog in (e.g.) the channel list (myChannels.xml) it also does not seem to clear the OSD (?) because it overlays the previous OSD screen. But it does not get rendered on and on.

 

I attached the xml and pics that i'm trying to use.

 

It's 1:1 the same like the standard info dialog that i use in my skin

SkinTest.zip

Link to comment

In the plugininterface please check if the following is there:

 

function TBaseOSDPlugin.OnDoesRender(const Window : IOSDPlgWindow;Layer :
Integer): HRESULT;
begin
 if (Window.RenderLayer = Layer) and Window.visible then 
result:=s_OK 
 else 
Result:=E_FAIL; 
end;

If not please add it. :bye:

Link to comment

Yes, i try to. :bye:

 

And i will add the code fragment that you've posted cause it's missing currently. Maybe this helps already

Link to comment

The code (OnDoesRender) does not help.

 

If i set "allowoverlay" to false the the screen gets totally black. I want to use the overlay from the previous screen, this is why i set it to "true". And with the normal "info" dialog, the same XML file works without any problem. Don't know what goes wrong.

 

Edit: Uuups - i'm trying to create an overlay window that should be used like a dialog :bye:

Edited by SnoopyDog
Link to comment

Oh you can't do real dialog windows, only an overlay (like the volume display, not selectable and non blocking). Own Dialogs are not covered by the PluginSDK. :bye:

 

Sorry my last question was misleading, I should have asked Overlay or standalone...

Link to comment

O.k. thank you for the answer.

 

No problem - i'll try a "trick" to get something similar work... Will see... :bye:

Edited by SnoopyDog
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...