Rockbox

Tasklist

FS#10639 - Absolute Touchscreen Mode for Graphcal Equalizer Menu

Attached to Project: Rockbox
Opened by Carsten Schreiter (Kuma76) - Sunday, 04 October 2009, 13:58 GMT
Task Type Patches
Category User Interface
Status Unconfirmed
Assigned To No-one
Operating System Another
Severity Low
Priority Normal
Reported Version Release 3.4
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No

Details

This patch makes the graphic EQ usable in the absolute mode on touchscreen models.
Additionally I made the following changes:

* Add a menu in the touchscreen settings to select the touchscreen mode in the graphic EQ ( because in menus I prefer the grid mode, in the EQ the absolute mode is much better)

* Always try to use the UI_FONT , make the EQ filling the whole screen and add a little margin on the left and right side. In that way it can even used with fingers on a touchscreen (automatic adaption to fill the whole screen should work for all targets with EQ and LCD).

I tested on my Cowon D2 and Iriver H340 to make sure non touchscreen models stil work, both worked perfect.
This task depends upon

Comment by Maurus Cuelenaere (mcuelenaere) - Sunday, 04 October 2009, 14:46 GMT
IMHO there's no need to have settings for the touchscreen mode in different screens; grid mode is only temporary until all screens are adjusted to absolute.

Other then that, nice patch!
Comment by Carsten Schreiter (Kuma76) - Sunday, 11 October 2009, 15:15 GMT
Here is the second, of course much better version of the EQ screen in the absolute point mode.
I made the following changes:

* made the code a little more efficient
* EQ screen is always in absolute mode now, no selection menu anymore
* the cutoff frequencies have limits now. LS: 20~500 Hz, PK1: 20~2000 Hz, PK2: 500~5000 Hz, PK3: 1000~15000 Hz, HS: 5000~22040 Hz
They are necessary as the touchscreen resolution is too low for setting for example LS in a range of 20~22040 Hz.
* the setting step width of the cutoff frequencies change with the band LS: 10 Hz, PK1: 20 Hz, PK2/3: 50 Hz, HS: 100 Hz
This is again for touchscreen resolution reasons. Only the Graphic EQ menu is affected, in the list menu all bands have 10 Hz step width.
* made the slider movement a little smoother.
Comment by Rob Purchase (shotofadds) - Sunday, 11 October 2009, 16:17 GMT
This looks good, but I think usability could be improved a little:

- The concept of a "currently active" band doesn't make sense for touchscreens, and the highlighted rectangular box just makes the screen feel more crowded.
- Pressing the db/Hz/Q numbers to switch mode feels unintuitive (and it's too easy to hit the wrong thing by mistake). Maybe pressing "Edit mode" to toggle modes would be better?

If you need to, don't be afraid to break away from the existing code more - to keep things clean you could always put your code in a new eq_menu_touchscreen.c, and adjust apps/SOURCES with an #ifdef HAVE_TOUCHSCREEN. That way there's no impact on other targets, either.

Keep up the good work!
Comment by Carsten Schreiter (Kuma76) - Wednesday, 14 October 2009, 04:47 GMT
I agree to your comments. So I will do the following:

* Remove the highlighted box as it has no meaning.
* Make a kind of button bar that has an
- "Edit Mode" button to switch the mode
- "Ok" button to leave the menue
- "Cancel" button to change back to the old setings and then leave.
Sometimes I changed settings, and then felt that the old one was better but there is no way back now. So I think
a cancel button would be good to have.
* Put the code into a separate file.
* I think i wiil keep the setting value, that is actually changed, highlighted. It is not really be necessary
as we have the "Edit mode" line but in my opinion the highlighted setting makes it even easier to know were you are.

Any other comments or ideas?
Comment by Carsten Schreiter (Kuma76) - Saturday, 24 October 2009, 14:52 GMT
So here is the 3rd shot.

Basically it works like written above.
The EQ is drawn on the main screen only, the Mrobe500 remote will be blank while the graphic EQ is displayed.

Let me know what you think about it.
Comment by Carsten Schreiter (Kuma76) - Saturday, 24 October 2009, 21:21 GMT
So here is the 3rd shot.

Basically it works like written above.
The EQ is drawn on the main screen only, the Mrobe500 remote will be blank while the graphic EQ is displayed.

Let me know what you think about it.
Comment by Carsten Schreiter (Kuma76) - Saturday, 24 October 2009, 21:32 GMT
Corrected a small bug. Clicking between the 1st and 2nd band was causing weird noise.
Comment by Carsten Schreiter (Kuma76) - Sunday, 25 October 2009, 08:18 GMT
Corrected a small bug. Clicking between the 1st and 2nd band was causing weird noise.
Comment by Carsten Schreiter (Kuma76) - Sunday, 08 November 2009, 10:45 GMT
This version
* corrects some bugs
* supports viewports. So the statusbar is drawn if enabled
* shows EQ information as text on the Mrobe500 remote LCD
Comment by Carsten Schreiter (Kuma76) - Monday, 23 November 2009, 06:07 GMT
Functionality is the same as before. I just changed the code to use the same functions to draw buttons and check button
clicks like in the patch for the yes/no screen in absolute touchscreen mode ( FS#10806 ).
Comment by Carsten Schreiter (Kuma76) - Monday, 23 November 2009, 12:22 GMT
Forgot to mention that this patch requires  FS#10806 .

Loading...