• Status Closed
  • Percent Complete
  • Task Type Patches
  • Category User Interface
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by jdgordon - 2006-09-14
Last edited by jdgordon - 2007-08-01

FS#5990 - set_int screen with a slider

this is the much requested screen with a slider instead of lists for te int settings… commitable?

Closed by  jdgordon
2007-08-01 14:25
Reason for closing:  Later
Project Manager

I tried the patch and here are my comments:

1) I think it adds confusion, since some of the settings that may appear (to the user) to be int settings don’t use the slider, like the backlight timer.

2) The slider isn’t drawn correctly on some settings, like the contrast on h100.

Otherwise I like it.

After the discussion earlier and playing around with the mockups I made today I was tempted playing around with this patch. The attached modified version draws vertical sliders. Tried on recorder (sim) with xtal-14 and h120 with various font sizes. I made this mainly for demonstration, so the code may need some more work.

Ok, here is another modification:
- show the vertical slider if there is enough room.
- if there are only 4 lines available for text, use a horizontal slider (as a vertical slider looks a bit strange)
- if there is less than 4 lines, omit the title
- respect the statusbar setting.
Tested on h120 target, recorder (also with xtal-14) and h120 sim. Looks nice and is IMO a good compromise between being consistent and convenient.


fml2 commented on 2006-09-15 20:32

Without having tried out the patch: I think Linus is right. There are some settings which have int values (e.g. recording sample rate) but that are more naturally set through a list. And it’s very hard to decide which setting should be set in which way. And even if the devs would agree on it – it’d be still hard to explain this to the users.

i’m going to try the patch out soon, but just replying to Linus and Alex I think those values should actually be changed.
is there any real reason why the backlight (for example) setting doesnt pass the actual timeout to the code instead of an index value?
The only semi-acceptable reason I can tihnk of is that a special value is needed for on/off, but the formatter callback function can be used to display on/off instead of the spercial value (It would also decrease code size by a tiny bnit changing these because you wont need to have the options sturct with the values.)

Project Manager

There are 3 reasons:

1) The values also include “Off” and “Always on”, which aren’t integer values

2) The values aren’t evenly spaced

3) To save space in the RTC RAM

1) can be done with the formatter callback
2) using the backlight as an example… why does it not just have a max,min and any value between them is fine?
3) with a max value you still wont get close to needing all 32 bits.. 8 bits is enough to get to 512 which i would think would be plenty for most settings..

Project Manager

1) Yes

2) The backlight timer might be done like that, but the recording timesplit would be a pain to set to 24 hours when the resolution is 5 minutes. The uneven steps are for convenience.

3) what 32 bits? The current backlight timer setting uses 5 bits

I agree with you that these settings could be converted to integer settings. The question is if we want it. If we take the timesplit as an example again, I believe it is convenient for the user to not have 5-minute resolution up to the maximum of 24 hours. For example, the 01:14 and 01:20 settings are exactly matched to fit a regular CD. If we want to allow the user to set 01:14, we would need 1-minute resolution. That would make it even more painful to set the timesplit.

to get around the resolution problem we could either add a button to keep doubling the resolution, or change the res depending on how long the user had been holding down the inc/dec buttons.

I consider a slider being a graphical representation. Thus I don’t think the values need to have equal steps, so using values like 1:00, 1:14 and 1:20 doesn’t seem problematic to me. But if there are objections, why not leave such settings the way they are already?
Also, IMO a slider looks way better on sound setting values (like volume, bass, etc.) but isn’t necessary on other values (like display contrast) at all. How about using it as a graphical representation on only those sound setting values? (Ok, this will make the display inconsistent to some degree – but maybe it’s a nice option.)


Available keyboard shortcuts


Task Details

Task Editing