JGRennison / OpenTTD-patches

OpenTTD - http://www.openttd.org/ - with additional patches
Other
585 stars 133 forks source link

[Suggestion] Better UI for slots and counters #745

Open rhoun opened 2 months ago

rhoun commented 2 months ago

Motivation: Slots and counters are very powerful things that allow us to mimic dynamic dispatch systems, but improving UI will allow us to use it at an even bigger scale. I think this is a pretty specific and advanced play style, but if you do something like this:

Then slots and counters very quickly add up, the list grows, and it becomes cumbersome to select the required counter/slot while programming signals or train orders.

Solution: Use UI similar to the train list with groups, and allow selecting slots/counters using a list and a button that opens this same UI with an additional button, 'confirm selection'.

So, while managing orders or programming a signal, add a button in the empty space near the list here, and similar for slots: image This button will open the new selection UI.

The current list can remain for players who don't use many slots, or you can do something fancy, like changing its logic to show the last 20 created/edited slots. Though, this will likely require tracking time for when the slot/counter was last changed.

The same new UI will open when you click the 'manage slots/', without the 'confirm selection' button.

For counters, mimic the train list UI, so on the left, you have 'All counters,' 'Ungrouped counters', and then groups. Group nesting might be either not supported or limited to one level based on how hard this is. When you select a group, show counters for that group on the right instead of trains.

For slots, the idea is the same, but I'm a bit unsure because it also displays trains in the slot, so UI already has less space. If you add another column for groups there, not sure if shrinking the group/slot list will help, but I think shrinking the width of the train list won't hurt here - it's just to track what train occupies the slot, so you likely can also remove profit info if it doesn't fit with the new width.

I hope I explained this clearly enough, but let me know if you would like some visual mockups.