• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
RetroPie forum home
  • Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login

Input needed: ES theming improvements

Scheduled Pinned Locked Moved Projects and Themes
themethemingemustationimprovementsbrainstorm
255 Posts 32 Posters 164.1k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J
    jdrassa @EctoOne
    last edited by 11 Feb 2017, 17:51

    @EctoOne it does contain the video preview and WSOD fix. The end goal is to get these changes into RetroPie.

    Get latest build of EmulationStation for Windows here

    E 1 Reply Last reply 11 Feb 2017, 18:21 Reply Quote 0
    • E
      EctoOne @jdrassa
      last edited by EctoOne 2 Dec 2017, 00:32 11 Feb 2017, 18:21

      @jdrassa yes I know and I appreciate everything you and everyone else is doing to improve ES. I only meant that it was hard to keep track off which mod has which changes included. Since I've joined this community I think there has been at least 4 version around. Video, Grid, Carousel and the one with OSK and WiFi enhancement. So seeing that some of them are merged is great.
      Another question, is there a way to get a build for Windows? Even though I'm personally not interested in Video Preview myself, I still want to figure out how to put it in my personal Theme. I have versions for video and carousel but, especially with your changes, it would be great to have a complete version for development on my PC first.

      1 Reply Last reply Reply Quote 1
      • Z
        Zigurana @jdrassa
        last edited by 12 Feb 2017, 21:23

        @jdrassa I've updated my branch, the following fixes are in:

        • element type systemcarousel is now called carousel, so the XML looks like:
          <carousel name = "systemcarousel">
          The allowed entries for these are:
        	("carousel", makeMap(boost::assign::map_list_of
        		("type", STRING)
        		("size", NORMALIZED_PAIR)
        		("pos", NORMALIZED_PAIR)
        		("color", COLOR)
        		("logoScale", FLOAT)
        		("logoSize", NORMALIZED_PAIR)
        		("maxLogoCount", FLOAT)));
        

        these types correspond to the types that already existed for the other elements, taking two float values where appropriate, although currently only one is used for size and pos.

        • introduced new systemInfo node, of element type text, accepting the following entries:
        	("text", makeMap(boost::assign::map_list_of
        		("pos", NORMALIZED_PAIR)
        		("size", NORMALIZED_PAIR)
        		("text", STRING)
        		("backgroundColor", COLOR)
        		("fontPath", PATH)
        		("fontSize", FLOAT)
        		("color", COLOR)
        		("alignment", STRING)
        		("forceUppercase", BOOLEAN)
        		("lineSpacing", FLOAT)
        		("value", STRING)))
        

        This was all already present, except for the background color one, allowing you to specify the color and opacity of the infobar color.

        Check the repo here (yes, I made a typo in the repo-name X-P )

        My next steps:

        1. Move the carousel to a new component type, making it yet another implementation of the GuiComponent superclass.
        2. vertical carousel types (needs adjustements of the input handler and help elements as well.

        @jdrassa : I did not add the compatibility stuff yet, as I think its another functionality altogether, and it should be decided on first how we are going to pick that up. I.e. I am happy to merge it in, once it gets posted to master, but I am not introducing it here as part of this extension of ES.

        If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

        1 Reply Last reply Reply Quote 1
        • Z
          Zigurana
          last edited by Zigurana 2 Dec 2017, 21:50 12 Feb 2017, 21:25

          If there is an interest, I could provide windows builds for this as well, I just need to figure out all the dependencies, and what I need to package to make it work...
          Can someone try if this runs on a normal windows pc?

          DOWNLOAD

          And for clarity, the common system part of my theme now has this:

          	<view name="system">
           
                  <carousel name = "systemcarousel">
                    <pos>0 0.8</pos>
                    <size>1 0.2 </size>
                    <color>000000c0</color>
                    <logoScale>1.5</logoScale>
                    <logoSize>0.14 0.15</logoSize>
                    <maxLogoCount>5</maxLogoCount>
                  </carousel>
                  
                  <text name = "systemInfo">
                    <pos>0.6 0.65</pos>
                    <size>0.4 0.15 </size>
                    <backgroundColor>90909088</backgroundColor>
                    <fontPath>./art/font.ttf</fontPath>
                    <fontSize>0.033</fontSize>
                    <color>ffff55ff</color>
                  </text>
                 
              	<helpsystem name="help">
          			<pos>0.012 0.960</pos>
          			<textColor>ffffff</textColor>
          			<iconColor>ffffff</iconColor>
          			<fontPath>./art/font.ttf</fontPath>
          			<fontSize>0.033</fontSize>
          		</helpsystem>
          
          	</view>
          

          which results in:
          alt text

          If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

          N M E 4 Replies Last reply 12 Feb 2017, 21:36 Reply Quote 2
          • N
            Nismo @Zigurana
            last edited by 12 Feb 2017, 21:36

            @Zigurana Very nice work, I'm glad that you try to keep ES windows support.

            Would be very nice to have a windows build for testing, unfortunately I don't have to much time now for testing...

            1 Reply Last reply Reply Quote 0
            • M
              mattrixk @Zigurana
              last edited by 12 Feb 2017, 23:08

              @Zigurana I'll give the windows build a try on my lunch break (about 3 hours). I like that you can set the width for the infobar. Am I correct in assuming the carousel is still only 100% width, so you can only set its height and ypos?

              My ES themes: MetaPixel | Spare | Io | Indent

              Z 1 Reply Last reply 13 Feb 2017, 05:13 Reply Quote 0
              • E
                EctoOne @Zigurana
                last edited by EctoOne 13 Feb 2017, 02:10

                @Zigurana Did some small testing on the Windows version and so far it works. At least the carousel part. One thing i noticed is that on some systems i get a different background color behind the description field even though i've nothing set there. On the most systems it is normal so it might be a windows thing.

                Just did another test with the Carbon theme and there are weird boxes all over in system view. But it's already 3a.m here and I'm getting tired. Will test more later.

                1 Reply Last reply Reply Quote 0
                • M
                  mattrixk @Zigurana
                  last edited by 13 Feb 2017, 02:52

                  @Zigurana It's looking good. I used:

                  <carousel name="systemcarousel">
                    <pos>0 0.677</pos>
                    <size>1 0.260</size>
                    <color>FFFFFF00</color>
                    <logoScale>1</logoScale>
                    <logoSize>0.200 0.100</logoSize>
                    <maxLogoCount>5</maxLogoCount>
                  </carousel>
                  
                  <text name="systemInfo">
                    <pos>0.010 0.930</pos>
                    <size>0.980 0.050</size>
                    <backgroundColor>FFFFFF00</backgroundColor>
                    <color>AAAAAA</color>
                    <fontPath>./_inc/font/Roboto-Light.ttf</fontPath>
                    <fontSize>0.025</fontSize>
                  </text>
                  

                  To get:
                  Imgur

                  I have the logos set to width 20% each, with no logoScale. The NES logo looks smaller because it is taller than the other logos and not as long, so it's hit the height limit before hitting the width limit.

                  You might be able to see the overlap of the logos on the left and right of the image. This is where being able to set x-width would be awesome, but I can get around it by setting the width of the individual logos to something smaller.

                  Also it still has the pop-in of the right most logo when you cycle left.

                  I did notice some weirdness in the menus though:

                  green menu heading
                  Imgur

                  brown background behind menu item
                  Imgur

                  green menu heading | red behind menu items
                  Imgur

                  Strange colours showing up in the headers and over some of the items. It only seemed to happen on the items that you can choose left or right, not the on/off items. They also seem to change width as you press left/right.

                  It came and went. Sometimes none were coloured, other times 2 or 3 were coloured. I only noticed the coloured items in the UI Settings menu, but the Main Menu title was always that dull green colour.

                  My ES themes: MetaPixel | Spare | Io | Indent

                  Z 1 Reply Last reply 13 Feb 2017, 05:15 Reply Quote 1
                  • Z
                    Zigurana @mattrixk
                    last edited by 13 Feb 2017, 05:13

                    @mattrixk, you are more or less correct. You can set the width to less than 100% but the logo's will likely still slide beyond it. Do you think its usefull to have a carousel that takes up less than a full screen width/height?

                    If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                    M 1 Reply Last reply 13 Feb 2017, 05:28 Reply Quote 0
                    • Z
                      Zigurana @mattrixk
                      last edited by 13 Feb 2017, 05:15

                      @mattrixk hmm, that means that my mechanism for checking if the bgcolor has been set is bugging out. I will have another look tonight.

                      If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                      1 Reply Last reply Reply Quote 0
                      • M
                        mattrixk @Zigurana
                        last edited by 13 Feb 2017, 05:28

                        @Zigurana said in Input needed: ES theming improvements:

                        Do you think its usefull to have a carousel that takes up less than a full screen width/height?

                        I think it would be a really good thing to have if it's not too hard to implement, and could open up a lot of new ideas for the design of the System View. You could set it to take up only half the screen and leave the rest for other things (system info, images, etc).

                        I think it would also be useful for when someone gets Vertical Carousel working, we could have a strip down one side that's only 10-20% wide, but 80-100% high.

                        My ES themes: MetaPixel | Spare | Io | Indent

                        Z 1 Reply Last reply 15 Feb 2017, 22:20 Reply Quote 0
                        • E
                          EctoOne
                          last edited by 15 Feb 2017, 09:33

                          Any chance that the <color> tag is for the actual system image (similar to how <image name="logo"> works) and <backgroundColor> for the carousel is added?

                          M Z 2 Replies Last reply 15 Feb 2017, 10:58 Reply Quote 0
                          • M
                            mattrixk @EctoOne
                            last edited by 15 Feb 2017, 10:58

                            I'm kinda with @EctoOne on this one. I was trying to colour the system logo (all logos are one colour, and then use <color> to change their colour and opacity. It didn't work and I was sad :(

                            My ES themes: MetaPixel | Spare | Io | Indent

                            1 Reply Last reply Reply Quote 0
                            • Z
                              Zigurana @EctoOne
                              last edited by Zigurana 15 Feb 2017, 17:58

                              @EctoOne
                              That's currently not the case, but I will see what I can do.
                              @mattrixk , we can't have that, now can we?

                              If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                              L 1 Reply Last reply 15 Feb 2017, 21:21 Reply Quote 1
                              • L
                                lilbud @Zigurana
                                last edited by 15 Feb 2017, 21:21

                                @Zigurana Just a question: Will emulationstation-kids ever be added to the offical build of ES?

                                Creator of the Radiocade: https://retropie.org.uk/forum/topic/6077/radiocade

                                Backlog: http://backloggery.com/lilbud

                                Z 1 Reply Last reply 15 Feb 2017, 22:23 Reply Quote 0
                                • Z
                                  Zigurana @mattrixk
                                  last edited by 15 Feb 2017, 22:20

                                  @mattrixk

                                  Ok, I've tried not to make you unsad, so you can apply colors to the logo now as well (this is part of the system\logo which is of type image):

                                  	<view name="system">
                                  		<image name="logo">
                                  			<path>./logo.png</path>
                                                          <color>FF00FF80</color>
                                                  </image>
                                          </view>
                                  

                                  And I've fixed the weird colors behind other textcomponents thing that was going on.
                                  I've also implemented the fix for the late popping in of the right-most logo, thanks @jdrassa for the insight!

                                  BUT I am not sure if I can make partial carousels happen at this point.
                                  To allow a carousel to cover only part of the width of the screen, you need to have

                                  1. some kind of mechanism to crop / remove a logo once it scrolls outside the determined size (rather than just moving it offscreen)
                                    AND/OR
                                  2. some mechanism to pop logo into the carousel once you start scrolling, otherwise we get the popping thing all over again.

                                  #Further updates#
                                  I made a start with further restructuring of the code (moving the carousel to a separate component (for ease of re-use) but decided to stash all that for now, as it is quite a job, and with no clear application in sight yet.

                                  #Concluding#
                                  So I pushed the changes to https://github.com/zigurana/EmulationStation/tree/SystemCaroussel, and you can download the new windows build HERE.

                                  If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                                  M 2 Replies Last reply 15 Feb 2017, 22:37 Reply Quote 3
                                  • Z
                                    Zigurana @lilbud
                                    last edited by 15 Feb 2017, 22:23

                                    @lilbud
                                    Hey man! That particular project is on hold for now, at least until we decide what to do with the metadata improvements. For a while it seemed that there was a really good momentum building up, and I did not want to spend a lot of time debugging and redesigning something that will have to be revisited when we go to a database approach anyway.

                                    In its current state, it is still one or two big bugs away from stability, and certainly not ready for prime-time!

                                    If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      mattrixk @Zigurana
                                      last edited by 15 Feb 2017, 22:37

                                      @Zigurana Awesome! I'll check it out on my lunch break.

                                      My ES themes: MetaPixel | Spare | Io | Indent

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        mattrixk @Zigurana
                                        last edited by 16 Feb 2017, 02:51

                                        @Zigurana: Solid build mate (I'm using the windows build. It's not really practical to set up a Pi on my desk here at work).

                                        I understand about the problems of making the carousel not 100% width. I didn't know it worked that way, but now that I do, I see how that would be a mongrel to get around.

                                        Notes:

                                        • The weird menu colours are indeed gone.
                                        • I'm still getting the pop-in of the right-side carousel icon.
                                        • You used to be able to add <color> to the logo only in Basic and Detailed Views, so it's great that you can now add <color> to the logo in the carousel too. Unfortunately it only applies the colour to the active logo. Say you have Gameboy, NES and SNES, and you've given them green, red and purple respectively. If your carousel is on Gameboy, the Gameboy logo will be green, but the NES and SNES logos will be their default colour. When you cycle to NES, the NES logo will be red, but Gameboy and SNES will be their default colour.
                                          • Thinking into it, it's probably going to be too much work to do what I was envisioning. If I want the logos to be different colours I can just use photoshop (it just means users will be stuck with those colours I choose).
                                        • I noticed that you have integrated Video Previews into this build. I'm stoked about this because it means I can do all my theme dev work in this one build, instead of moving back and forth between this and the Video Preview build. Yay!

                                        My ES themes: MetaPixel | Spare | Io | Indent

                                        E Z 3 Replies Last reply 16 Feb 2017, 04:15 Reply Quote 0
                                        • E
                                          EctoOne @mattrixk
                                          last edited by 16 Feb 2017, 04:15

                                          @mattrixk hmm, having only the active system colored would work for me, since I'm only displaying 1 system on my theme. So at least I don't have the extra work to recolor every system, that's why I asked for that feature because I'm lazy. I hope it is possible to get it fixed for you.

                                          Also that's why I asked what features are in this build. It was a little confusing having 3 builds with different features. Now I'm only using this one. Guess this weekend I have to spend some more time on the Pi, want to see if I can set up UAE4arm anyways.

                                          Z 1 Reply Last reply 16 Feb 2017, 05:23 Reply Quote 0
                                          101 out of 255
                                          • First post
                                            101/255
                                            Last post

                                          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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received