Superb quality and spec AB-Com PULSe 4K SE. Crazy offer! Only £129! FREE UK DELIVERY! 4K UHD, Enigma 2, Multiboot 4 images & more!...
Superb quality and spec AB-Com PULSe 4K Rev II Twin Satellite tuner only £179! FREE UK DELIVERY! 4K UHD, Enigma 2, SATA HDD facility, Multiboot 4 images & more!...

Skinning concept

Well there is reason to believe there may be new activity from Vu+ in 2026.
ok, you are probably closer than i am... the only thing i know is that the vu+ development company (Marusys) got closed years ago... so, i would be surprised if somebody else would continue with dvb settop box development under the vu+ brand name (and support old boxes). but who am i ;-)
 
i created a simple skin for all skins other than e2darkos. with this skin i cant reproduce the rendering distortion.
why is the backdrop not shown on the screenshot? (it is shown on the tv).
 

Attachments

  • simple.webp
    simple.webp
    95.9 KB · Views: 8
Well can be something specific for dm900...
On gbquad4kpro it do shows...
Is it show on DarkOS?
 
yes, on darkos backdrop shows on the screenshot.
well, if it shows on tv it is in the framebuffer and the framebuffer is captured by screenshot. strange...
 
let me ask another general question: there is a default oe-a (emergency) skin, then i have simple ten eighty skin and e2darkos. i assume a plugin doesnt have to look nice on default oe-a skin because it is only used in case of severe problems. so, i styled the skin to look nice for ten eighty. it should then also work for all other skins that dont have a my plugin skin included... right?
 
All other skins should load your embedded skin.
If there is skin design for specific skin it will overwrite your embedded skin.
If you have no embedded skin or some elements are not present in current skin it will try to load from emergency skin.
I think that is. But maybe @Huevos can give more details.
 
let me ask another general question: there is a default oe-a (emergency) skin, then i have simple ten eighty skin and e2darkos. i assume a plugin doesnt have to look nice on default oe-a skin because it is only used in case of severe problems. so, i styled the skin to look nice for ten eighty. it should then also work for all other skins that dont have a my plugin skin included... right?
Go back and read post #2.

"if you must use an embedded skin don't give it any style"

That why it inherits style, colours, etc, from the current skin.
 
Last edited:
All other skins should load your embedded skin.
If there is skin design for specific skin it will overwrite your embedded skin.
If you have no embedded skin or some elements are not present in current skin it will try to load from emergency skin.
I think that is. But maybe @Huevos can give more details.
Priority is current skin, emergency skin, embedded skin.

But the emergency skin should not contain third party plugins.
 
So, a possible solution for you to try...

First you need the current skin name:
Code:
skinname = os.path.dirname(config.skin.primary_skin.value)

Then check you have a local xml in your plugin for this skin.

Then load it. I think you could do that as follows, but you would need to test...
Code:
from skin import loadSkin
skinfile = "/path/skinfile.xml"
loadSkin(skinfile)

And lastly, any additional graphics, fonts, etc, that are outside the skin path you are going to need to use the full path.
 
Last edited:
So, a possible solution for you to try...

First you need the current skin name:
Code:
skinname = os.path.dirname(config.skin.primary_skin.value)

Then check you have a local xml in your plugin for this skin.

Then load it. I think you could do that as follows, but you would need to test...
Code:
from skin import loadSkin
skinfile = "/path/skinfile.xml"
loadSkin(skinfile)

And lastly, any additional graphics, fonts, etc, that are outside the skin path you are going to need to use the full path.
loadskin works. that's exactly what i was looking for. thanks.
 
im now scaling down the backdrop with pil from 4k to fhd. couldnt recreate the skin distortion problem anymore. maybe there is a bug in the builtin scaling function...
 
Possible. Or its because scaling try to do it in hardware and that breaks it. With pil you do it in software...
 
well, as builtin skin scaling in general works, id rather suspect that for big images like 4K something gets overwritten that should not be overwritten. anyway... we probably have to live with it ;-)
 
Why use a 4k image? The skin is 1080 so why use anything more?
 
if i remember correctly tmdb does not provide fhd backdrop, only smaller ones. thats why i selected the 4k resolution. and downscaling was never a problem on dreamos.
 
a question regarding scaling:
say, i have pictures 400 by 200 and 200 by 400... and i want to display them in a widget 800 by 800. can i scale them somehow to fill the square and be centered? i mean scaling without stretching the pic in one direction.
 
how you going to scale those? Via built in scaling function or by using PIL?
With PIL is strait forward...You just have to calculate dimensions with keeping aspect ratio.
With built in scaling you have 2 ways:

1. By using attribute to the widget

XML:
<ePixmap position="0,0" size="800,800" pixmap="....." scaleFlags="scaleCenter" />

2. By using python code

Python:
self.guiObject.setPixmapScaleFlags(BT_SCALE | BT_KEEP_ASPECT_RATIO | BT_HALIGN_CENTER | BT_VALIGN_CENTER)
 
i meant the built-in widget method. will try scaleCenter flags.
edit: works... thanks.
 
Last edited:
i'm nearly done with my tmdb plugin. now i'd like to have it called when the red key is pressed in epgselection. i saw that imdb and tmdb plugins are hardcoded in epgselectionbase. is there a dynamic interface as well for registering info plugins?
 
Last edited:

OpenViX Feeds Status

Back
Top