Origin and Rotation support in themes
-
I have been working on some low level improvements for themes.
Origin support will be added for TextComponent, ScrollableContainer, RatingComponent and TextListComponent.
Rotation support is added for ImageComponent, TextComponent, and RatingComponent. I am debating if videos should be able to be rotated (with the caveat that it would not work if use OMX player).
Here is an example of what the rotation config looks like. You can specify the rotation angle in degrees. You can also specify the point at which the rotation occurs. The default
rotationOrigin
is0.5 0.5
.<rotation>90</rotation> <rotationOrigin>0.5 0.5</rotationOrigin>
The code is available on github.
Anyone interested in testing can use the es-tests tool to install on their pi.
Here is a Windows build for those that prefer it.
-
@jdrassa
That's great, I'll give it try today. :) -
Are we talking 4:3 Tate here ? Because if you are Id be very happy
-
@twd
No, this adds the ability to rotate images and text to any angle. I also thought this could be used to create specific portrait themes but at the moment at least you can't rotate the gamelist so it wouldn't be any use for that (Im planning a portrait arcade cab myself at the moment so it's of interest to me.)It is however good for making more interesting designs with text and images now able to be displayed at any angle.
@jdrassa - is there any way to enable the gamelist to be rotated as well, as it would then open the way to have specific portrait themes for arcade cabinets that have a rotated display? Even if you had to limit the gamelist rotation to 90 degree increments that would be enough.
-
@ruckage ahh ok still waiting for that to be a main feature Like 4:3 it's just basic stuff. I have a vert diy cab here but I like to make it a deadicated vert :( I was just chucking the 4:3 in with hope. 16:9 / 16:10 I be happy with.
-
@ruckage the problem with the gamelist is that it usings glScissors to clip the drawing area. This is restricted to clipping a rectangular region so rotations were causing some rendering issues. This is also an issue with the game description text. Restricting it to 90 degree increments could work, although additional work would be necessary to ensure that the clipRect is built properly. I'd like to dig down into the low level rendering code and see if there is a way to handle this use case there though.
-
Ahhh yes, I've been hoping for rotation and have been doing it manually. Maybe now ill just use some svgs and throw the rotation at them XD.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.