Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

  • I understand that themeing is to be overhauled but I would love if feasible for the carousel to have an origin function so it can aligned against edges of the screen better. I feel it would be fine if it kept its origin as default but it would be nice to throw the carousel at the top of the screen and set the origin to <origin>0 0.5> (I think that's the top center of an image) so everything is level at the top of the screen. I'm not sure if adding an origin function would work like I'm imagining or even something that could be done. I just think if I can be done it would be a nice addition to making themeing slightly (albeit not much) more flexible.


  • @Syhles
    Hmm, interesting.
    Is this only to aid positioning of the carousel box in the screen, or are you suggesting to have the selected item be located at the origin as well?

    Btw, the implementation of theme-element types like this will not likely be directly affected by the planned changes in how we handle the generation of them. We can work on improvements like these in parallel.


  • @Zigurana
    Carousel box. Thanks for checking out my request.


  • @Zigurana I always envisioned it so you could align both the carousel, and the logos within the carousel separately, kind of like this:

    You can easily make everything sit dead-center by just giving "0.5 0.5" to <origin> and <pos>.
    Imgur

    Then you can just as easily make the carousel sit flat against any of the 4 walls (including vertical).
    Imgur

    And then you can use the <logoOrigin> to set the logos against the wall, so if the active one has a larger size, it will hang out further than the rest.
    Imgur

    The only snag I can think of is the default positioning of the "infobar" (directly under the carousel), but since that can now be themed separately, I don't really see it as too much of an issue.


  • @mattrixk
    This is basically what I was going for just couldn't explain myself well.


  • @mattrixk It is not origin support, but I have a local branch I have to get back to which implements an alignment option that will allow you to achieve similar results.


  • @Zigurana @jdrassa
    Slightly off tangent but how feasible would it be to have a carousel function for other images like boxart (md_image) or the marquee?

    @jdrassa
    That alignment function sounds exactly like what we need it seems like easier to theme thing this way, less flexible but easier to manage.


  • @jdrassa alignment is actually a much better idea for the logos than origin and pos, considering the logos will only need top, middle and bottom for horizontal carousel, and left, middle and right for vertical carousel.

    This way it also does away with needing new tags like <logoOrigin>, and can stick with existing ones.


  • @Syhles said in Request: Origin Function for Carousel:

    @Zigurana @jdrassa
    Slightly off tangent but how feasible would it be to have a carousel function for other images like boxart (md_image) or the marquee?

    It's definitely possible. There is even some shared code between them. It is really just a question of someone caring enough to do the work. It is on my long list of things to investigate at some point.


  • @jdrassa
    As part of the theming-refactoring, I have started to split out the carousel into it's own GuiComponent-based class.

    This gets complicated real quickly, as the carousel should also take care of member population, input handling (incl the texture loading/unloading), so I had dropped it again for now. Things move slow enough as it is X-).

    But anyway, if you want me to send you the stubs, let me know.

    Btw: if I read the OP correctly, this also is a CR for an 'automatic' carousel, in the sense that it will move through the contained members on a time interval?

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.