This is the bug/patch tracker for Rockbox. Click here for more information.
Quick links: Bugs · Patches · Rockbox frontpage
FS#5899 - Custom List/Menu x/y coordinates and width
Attached to Project:
Rockbox
Opened by P.I.Julius (pijulius) - Tuesday, 29 August 2006, 17:23 GMT+1
Last edited by Paul Louden (Llorean) - Wednesday, 16 January 2008, 07:40 GMT+1
Opened by P.I.Julius (pijulius) - Tuesday, 29 August 2006, 17:23 GMT+1
Last edited by Paul Louden (Llorean) - Wednesday, 16 January 2008, 07:40 GMT+1
|
DetailsThis patch adds four options to the rockbox wps settings file so you can define a custom x/y coordinate for the list/menu and even a width and a number of lines.
The seetings in the theme.cfg file should look like following: listxpos: 47 listypos: 47 listlines: 9 listwidth: 210 (these are the settings for the jClix theme for e.g.) This should help people to create custom wps-es and place the menus anywhere on the screen. Bests, Julius |
This task depends upon
Closed by Paul Louden (Llorean)
Wednesday, 16 January 2008, 07:40 GMT+1
Reason for closing: Out of Date
Additional comments about closing: See task number 8457 for a viewports implementation of this being worked on, and feel free to contribute there.
Wednesday, 16 January 2008, 07:40 GMT+1
Reason for closing: Out of Date
Additional comments about closing: See task number 8457 for a viewports implementation of this being worked on, and feel free to contribute there.
* set correct width with icons and/or scrollbar displayed
* restore correct font face/display width when statusbar shown so scrolling text don't get missed up
* reset settings on new theme load
But it will crash the X5 sim immediately on start :-(
But using lcd_set_custom_width and lcd_get_custom_width
instead of display->set_custom_width and display->get_custom_width solved it
And if you use the setting "Line Selector" with "Pointer" instead of "Bar"
the pointer is displayed at the end of the menu item instead of the beginning
Changing
cursor_pos = global_settings.listxpos/6;
in list.c solved it
* Fix quickscreen bugg so it is shown correctly
* Display quickscreen functions in the right place for e.g. if the menu's/list's x coordinate is 50px the quickscreen will start from there too and it will use the list's/menu's width/height to place the other functions too
You may notice that both the icon and the path is displayed
on the wrong location.
The icon is always on pos 0,0 and the path is part of
the scrollbar which it should not be. Compared to a wps
without listxpos and listypos
I am currently trying to fix this but maybe you are faster :-)
ATTENTION: this patch depends on the multifont patches (FB 4733)
applied before at the moment
You could also create a new function that does only the custom list check to menu.c
or I can add such a function to the patch if that helps. Then any custom list check
can be done also from the "outside". Does that answer your question?
the advantage would that it is then encapsulated inside menu.c
So we should also add another function that simply returns the correct value
you are free to add any functions to this patch if you want
cause I dont know when I will have time to do it
1) The right margin of the text is now equal at any times. It's indepent of you using list title or not, icons or not, or which of the line selector types.
2) I've fixed that when you use the pointer line selector type there were some empty pixels between the icons and the text. This was caused by the though, that the line selector is right of the icons. But as it is actually left to the scrollbar, so I removed that empty spot.
3)I've made lists having an indent of the scrollbar width, even if there is no scrollbar. Now the icons aren't jumping around anymore depending of the scrollbar (this only applies when not using a list title).
Works fine with the Sansa e200 sim.
TODO: I've noticed another glitch. In lists, which don't use icons at all(such as the list where you select the line selector in the settings), show a glitch (cursor and text overlap) when you use cursor. I'm to busy to fix that now.
Please do it
Also, from what I saw in /apps/gui/list.c (compared to what I saw in the patch file), there are some changes that I couldn't track in the list of revisions. Maybe this is from old dependencies this patch had? Hopefully someone with greater skills than mine will come along soon and sync this guy. Now that album art has been committed, this might be the only patch I use in my build!
Is there anything I can do to help get this synched any faster? Haven't updated my build since album art was committed to svn...
So the viewports patch itself doesn't make this patch obsolete, but it means that this feature should be reimplemented to take advantage of the viewport feature in the LCD drivers.
The intention (discussed amongst the devs on IRC a few weeks ago) is that the list widget should be implemented using a number of viewports to contain the various elements - title, icons, scrollbar, main content and cursor (if the user is using the arrow cursor). This should simplify the code, and also allow things like moving the icons to the right-side for RTL text. It should also be possible to give the list widget a custom size/position (similar to what this patch does).
a)For compability reasons, I didn't take out the listlines stuff yet. It could be definitely better using vp->hight/font_height or something.
b)It's not extended to remote screens yet.
FS#8385). This will just get closed soon anyway.Test on real target. I'm not sure, however I noticed bad performace of my e200. Might be other patches I've applied though.