Favorites for EmulationStation
-
@Zigurana said in Favorites for EmulationStation:
@ruckage
Do you have any idea how many glyphs are included in this particular set? Which one in particular are you missing?
The one thing that using a font has going for it is that the implementation is a lot easier to accomplish.
My proposal would be to start with the star hard-coded (as in the initial implementation for recalbox).
After this, we could allow it to be a themable element, from the FA set.
If then there is still a need, we could consider heavily modifying the GUITextListComponent to create some sort of hybrid list that includes both images and text.No need to be combative, I assumed you would want the opinion of those who are making the themes. I'm well aware of how many glyphs are included - doesn't change the fact the symbols I want are not included. I've taken great care to make a theme with a specific visual style so I wouldn't want to be forced to use something that just didn't match up. Other themers may disagree but I think my concerns are valid.
I would much prefer just a metadata icon that could be displayed like the rating icons.
-
@TMNTturtlguy and @ruckage Thanks for the comments, and definitely be sure that the more information the better, so that whatever decision is taken, it'll be taken with a good idea of the choices and consequences, as well as the effort and return.
I think @Zigurana last comment might actually have been more relevant then.
In the ES-Kids mode, there is a metadata icon, just like the ratings icon, that can be displayed. It's perfectly configurable per theme!
It is not, however, shown in the gamelist.
@ruckage What exactly would you be thinking about here, just so everybody's on the same page? I thought it was the latter (gamelist), but your comment now seems to suggest that the former is what you were looking for?
For some reason all images I've found lead to broken URLs, but there was a nice heard and teddy-bear icon that @Zigurana had in the themes.
-
@Zigurana
Maybe you should take it to a vote with as many themers as possible, I feel that normal end users could care less if it was text vs icon. Where as the themers most certainly care which of the two routes are taken, also I understand @pjft thought process of not wanting to do 12 things at the same time, wanting things to be implemented piecemeal.All in all I think you should take it a vote with themers on text vs icon, but we aren't the ones coding so it ultimately falls into your hands on how things are implemented. Though I feel that if we're going the text route vs the icon route just because of ease of coding and implementation that it isn't necessarily the route we should be going.
I understand the merit of both routes, I just feel that the text route is the less accessable easy route, were as the icon route is more flexible for themeing but harder implementation route.
Yet again I have no experience coding so alot of this may be way off target regarding the coding aspect, but as a themer these are my opinions on the matter.
-
@pjft Thanks for the reply.
I do honestly think having an icon in the gamelist is a pretty good idea for easy visibility (you can see I went to extra trouble in my theme to do something similar to add the folder icon on my nes theme).
However if that meant I lost control over the look I would prefer to just have the single metadata icon (like the rating icons) that I can theme myself.Es can already be quite restrictive regarding theming so I think making sure future additions give us the freedom to theme them how we like is important.
-
Hi all, I've been following this font discussion closely, and it's been really insightful. I'd like to offer a suggestion that I think is a compromise for all.
The basic issue here seems to be that it is much easier to implement favorite icons as a font than as a PNG/svg image, but then the icons can't be easily changed as per the theme's desire.
I would suggest using a font, but allow that font to be changed to any font the themer desires (just like any other text in ES). The font we use as a default can be laid out as such...
A = Folder icon
B = Favorite icon
C = Kid Friendly icon
etc...Then if a themer wants different icons, they just take the default font, modify the icons per letter, save out the new font, and use it in the theme.xml instead of the default one provided.
I used to do some font modifications, and it's really not that difficult, once you have the tools. If you'd like, I'd love to lend a hand in creating a couple of fonts with icons instead of letters for you this week.
I think this is the best solution, since it satisfies the ability to change the icons however you please, while also keeping it a font, which seems to be the ideal method.
Thoughts?
-
@cafarellidigital I suspect that could be an option, but I believe the angle I'm hearing is that it'd be hard to color it differently to the actual text in the gamelist line? Though I may certainly not have the full context here - I am far from a themer.
@Syhles Your comment is certainly fair, and just to make sure I'm being clear: I suppose it's not as much about taking the sub-optimal route because it's easy, but it's more about delivering something that's useful right now, and later on flesh it out further, rather than keeping everyone waiting for this for long. As you mention, normal users likely won't care, so if we can get them something earlier, and then later deliver on the full-fledged solution, that's usually always better than delivering on everything for everyone later :)
The two cents of someone who's just watching and supporting wherever he can.
-
@pjft ahh, fair point; though the difficulty would be less regarding theming, and more about how ES would handle this icon font. If it is coded in such a way that it is separate from the gamelist then I can imagine it's easy to change the color to whatever you want. If however, the font icon is inserted as text to the beginning of any applicable game title, then yes, it's likely the icon will be the same color as the text and can't be changed. I don't have a problem with this, though others may.
Also, if using font icons, they can only be one-color; there can't be multiple colors per font.
Still, I think it's a decent compromise that doesn't require adding the ability to use images (which would obviously be ideal).
-
@pjft
I'm sorry if it seemed as I was coming off a combative about the subject, as I said I have no experience coding my thoughts on the difficulty came from how I was interpreting the conversation, which could easily be inaccurate.I'm very supportive of changes to further ES as a frontend, if not I wouldn't have bothered to voice my opinion. Also I fully understand why in theory doing this in increments is a good practice. My only worry is if we go the text route now just to get it out the door for end users, but then 1-4 months down the line change implementation to icons, aren't we just wasting themers time and energy?
Thank you for your reply @pjft , yet again sorry if I seem combative this is just how I normally talk.
-
@Syhles with a volunteer community such as this, you can never know how long something will take to implement. It could be a week, a month, or a year. Having half-measures now while we wait for the full-measure is good practice, even if it means "wasting time". ES has changed drastically over the last couple of years, and themes along with it. I don't know many people here who have complained about added or updated functionality (even those whose workload increased because of it).
-
@cafarellidigital
I want to make one thing clear I'm not complaining, I'm stating my opinion on the matter. Also you know what this is right "?" This is a question mark, meaning I'm asking a question. Doesn't necessarily mean that I'm saying we're wasting time or effort, it means I'm asking if we are. -
I can see all points of view to this discussion. Here are my final thoughts and requests:
- Make the update so that it can be turned on/off - if i choose not to support it in my theme, then the user can either not use it, or deal with the default settings.
- Do not use a left or right alignment in the actual gamelist text box itself. Per the video that @pjft shared, the symbol did not appear as part of the gamelist, rather it appeared above the metadata fields as icons. This will allow my theme to use a centered alignment, it will allow @ruckage to have his gamelist text fit within his wonderful outlines. It keeps our gamelist clean and crisp and a single text we can control.
- Create the icons using whatever method you prefer for the time being. If that is text, that is fine. I can find a place to put those icons, if i have too, i can put them down at the system help bar, as long as I can move them, and hopefully control color, i can agree to getting an update out there and refining later.
Do any of these requests align with any thoughts you guys are having? Is it difficult to take they icons out of the gamelist and have them as separate elements like in the video shown? Thanks for your time and patience. Speaking for myself, and maybe @ruckage - we have spent the better part of the last few months creating themes that are nearing completion, it is hard to see a new update come out that might not incorporate into our hard work. That said, the new update looks awesome and i would hate to stop it from releasing, and also stop users from either using the update because they want to use a certain theme, or the opposite, stop using a theme because they want the update.
-
@TMNTturtlguy Well writen
Even though I'm not you, @ruckage or any other creator of any awesome theme I've to say that this sounds quite good and seems to be a good compromise! Defenitily waiting for those features so I can add them to my fav theme (nbba)! :-) -
@Syhles said in Favorites for EmulationStation:
@cafarellidigital
I want to make one thing clear I'm not complaining, I'm stating my opinion on the matter. Also you know what this is right "?" This is a question mark, meaning I'm asking a question. Doesn't necessarily mean that I'm saying we're wasting time or effort, it means I'm asking if we are.I didn't say or think that you were complaining, I was just responding to your post regarding whether it would be worth it to wait until the full implementation can be achieved. It's a valid question to pose, and I was merely offering an alternative perspective.
-
Wow, that was quite a flurry of posts to get through. Unfortunately I was asleep during it all (it all happened at 2am for me), so I couldn't give my input.
I'm going to refer to this current Mod as the Filter Mod.
The way I see it, we can split this into 2 main issues:
- How to display new metadata tags, namely:
- "Favourite"
- "Kid-Friendly"
- "Hidden"
- How to display Folders.
Each of these have their own sub-issues, so I'll try to do this in an orderly manner.
New Metadata Tags
This seems to have 2 main parts to it:
- How to display the tags on the single game screen.
- How to display the tags in the
<gamelist>
.
The first issue is pretty simple to solve, so I'll start with that.
The existing Kid-Friendly Mod uses icons to show which of the 3 metadata tags apply to each game. These icons are set up as
<image>
elements, with all the applicable<image>
properties, like this:<image name="md_favorite"> <pos>0.470 0.620</pos> <maxSize>0.03 0.055</maxSize> <origin>0.5 0.5</origin> <path>./art/icon_favourite.svg</path> </image>
And it comes out looking like this:
I see no reason this can't be done for the next round of this new Filter Mod. If needed we can wrap them in
<feature supported="filter_meta">
so they don't break older versions of ES.The only "Con" that I can see to this approach is that you need to scroll to a game to see if it has any of these metadata tags active. This is not really a big issue, but is a little annoying.
That leads quite nicely into the next issue, of how to display these tags in the
<gamelist>
. This is a much more difficult question to answer, and so far has had quite a few repsonses. I'll list them below, along with some other options.-
Do nothing.
- Don't show any tags in the
<gamelist>
and just leave it as is.
- Don't show any tags in the
-
Display the tags as various characters before the entry name.
- "*" = Fav
- "~" = Kid
- "^" = Hidden
- "#" = Folder
- The Filter Mod already adds a "*" to favourites, so it shouldn't be hard to add to the other tags. This is functional, but not pretty.
-
Customise an existing font.
- Starting with #2 above, we can customise an existing font so the "*" character is a "star" icon, the "#" is a "folder" icon, etc.
- Pro - you can make them look exactly how you want
- Con - making/customising fonts, while not difficult, can be fiddly and annoying and not something every theme maker will want to do.
-
Use icon fonts.
- Instead of using characters like #2, we can use icons from the Font Awesome icon set (or some other font icon set).
- I would imagine each tag would have a default icon that the theme maker can override if they so desire.
- I don't know how difficult this would be to implement.
- I don't know if the icon could be themed separately to the text in the gamelist (colour, size, etc).
- Con - you are limited to the icons in the set, and if the icon you want to use isn't there, then you are out of luck.
-
Add an image.
- This one gives the theme maker the most freedom.
- I imagine this uses a basic
<image>
tag, but sets the size and position automatically, based on the text in the<gamelist>
. You just need to set the<path>
and<color>
. - I have no idea how hard this is to implement.
- Maybe it can piggyback on #2? Whenever "*" is used in the
<gamelist>
, replace it with<image name="md_gamelist_favorite">
?
-
Utilise the single game icons mentioned above.
- This is the same as #5, where the image replaces the characters from #2, except using the existing
<image name="md_favorite">
,<image name="md_kid">
and<image name="md_hidden">
. All you need then is a<image name="md_folder">
.
- This is the same as #5, where the image replaces the characters from #2, except using the existing
Folders
All the
<gamelist>
stuff mentioned above is valid for Folders too, and as this thread isn't really about Folders, I'll try to keep this bit brief.The main issue I see with Folders, is where to have them in the
<gamelist>
. The default functionality is to have them alphabetically inline, which works well for CD systems that might have some single games in folders and others out of folders.However for older consoles, I would usually want to have the folders at the top of the list like a normal file explorer. I'm curious if anyone would want an option in the settings to change this order on a per system basis? Or if it would be hard to implement?
@Zigurana: I just want to point out that none of the images from the Child-Friendly page of the wiki are working. I don't know if this is an issue on your end or not, but I thought I'd bring it to your attention.
- How to display new metadata tags, namely:
-
-
@herb_fargus Good to know. I have an Imgur account that I've used solely for RetroPie stuff.
-
I may have missed something, but I don't see how using Font Awesome would work for the gamelist. Wouldn't we still have to render 2 different items. The game name itself in one font and then the favorites icon in a different font? At that point it doesn't really seem like much difference in effort between rendering the icon as a font vs. an image.
Or is the idea to require theme makers to edit the font they are using for the gamelist to include the icons? I am not really a fan of this approach, but if that is the way we decide to go, one option to make it more flexible would be to allow theme makers to specify which character to use for each icon. That way if they don't want to show an icon, then can set it no no value.
-
I meant to say it in my last post, but the lists above were meant to just be lists of different ideas that have been mentioned, and not intended to be an endorsement of any one idea over another.
@jdrassa I liked the icon font originally, but the more I thought about it (and read comments) the less I think it works. I don't know anything about the implementation side of things, but it just seems too limited. I had a pretty thorough look and couldn't really find anything that could represent "child friendly", and that's not even getting into if you want to have different styles of icons (eg: pixel icons).
-
@mattrixk
You summed it up quite good. It isn't hard to implement the things you want right now (I mostly did by now)...
In addition: It isn't that hard to create a new font with some nice looking symbols in it.. Convert your current ttf into svg and use some website like icomoon or something or whatever you want, it schouldn't be that hardAdd an image.
and
Utilise the single game icons mentioned above.These are the hardest parts or me, I couldn't figure that one out (I'm not an expert if it comes to coding in c++... so all I did until now I learned from pull requests and uploads :-) )
-
@jdrassa The way I see it, from my limited knowledge point of view, is that it should be easier to align the icon with the corresponding text entry in the gamelist if it's a font (you can just render it inline) rather than a separate icon element that you need to explicitly render at a different location trying to guess which gamelist entry is selected at a time.
Then again, I don't know enough of the components in question to confirm that'd be the case. And, certainly, it's not that it can't be done, but just something to bear in mind.
@mattrixk fantastic post. Thank you for taking the time! I'll comment further if I have anything to add when I'm on my laptop later today.
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.