> On Aug 19, 2007, at 00:44, Michael Beal wrote: > > All skin objects are positioned by hard-coded pixel-oriented > > parameters. In other words, if you want something to be shown at > > 300 pixels from the left and 180 from the top, you set the X and Y > > > values to put it there. > > [snip] > > > I would find it much easier, and more elegant, to build skins > > by using percentages mainly because it allows me greater > > flexibility in > > object placement. > > 1) As I understand it, the 'hard-coded' pixel values in skin files > are scaled to the resolution specified in your freevo configuration.
No, not when started with the "-fs" option. When the fullscreen option is specified from the command line, an X server is spawned at the given resolution specified in your freevo.conf. You monitor handles the scaling, or more correctly the stretching, of the pixels to fill the space. > To exemplify, if your desktop resolution is 1600x1200 and your skin > resolution is 800x600, the freevo skinning engine will simply double > all pixel dimensions accordingly. I have confirmed this by example on > my end, but I would love to see some developers confirm this on the > engine side of things as well. Again, no. Freevo does no scaling at all. X can resize the display resolution on the fly without requiring a restart. You would know this if you had a widescreen format monitor and ran freevo, manually switching from full screen to windowed display while maintaining the freevo.conf resolution at 800x600. > 2) Specifying locations of objects in terms of percentages, given (1) > above, provides exactly zero added flexibility in object placement, Wrong! It allows the skin to adapt to varying screen sizes on the fly, just like X does. > assuming that the freevo engine can handle subpixel values (fractions > of a pixel), which I'm not sure about -- and even then, the only case > where that'd help you is to provide pixel-accurate placement of items > in an upscaled setting (which I would argue is overkill). Ever heard of "rounding" and "integers"??? That's why we would use a little algebra to come up with explicit integers to define proper placement from a percentage of screen, adjusted by the aspect ratio of the predefined screen geometry. > That having been said, I'm not opposed (nor in support of, at this > point) the ability to specify dimensions in percentages as opposed to > pixel values. This just makes it a little bit more difficult in my > mind to specify dimensions for objects that are nested and bounded > within other variable-length objects, but that's just an aside > anyhow. I'll work out the math. I just need someone who is willing to code it into the module and send it back to me for testing. If I could come up with an accurate, self-adapting representative number for all channel volumes in a 5.1 Surround Sound volume control, there _must_ be a way to do this. It's just going to take some time to figure out. So far, the formula will require a self-adapting, sliding scale where distances at the right edge and bottom of the screen will require a larger value to calculate the proper aspect ratio compensation. So far, so good. Now just to work out the calculations for the sliding scale and I'll have it. > > As usual, I welcome corrections wherever necessary. > Correct me if I'm wrong but, so far, it's really looking like you're just out to poo-poo the whole idea without really understanding the whole of the problem. ____________________________________________________________________________________ Yahoo! oneSearch: Finally, mobile search that gives answers, not web links. http://mobile.yahoo.com/mobileweb/onesearch?refer=1ONXIC ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Freevo-devel mailing list Freevo-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-devel