Page 1 of 1

3 Questions about Skins v2.0

Posted: 14 Nov 2012 22:00
by mrrhq
Hi, this is my first post here. Hello everyone from the VLC foundation. I love using VLC in conjunction with Mplayer, two of my favorite media players (I use VLC for streaming video and mplayer for complete video) and I enjoy using and supporting these free and open source software projects a lot.

I am trying to skin VLC to make the interface a lot more smaller and cleaner, mostly for my own use/purpose. However, I have a few issues I'm running into and I wonder how to address them:
  • What are the names of the resources I can modify with a skin?
  • Can VLC Skin Editor work with OpenJDK JRE/IcedTea?
  • Can I resize and make VLC skins more customizable?
What are the names of the resources I can modify with a skin?

So VLC comes with the pretty fantastic Skins v2 documentation. However, some critical information is missing from it. For example, I am unaware of the names of the resources on the interface(s) (I think you guys call them "windows" and "panels") I can modify with a skin. How many resources are supported with a skin? When I'm talking about resources, I'm talking about the images, bitmaps, panels, sliders, etc I can modify with their respectable ID. For example, in a template file I have:
id="<window>.normal.titlebar.left"
and
id="<window>.normal.controls.bg.right"
and
id="<window>.cbuttons.repeat1.down"
These resources, like "normal.titlebar" and "bg.right" and whatever heirarchy of resources are avaiable, are not documented.
Would it be too verbose to list every resource tree for every panel, window, etc? Becuase I'm so confused what resources I can change and what I can't change. And how the resource naming convention works. It's so confusing to me. Are there any lists of these things?

Can VLC Skin Editor work with OpenJDK JRE/IcedTea?

One of the reasons I use VLC, and why I'm editing this skin by hand, is because it does not require/use proprietary software. Unfortunatly, this software does require the proprietary Oracle JRE. Unless I am wrong because I have only tried this on a 64-bit system under Arch Linux, with both OpenJDK 6 and 7.

I would really appreciate if someone could tell me if they have gotten the editor to work under an open source variant of Java's runtime environment or if the VLC Skin Editor could support OpenJRE. Otherwise, I'm not going to use it.

Can I resize and make VLC skins more customizable?

This is sort of a follow-up question to question 1. I want to know if skins will integrate with the Customized Interface feature in VLC. What I mean is when you go down to Tools > Customize Interface... I want the skin to be a bit modular, and I also want skins to support all of the buttons and sliders VLC supports. Now I am okay with learning all of the hotkeys to replace the usage of my buttons, but I thought this integration would be neccesary for skins.

I know that due to the Bitmap and SubBitmap tags, it's already hard to make skins more adaptable to the default VLC interface because skins work best with an image sheet (like a sprite sheet), and so moving around the buttons would require changing X and Y positions on the fly and saving those settings. I wonder how difficult it would be to program this feature... Anyway, just a thought.

Forget I mentioned about resizing. I know that skins can be resized. But how easily? Can sliders, buttons and other stuff be resized to and from certain size limits?

Thanks for reading and answering any of my questions.

Re: 3 Questions about Skins v2.0

Posted: 15 Nov 2012 11:21
by erwan10
question #1 :

As a skins2 designer, you're the artist and what you've got is a blank page ..... I know, it's frightening, a blank page ! In other words, there is no such list of ids, because nothing is predefined. It is up to you to define as many windows, panels, buttons, sliders, playtrees, .... as you like and give them id names. The only skins2 requirement is that the id names you provide be unique within a skin. Alternatively you can also pick up an existing skin and adapt it to your own need. That's actually the best way to get started and become familiar with the skin syntax.

Question #2

The skins2 editor should work with any jre. What matters is the java version that is required, not the jre brand which should be transparent. hopefully !
You can also simply unzip the vlt file, edit the theme.xml file with any text editor and rezip it. This may actually be the fastest way for small skin modification.

Question #3

Resizing skinned windows is available. Just follow the documentation or look at existing skins to see how it works.

Re: 3 Questions about Skins v2.0

Posted: 17 Nov 2012 20:57
by 3breadt
enlarging on question 1, these IDs you saw in that skin were chosen by the skin author. You see in the beginning the list of bitmaps and so forth were image files are given certain ids. As erwan said, this is entirely up to the skin author, how he organizes that.

To question two, I never checked it, but when having programmed that skin designer i'm unaware of having used any classes that would not be available in the OpenJDK. It's just that Java version 6 is required at least.

To question three: Resizing is explained here http://www.videolan.org/vlc/skinedhlp/resizable.html