Commit graph

1052 commits

Author SHA1 Message Date
Tomer Shalev
6d80565b1b RTL support in menus
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22945 a1c6a512-1295-4272-9138-f99709370657
2009-10-05 11:43:38 +00:00
Jonathan Gordon
f06c98fec8 Fix FS#10617 (fix spotted by Teruaki Kawashima), something about the %C not working if %?C is the first tokens in the skin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22944 a1c6a512-1295-4272-9138-f99709370657
2009-10-05 10:26:06 +00:00
Jonathan Gordon
436776ebb8 redraw the AA much less frequently to save bettery life and also let skins draw over the AA...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22932 a1c6a512-1295-4272-9138-f99709370657
2009-10-05 01:01:07 +00:00
Jeffrey Goode
22933cc19c FS#10636: Quickscreen incorrect operation when menu has negative step
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22887 a1c6a512-1295-4272-9138-f99709370657
2009-10-03 12:56:16 +00:00
Bertrik Sikken
69b40e704d Clean up duplicate #includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22845 a1c6a512-1295-4272-9138-f99709370657
2009-09-27 14:46:44 +00:00
Jonathan Gordon
340f32356a new skin tag: %Sx|<english>| will display the current languages translation of the "<english>" string.
the <english> is the Source: bit in the .lang files. (must be exactly as it is there...)

checkwps cannot verify that the string is correct so make sure to use the sim to verify the string is acurate.

Also "fix" checkwps so %St|<setting>| can be accepted for the theme site


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22837 a1c6a512-1295-4272-9138-f99709370657
2009-09-26 00:58:32 +00:00
Thomas Martitz
ba8fbb0b9b Rename struct skin_albumart members to be consistent with similar members of other structs. the albumart_ prefix is redundant.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22836 a1c6a512-1295-4272-9138-f99709370657
2009-09-25 18:36:28 +00:00
Thomas Martitz
d045f59989 Redo 22825 but this time with caring about alignment.
Change coordinate members in struct skin_albumart to ints. That alone gives a tiny binsize decrease.
Change the struct layout (some reordering) to enable more efficient alignment which reclaims 4 of the 8 bytes. Since there's usually only 1 aa struct this should be a net gain.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22835 a1c6a512-1295-4272-9138-f99709370657
2009-09-25 18:36:18 +00:00
Karl Kurbjun
4eee66a4cf r22826 is causing data aborts when the wps is loaded in the parse_list function - suspected reason is an improperly aligned pointer depending on how the buffer gets setup when translating a "d".
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22827 a1c6a512-1295-4272-9138-f99709370657
2009-09-25 04:23:35 +00:00
Thomas Martitz
89041f6b4a Remove some some code in favor of a single parse_list() call.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22826 a1c6a512-1295-4272-9138-f99709370657
2009-09-25 01:43:31 +00:00
Alexander Levin
4ce1604ca3 Show the name of the setting in the WPS debug output
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22781 a1c6a512-1295-4272-9138-f99709370657
2009-09-22 09:44:40 +00:00
Jonathan Gordon
6622c605b9 add the %St setting to the debug output for checkwps/parser.... needs mroe work to make it more useful
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22780 a1c6a512-1295-4272-9138-f99709370657
2009-09-22 05:31:28 +00:00
Jens Arnold
b04c66ed29 Fix splash on charcell (was wasting 2 precious chars per line since r20870). This fixes the volume splash in wps, as it doesn't wrap anymore, but it's not a proper fix. The real problem is that the 2nd line of the default WPS updates immediately. The ultimate fix would be to get rid of the special charcell handling and use a VP in the WPS.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22775 a1c6a512-1295-4272-9138-f99709370657
2009-09-21 19:40:07 +00:00
Jonathan Gordon
05fd9ee182 Actually fix AA display... previous commit was borked
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22728 a1c6a512-1295-4272-9138-f99709370657
2009-09-18 05:45:15 +00:00
Jonathan Gordon
6d16d1cf3d FS#10602 - show the viewport label instead of an int in the debug output
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22727 a1c6a512-1295-4272-9138-f99709370657
2009-09-18 05:22:22 +00:00
Jonathan Gordon
aafeaad65f fix FS#10599 and do r22721 a slightly better way. the %C tag is internally converted to a different token for display and conditional check.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22726 a1c6a512-1295-4272-9138-f99709370657
2009-09-18 05:15:18 +00:00
Thomas Martitz
7b6265edf5 Fix a bug where the conditional use of %C (i.e. %?C) caused the album art to draw (noticed in FS#10596).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22721 a1c6a512-1295-4272-9138-f99709370657
2009-09-17 21:01:32 +00:00
Rob Purchase
5bd3b443ff Fix delay when seeking using the touchscreen by adding a pause/unpause.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22720 a1c6a512-1295-4272-9138-f99709370657
2009-09-17 20:49:34 +00:00
Thomas Martitz
c0f1c49178 Get rid of some of the code duplication from checkwps, it still duplicates a lot though.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22695 a1c6a512-1295-4272-9138-f99709370657
2009-09-13 13:40:58 +00:00
Thomas Martitz
541dd6fda5 Remove some trailing whitespaces in in the skin engine files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22694 a1c6a512-1295-4272-9138-f99709370657
2009-09-13 12:24:14 +00:00
Thomas Martitz
894c809108 Fix/band aid the freeze when %V is the first thing (i.e. in line 1) in a .wps (see FS#10596).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22693 a1c6a512-1295-4272-9138-f99709370657
2009-09-13 12:15:08 +00:00
Frank Gevaerts
65fff8bdd8 Increase skin buffer on charcell displays so it's actually big enough to load a wps file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22681 a1c6a512-1295-4272-9138-f99709370657
2009-09-11 18:02:52 +00:00
Teruaki Kawashima
246e38e937 Initialize token before using.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22678 a1c6a512-1295-4272-9138-f99709370657
2009-09-11 14:33:32 +00:00
Jonathan Gordon
8761d9e240 Hopefully make the wps debug info more understandable... display tokens the same way they are displayed... i.e viewports->lines->sublines->tokens
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22672 a1c6a512-1295-4272-9138-f99709370657
2009-09-11 06:03:24 +00:00
Jonathan Gordon
d2645566f7 fix the first subline not displaying properly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22668 a1c6a512-1295-4272-9138-f99709370657
2009-09-09 15:42:20 +00:00
Thomas Martitz
1f10f99dc0 Fix/commit FS#10595. A (sub)line could be part of the previous viewport due to a off-by-one bug in the indexing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22662 a1c6a512-1295-4272-9138-f99709370657
2009-09-08 16:34:51 +00:00
Thomas Martitz
32340186c7 Fix viewport_set_defaults giving the wrong dimensions if the ui vp is overridden (as done in plugins atm), and notify other code if the ui vp was overridden.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22657 a1c6a512-1295-4272-9138-f99709370657
2009-09-07 21:52:12 +00:00
Thomas Martitz
649b50cba1 Set list_need_reinit to false somewhere too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22652 a1c6a512-1295-4272-9138-f99709370657
2009-09-07 17:40:43 +00:00
Thomas Martitz
2eb1cb6f82 Fix buttonbar handling/theme changed handling in lists.
The lists need to copy to a local parent if a list passes NULL as parent in the init. This was before the commit of custom ui vp, but I removed it since I (wrongly) thought using the ui vp as parent would be fine. Let the viewportmanager fire a event in case when a theme-related setting changed and simply the handling in the lists code.
However the buttonbar handling didn't work before anyway, since list code didn't know if the buttonbar was active (it asked a variable which was always false....).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22651 a1c6a512-1295-4272-9138-f99709370657
2009-09-07 17:37:06 +00:00
Jonathan Gordon
18286d3cc5 stupid yellow.... I'm going to bed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22648 a1c6a512-1295-4272-9138-f99709370657
2009-09-07 07:58:55 +00:00
Jonathan Gordon
8bf50ecf48 add a bit more debug info for skins... show the subimage id in the display image token's debug line
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22647 a1c6a512-1295-4272-9138-f99709370657
2009-09-07 07:51:58 +00:00
Jonathan Gordon
fe2f042670 rework AA load/display handling in the skins to get them working in viewports again
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22646 a1c6a512-1295-4272-9138-f99709370657
2009-09-07 02:36:56 +00:00
Jonathan Gordon
ef7018a7ff fix red :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22643 a1c6a512-1295-4272-9138-f99709370657
2009-09-06 16:54:43 +00:00
Jonathan Gordon
9f4f5dbc26 Make the e200 compile the vled for the sim... other targets are probably doing the same thing so find out which.. commit will be immediatly followed to fixd red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22642 a1c6a512-1295-4272-9138-f99709370657
2009-09-06 16:54:04 +00:00
Thomas Martitz
c17037a802 Factor out/generalise the function that checks whether a point is within a viewport to, and use it in the wps' touchregion code. This corrects the check that was done there.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22638 a1c6a512-1295-4272-9138-f99709370657
2009-09-05 23:57:09 +00:00
Thomas Martitz
a17d06ccc3 Improve and simplify touchscreen handling of the quickscreen in absolut mode - and implement handling for the top item.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22637 a1c6a512-1295-4272-9138-f99709370657
2009-09-05 23:32:16 +00:00
Thomas Martitz
9c938a23b9 Don't forget the touchscreen targets!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22636 a1c6a512-1295-4272-9138-f99709370657
2009-09-05 19:04:23 +00:00
Thomas Martitz
4034e0b47f Put the quickscreen viewports onto the stack (saving a tiny bit of ram), and simplify the preparing and drawing functions a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22634 a1c6a512-1295-4272-9138-f99709370657
2009-09-05 18:52:44 +00:00
Thomas Martitz
dee9277a09 Fix FS#9842 by stopping scrolling before leaving the yesno screen.
Seems there are more of this scrolling problems around. In this case it's a rather old bug actually.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22633 a1c6a512-1295-4272-9138-f99709370657
2009-09-05 18:10:41 +00:00
Thomas Martitz
42e6638420 Fix bug in viewports preparation (screen.lcdwidth() isn't really proper for this in times of custom ui vp), and stop all scrolling before exiting (fixes FS#10584).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22631 a1c6a512-1295-4272-9138-f99709370657
2009-09-05 14:38:29 +00:00
Thomas Martitz
3c47d94668 Alright, it seems I got scroll_stop() wrong. Using the viewport that's set before doing all the puts_scroll* calls seems to work.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22622 a1c6a512-1295-4272-9138-f99709370657
2009-09-04 16:34:55 +00:00
Jonathan Gordon
d466cb9beb minor line handling fixes, be smarter (well dumber actually) about increasing the size of the tokens array, that loop isnt the only place the data->num_tokens variable gets increased... also add one last WPS_NO_TOKEN token to the end to make sure we dont accidently overrun into the next skin on the last line of a skin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22618 a1c6a512-1295-4272-9138-f99709370657
2009-09-04 06:17:38 +00:00
Karl Kurbjun
25123570c7 Fix STRIDE macro for multiscreen and add stride support for picture lib.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22615 a1c6a512-1295-4272-9138-f99709370657
2009-09-04 00:46:24 +00:00
Jonathan Gordon
f6025186fd stop a potential crash caused by r22438
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22614 a1c6a512-1295-4272-9138-f99709370657
2009-09-04 00:41:38 +00:00
Thomas Martitz
2ab627d309 Change r22610 a bit. The new parent viewport isn't really suitable.
The new parent might be smaller than the previous one, causing the old list to not stop scrolling. Full-screen stop scrolling isn't correct either though, so we pick the currnet ui viewport to stop scrolling.
This was actually a bug (attempted to fix in r22610) discovered in the custom statusbar patch, where the lists stopped the statusbar text from scrolling.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22613 a1c6a512-1295-4272-9138-f99709370657
2009-09-04 00:40:50 +00:00
Thomas Martitz
af2dcbb8e1 Don't stop scrolling for the whole display, but only in the actual list parent viewport.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22610 a1c6a512-1295-4272-9138-f99709370657
2009-09-03 13:38:52 +00:00
Jonathan Gordon
8f76e7ff8f rename wps_[sub]line to skin_[sub]line
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22606 a1c6a512-1295-4272-9138-f99709370657
2009-09-02 06:23:01 +00:00
Jonathan Gordon
2111c105c0 fix player's red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22603 a1c6a512-1295-4272-9138-f99709370657
2009-09-02 03:02:00 +00:00
Jonathan Gordon
8cb74438bc Almost the last of the skin ram wastage fixing... This one moved the line/subline handling into the alloced buffer and links them more sensibly with their viewports.
now it works something like this: a skin is a list of viewports, each viewport has a list of lines, each line is a list of sublines, each subline has an *index* of its first and last tokens... 


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22602 a1c6a512-1295-4272-9138-f99709370657
2009-09-02 02:55:33 +00:00
Alessio Lenzi
9b700b2861 Added a missing line for spoken QUICKSCREEN_TOP item in Quick Screen.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22591 a1c6a512-1295-4272-9138-f99709370657
2009-09-01 09:40:32 +00:00
Karl Kurbjun
7bb7c5f0cc Add stride defines to support vertical strides
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22546 a1c6a512-1295-4272-9138-f99709370657
2009-08-29 19:31:29 +00:00
Thomas Martitz
dd5789b9b9 Respect UI viewport per screen in viewport_set_defaults() also.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22539 a1c6a512-1295-4272-9138-f99709370657
2009-08-29 16:36:40 +00:00
Teruaki Kawashima
5b2a599d63 fix FS#10465 and return GO_TO_ROOT instead of SYS_USB_CONNECTED in gui_wps_show.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22538 a1c6a512-1295-4272-9138-f99709370657
2009-08-29 16:25:04 +00:00
Thomas Martitz
90a29dd611 Make UI viewport handling more multiscreen aware and bring a break; accidentally back lost in a previous commit (r22485).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22537 a1c6a512-1295-4272-9138-f99709370657
2009-08-29 15:46:32 +00:00
Thomas Martitz
e454a39852 Quickscreen: 4th item
This adds a 4th top item to the quickscreen. It's as configurable as the existing three items.
This patch goes along with optimisations for small screens for better displaying of all four items. 14px font is very usable on a 64px height display for example.
Left and Top items go through the items in the opposite direction, so that you can mirror a setting and toggle through it in both directions.
Default item is party mode, as it's target independant.

Flyspray: FS#9706

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22532 a1c6a512-1295-4272-9138-f99709370657
2009-08-29 14:42:03 +00:00
Thomas Martitz
3598eb02d7 Do some #ifdef'ing to make the Player happy.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22520 a1c6a512-1295-4272-9138-f99709370657
2009-08-27 17:55:05 +00:00
Thomas Martitz
af967d77d3 Fix skin engine calling wps code to draw the statusbars (add a pointer to viewportmanager-suitable statusbar values, which are the same for all screens), and re-arrange statusbar related code slightly. No functional change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22514 a1c6a512-1295-4272-9138-f99709370657
2009-08-26 00:06:27 +00:00
Bertrik Sikken
3460ef3596 Make sure that skin_buffer.c #includes its own skin_buffer.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22497 a1c6a512-1295-4272-9138-f99709370657
2009-08-24 13:40:37 +00:00
Thomas Martitz
5850207d33 Slightly change parts of the previous commit to reuse existing code, and enforce enum statusbar_values instead of just int,
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22485 a1c6a512-1295-4272-9138-f99709370657
2009-08-24 00:03:59 +00:00
Thomas Martitz
19f44a61cf Fix redraw issues when the statusbar setting was changed with an UI viewport. Now the old statusbar area is cleared upon changing the setting.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22484 a1c6a512-1295-4272-9138-f99709370657
2009-08-23 23:44:31 +00:00
Jonathan Gordon
3aa738fe43 hopefully get the widecabbie theme going again... temporary fix only though
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22474 a1c6a512-1295-4272-9138-f99709370657
2009-08-23 16:43:55 +00:00
Maurus Cuelenaere
94419e9a62 Touchscreen list handling: use icon width instead of scrollbar width for the 'ignoring' zone + correct comment that shouldn't be true anymore (and never was AFAIK)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22469 a1c6a512-1295-4272-9138-f99709370657
2009-08-22 23:35:27 +00:00
Maurus Cuelenaere
4ce82b9dd1 Touchscreen list handling: ignore presses close to the scrollbar when it's on the right, this is similar as how it's handled when the scrollbar is on the left (icons) and improves user experience due to touchscreen dead zones.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22467 a1c6a512-1295-4272-9138-f99709370657
2009-08-22 22:48:03 +00:00
Maurus Cuelenaere
07b2708892 Touchscreen list handling: fix issue where scrolling with the scrollbar could bring up the context menu for an item
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22465 a1c6a512-1295-4272-9138-f99709370657
2009-08-22 21:46:02 +00:00
Maurus Cuelenaere
876db6c2fc Fix/hack checkwps + add Onda VX747/VX777 targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22451 a1c6a512-1295-4272-9138-f99709370657
2009-08-21 18:15:20 +00:00
Nils Wallménius
3200d04d75 Make the formatter functions used by the settings return a pointer to avoid usless copying of lang strings, this brought with it a long chain of const correctness and a few random cleanups
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22440 a1c6a512-1295-4272-9138-f99709370657
2009-08-20 16:47:44 +00:00
Thomas Martitz
e510de1b35 Move handling of "rockbox_default.[r]wps" into wps.c, out of the skin engine (which should be as generic as possible).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22438 a1c6a512-1295-4272-9138-f99709370657
2009-08-20 14:29:03 +00:00
Jonathan Gordon
5b349e3cfa update the display after getting a bit too close to the touchscreen instead of just asking it nicely to change volume!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22436 a1c6a512-1295-4272-9138-f99709370657
2009-08-20 04:07:27 +00:00
Nils Wallménius
4f87976677 Slight cleanup in lcd.h: kill fixme and remove useless include, add some includes elsewhere and add a stub for sims instead of ifdef
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22431 a1c6a512-1295-4272-9138-f99709370657
2009-08-19 21:48:17 +00:00
Alexander Levin
23e534decf Delete the trivial comment
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22426 a1c6a512-1295-4272-9138-f99709370657
2009-08-19 12:38:16 +00:00
Alexander Levin
07d0bfd101 Combine the settings for scrollbar on/off and its position into one with three possible values
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22425 a1c6a512-1295-4272-9138-f99709370657
2009-08-19 12:36:40 +00:00
Jonathan Gordon
afd8c2dfd1 hopefully fix the yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22421 a1c6a512-1295-4272-9138-f99709370657
2009-08-19 05:14:58 +00:00
Jonathan Gordon
c552d08573 get the skin debug output working again, add a line to say how much of the buffer is being used to aid themers... let me know if this gets close to full on any targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22420 a1c6a512-1295-4272-9138-f99709370657
2009-08-19 05:07:12 +00:00
Jonathan Gordon
98756fe492 move the statically allocated tokens array into the skin buffer. this is done with a little bit of magic with the buffer... explanation in the comments but breifly, tokens + images are stored at the front of the buffer, everything else (constant sizes) are stored at the back, the 2 ends meet when the buffer is full.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22418 a1c6a512-1295-4272-9138-f99709370657
2009-08-19 04:19:08 +00:00
Jonathan Gordon
2492e258fa conditional viewports are allowed to share labels.. so make sure they are all toggled with %xd<label>
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22417 a1c6a512-1295-4272-9138-f99709370657
2009-08-19 01:52:52 +00:00
Maurus Cuelenaere
ae901c2e50 Scrollbar position: only update it when exiting the menu + FS#10539 by Alexander Levin (change the order of Left/Right)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22414 a1c6a512-1295-4272-9138-f99709370657
2009-08-18 22:42:37 +00:00
Jonathan Gordon
dab7e16176 store the image label instead of a number so debug output is actually useful when %xd is used witout a coresponding %xl
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22404 a1c6a512-1295-4272-9138-f99709370657
2009-08-18 07:17:51 +00:00
Jonathan Gordon
36ca4967e0 move viewports into the skin buffer, no more viewport limit on the skin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22403 a1c6a512-1295-4272-9138-f99709370657
2009-08-18 05:30:59 +00:00
Karl Kurbjun
f451108fa8 M:Robe 500: Increase the max icon size.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22393 a1c6a512-1295-4272-9138-f99709370657
2009-08-18 00:53:27 +00:00
Maurus Cuelenaere
daaecb987c Add setting to position the scrollbar on the left or right
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22390 a1c6a512-1295-4272-9138-f99709370657
2009-08-17 23:36:49 +00:00
Maurus Cuelenaere
567d83e6be FS#10534: Make scrollbar width variable through a setting (useful for touchscreen targets)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22387 a1c6a512-1295-4272-9138-f99709370657
2009-08-17 22:41:22 +00:00
Maurus Cuelenaere
8d013f5557 Skin engine: add "pitch" action to touch regions
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22375 a1c6a512-1295-4272-9138-f99709370657
2009-08-17 12:46:21 +00:00
Jonathan Gordon
91aa512754 fix the %xd<id> tag parser to complain if you try to display an image it hasnt loaded yet
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22373 a1c6a512-1295-4272-9138-f99709370657
2009-08-17 07:16:57 +00:00
Thomas Martitz
be8d654509 Remove obsolete IMG_BUFSIZE #define.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22368 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 23:27:00 +00:00
Thomas Martitz
f1c704e4cf Fix ret for buttonbar targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22366 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 22:28:25 +00:00
Thomas Martitz
4c48b59be8 User definable UI viewport, to be able to restrict the UI into a viewport for all bitmap displays.
Flyspray: FS#8799

This will allow for pretty themes, for example those with nice glass effects on their backdrops (some might argue they're wasting screen space but it's upto them),
as well as allowing for future background WPS updates in the main UI.

Plugins are not converted yet, they simply use the full screen. Ideally, any plugin that does *not* want the UI viewport, should take care of that itself (i.e. plugins should normally use the UI viewport).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22365 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 22:20:11 +00:00
Jonathan Gordon
b395f89a31 remove an unused #define
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22363 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 21:30:11 +00:00
Jonathan Gordon
271643c585 remove the limit of touch regions in touchscreen skins
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22361 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 21:22:57 +00:00
Thomas Martitz
576793a637 Recalibrate the skin buffer size calculation so that targets with remote get a reasonable extra buffer (depending on the remote) instead of just doubling it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22352 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 19:15:17 +00:00
Jonathan Gordon
c20801b712 fix player
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22351 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 18:32:25 +00:00
Jonathan Gordon
18a8e529b5 more wps->skin engine work..
start redoing memory management in the skins to use a single larger buffer instead of lots of arrays for things like images and progressbars.
This commit removes the limit on the amount of progressbars allowed on the screen, still 1 per viewport, but unlimited otherwise(!)
Also a larger buffer for remote targets, same size for non-remote targets but very easy to make it bigger (technically removed the 52(?) image limit in skins, except still limited to 1 char identifiers)
Unlimited "string" tokens now (limit was 1024 which was rediculously wasteful)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22350 a1c6a512-1295-4272-9138-f99709370657
2009-08-16 18:23:00 +00:00
Thomas Martitz
279ef752cb Make quickscreen items enum name lower-case, as per docs/CONTRIBUTING.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22291 a1c6a512-1295-4272-9138-f99709370657
2009-08-13 14:39:31 +00:00
Thomas Martitz
20b9bc5c0a Make gui_syncquickscreen_run() static as it's not used anywhere.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22290 a1c6a512-1295-4272-9138-f99709370657
2009-08-13 14:27:06 +00:00
Thomas Martitz
7b6e166c77 Protect viewport.h against multiple inclusion.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22274 a1c6a512-1295-4272-9138-f99709370657
2009-08-12 15:34:41 +00:00
Alexander Levin
3bfc0e7a7e Remove unneeded symbols and improve the comment to the VP parsing function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22266 a1c6a512-1295-4272-9138-f99709370657
2009-08-12 13:37:07 +00:00
Thomas Martitz
e4bdc08d0c Fix FS#10505 - "Background changes to inverted when cleared" as well as a problem that lets the viewport parser reject correct WPSes, both introduced by r22222
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22264 a1c6a512-1295-4272-9138-f99709370657
2009-08-12 13:04:12 +00:00
Jonathan Gordon
1c0aeb18ca r22135 overwrote mcuelenaere's changes in r22068 to add slider-type regions for the touchscreen... so bring them back (spotted by kkurbjun)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22234 a1c6a512-1295-4272-9138-f99709370657
2009-08-10 03:48:27 +00:00
Thomas Martitz
a1b0e165cc Don't set the drawmode twice and simplify two cases in viewport_parse_viewport.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22227 a1c6a512-1295-4272-9138-f99709370657
2009-08-09 18:44:49 +00:00
Thomas Martitz
f909428321 Fix the yellows.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22225 a1c6a512-1295-4272-9138-f99709370657
2009-08-09 17:47:12 +00:00
Thomas Martitz
9f3fc27be4 Fix player and greyscale reds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22224 a1c6a512-1295-4272-9138-f99709370657
2009-08-09 17:39:39 +00:00
Jonathan Gordon
dc4e90341c r22135 overwrote mcuelenaere's changes in r22068 to add slider-type regions for the touchscreen... so bring them back (spotted by kkurbjun)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22223 a1c6a512-1295-4272-9138-f99709370657
2009-08-09 17:30:05 +00:00
Thomas Martitz
9bd7b23e99 Factor out WPS' %V parsing function into viewport.c, in preperation of customlist. No functional change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22222 a1c6a512-1295-4272-9138-f99709370657
2009-08-09 16:16:55 +00:00
Bertrik Sikken
d767883a41 Various files: make functions static if they're local or make sure there is a proper #include if not
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22184 a1c6a512-1295-4272-9138-f99709370657
2009-08-06 09:28:25 +00:00
Bertrik Sikken
0307cd16a0 Remove some unused #includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22183 a1c6a512-1295-4272-9138-f99709370657
2009-08-06 08:20:06 +00:00
Jonathan Gordon
3790897189 more wps->skin moving/renaming
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22180 a1c6a512-1295-4272-9138-f99709370657
2009-08-06 04:33:35 +00:00
Thomas Martitz
857741419c Move this call a bit up so that wpses without backdrop show none properly (the main backdrop).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22179 a1c6a512-1295-4272-9138-f99709370657
2009-08-06 01:08:10 +00:00
Thomas Martitz
31d709f9bb Correct yet another typo causing reds and greater shame on me.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22178 a1c6a512-1295-4272-9138-f99709370657
2009-08-06 00:48:08 +00:00
Thomas Martitz
442e791c71 Fix iaudio reds and crazy deltas, both caused by stupid typos.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22177 a1c6a512-1295-4272-9138-f99709370657
2009-08-06 00:37:52 +00:00
Thomas Martitz
4764ee04c9 Add backdrop functions to the multiscreen api and add a enum backdrop_type parameter for different backdrops (main, wps), symplifying calls and removing dozens of #ifdefs (stubs added for non-backdrop displays that can't do backdrops).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22176 a1c6a512-1295-4272-9138-f99709370657
2009-08-06 00:14:40 +00:00
Thomas Martitz
218b31272e Remove the wrapper around the wrapper (wps_data_load) and handle loading hardcoded wps in case of a broken file directly in wps.c.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22146 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 22:39:27 +00:00
Thomas Martitz
cc05424e44 Fix reds for IAP and a missing #include.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22141 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 15:46:21 +00:00
Thomas Martitz
3b75c86d74 A bit mroe wps/skin engine cleanup so that the structs the wps uses can be static:
-add wrappers wps_data_load() and wps_data_init() so that other code doesn't need the structs for that
-change (and rename) gui_sync_wps_uses_albumart() to take points to be filled as parameter to get the AA size of a wps

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22139 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 15:06:30 +00:00
Jonathan Gordon
0ce5b3296f one more add which didnt get added
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22137 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 05:06:26 +00:00
Jonathan Gordon
b5442f8752 these didnt get renamed for some reason
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22136 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 04:57:43 +00:00
Jonathan Gordon
3e7444ff87 part two of the grand overall wps/skinning engine cleanup work:
* rename wps_engine to skin_engine as that was agreed on
* rename music_screen back to wps
* clean up the skin display/update functions a bit
* make skin_data_load setup the hardcoded default if a skin cant be loaded for whatever reason instead of doing it when it is first displayed

ignore any gui_wps or wps_ or gwps_ nameing in skin_engine/ ... these will be renamed as this work gets finished


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22135 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 04:43:34 +00:00
Thomas Martitz
85ece84b1c Remove various ABS() definitions with a single one using typeof (if using gcc) to avoid multiple evaluations of the input expressions. Speex still uses its own as I didn't want to change this imported code too much.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22129 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 01:38:58 +00:00
Nils Wallménius
0a51d3915c Remove redundant definitions of SCROLLBAR_WIDTH
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22114 a1c6a512-1295-4272-9138-f99709370657
2009-08-02 15:44:40 +00:00
Teruaki Kawashima
221cae987f fix page up/down in list (FS# 10435).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22082 a1c6a512-1295-4272-9138-f99709370657
2009-07-29 13:45:10 +00:00
Jonathan Gordon
74d4d0db0c this file isnt used anymore and should have been removed with the rest of the cleanup
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22069 a1c6a512-1295-4272-9138-f99709370657
2009-07-27 15:47:32 +00:00
Maurus Cuelenaere
95c25d6d27 Touchscreen targets: add basic progress bar & volume handling
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22068 a1c6a512-1295-4272-9138-f99709370657
2009-07-27 13:27:38 +00:00
Jonathan Gordon
5e5fc64cb2 Start of some apps/ and wps cleanup work... Move everything related to the actual drawing of the wps into apps/gui/wps_engine, things related to the actual screen are in apps/gui/music_screen.c (names are temporary unless noone comes up with anything better)
No real code changes.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22062 a1c6a512-1295-4272-9138-f99709370657
2009-07-27 07:21:05 +00:00
Jonathan Gordon
eb0061411d more cuesheet cleanup. pass the cuesheet into cue functions so they dont have to call audio_current_track()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22020 a1c6a512-1295-4272-9138-f99709370657
2009-07-24 01:13:30 +00:00
Magnus Holmgren
06d51630c1 Fix possible null pointer dereference in cuesheet handling. Causes problems in the simulator.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22015 a1c6a512-1295-4272-9138-f99709370657
2009-07-23 15:20:18 +00:00
Jonathan Gordon
ecd4d8870e this file also...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22013 a1c6a512-1295-4272-9138-f99709370657
2009-07-23 05:24:42 +00:00
Thomas Martitz
5c9fe52629 Commit part of FS#9873 - Utilise buttons for playlisting
It adds a shortcut (combo or button) to directly go from the wps to the playlist viewer. The combos could possibly be improved on some targets, but I tried to keep a tad bit of consistency (was hardly possible).
I also added a corresponding touchscreen region and adapted cabbiev2.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22003 a1c6a512-1295-4272-9138-f99709370657
2009-07-22 22:10:25 +00:00
Thomas Martitz
23e46b3d98 touchscreen regions:
a) check for trailing '|' so that it doesn't match wrong strings (a not-yet-existing "playlist" would match the existing "play")
b) don't recalculate the array length in each iteration

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21998 a1c6a512-1295-4272-9138-f99709370657
2009-07-22 21:14:47 +00:00
Jonathan Gordon
24b136f62d rework cuesheet support:
swcodec: search for a .cue during buffering (with the possibility of adding embedded cuesheets later)
hwcodec: search for a .cue when the id3 info for the current track is requested for the first time (disk should be spining so non issue)

major beenfit from this is simplofy cuesheet handling code a bit... if mp3entry.cuesheet != NULL then there is a valid cuesheet.. no need to worry about if its enabled and preloaded.
There is the possibility of putting the next/prev subtrack handling inside the playback code (as well as the id3 updating stuff (see FS#9789 for more info), but thats probably not a good idea.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21978 a1c6a512-1295-4272-9138-f99709370657
2009-07-20 05:18:18 +00:00
Nils Wallménius
3d4701a6e4 FS#10080
* Move strncpy() from core to the pluginlib
* Introduce strlcpy() and use that instead in most places (use memcpy in a few) in core and some plugins
* Drop strncpy() from the codec api as no codec used it
* Bump codec and plugin api versions


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21863 a1c6a512-1295-4272-9138-f99709370657
2009-07-14 13:57:45 +00:00
Alexander Levin
23ea8a53a1 Slightly reduce the bin size by using ushort instead of int in arrays
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21840 a1c6a512-1295-4272-9138-f99709370657
2009-07-13 14:48:02 +00:00
Alexander Levin
f448fa4655 Correctly compute the array size regardless of the element type
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21839 a1c6a512-1295-4272-9138-f99709370657
2009-07-13 14:20:39 +00:00
Alexander Levin
76e6291780 Unify semitone and cent macros and make the formula a bit more obvious
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21814 a1c6a512-1295-4272-9138-f99709370657
2009-07-12 17:14:01 +00:00
Alexander Levin
7765158513 Fix red in bootloaders
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21782 a1c6a512-1295-4272-9138-f99709370657
2009-07-11 17:16:23 +00:00
Alexander Levin
cc7c665d9b Improvements to the pitch screen UI (FS#10359 by David Johnston)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21781 a1c6a512-1295-4272-9138-f99709370657
2009-07-11 16:46:19 +00:00
Andrew Mahone
1bc67c81b6 Fix type mismatch warnings and errors exposed when building with EABI toolchain.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21769 a1c6a512-1295-4272-9138-f99709370657
2009-07-11 00:22:26 +00:00
Thomas Martitz
2ad5e244c7 Correct another small typo in a comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21746 a1c6a512-1295-4272-9138-f99709370657
2009-07-10 16:27:24 +00:00
Alexander Levin
37c7a67b47 Fix a typo
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21741 a1c6a512-1295-4272-9138-f99709370657
2009-07-10 12:22:30 +00:00
Thomas Martitz
989ed2be01 Fix a few comments in gwps.c.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21740 a1c6a512-1295-4272-9138-f99709370657
2009-07-10 11:53:15 +00:00
Jonathan Gordon
a06f6eedae cleanup the remote+main statusbar handling a bit, and fix the bug where the remote wps might reserve the space for the statusbar even if its disabled
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21709 a1c6a512-1295-4272-9138-f99709370657
2009-07-08 00:51:03 +00:00
Jonathan Gordon
5931c2a82a fix yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21668 a1c6a512-1295-4272-9138-f99709370657
2009-07-05 18:30:00 +00:00
Jonathan Gordon
f1034e00f6 FS#10406 - split the statusbar setting into one for each display, and allow the bar to be at the top or bottom of the display
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21665 a1c6a512-1295-4272-9138-f99709370657
2009-07-05 18:07:58 +00:00
Jonathan Gordon
0e445fcef6 Fix the bug where the short-long fwd/back action would ffwd/rewind the next folder (consult the manual if that makes no sense)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21619 a1c6a512-1295-4272-9138-f99709370657
2009-07-03 05:08:33 +00:00
Steve Bavin
f96f623090 Oops.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21470 a1c6a512-1295-4272-9138-f99709370657
2009-06-22 19:51:02 +00:00
Steve Bavin
40d9b218e5 Allow use of timestretch with semitones in the pitchscreen. Rename variables to clarify the meaning of 'speed'.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21468 a1c6a512-1295-4272-9138-f99709370657
2009-06-22 18:52:14 +00:00
Alexander Levin
8589fcb3e3 Merge the "Replaygain Off" option into the replaygain type; eliminate the "On/Off" setting (FS#10356). All WPS tags should work as before.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21414 a1c6a512-1295-4272-9138-f99709370657
2009-06-20 21:13:24 +00:00
Steve Bavin
cbbf032c1b Display speed as relative to real-time, not timestretch amount.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21375 a1c6a512-1295-4272-9138-f99709370657
2009-06-20 10:36:07 +00:00
Alexander Levin
02a3740596 Slightly rearrange statements. No functional change but RAM and binary are reduced.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21350 a1c6a512-1295-4272-9138-f99709370657
2009-06-19 11:23:02 +00:00
Marianne Arnold
49c9ab8120 Restore the ACTION_REDRAW case as it was before r20661 (with a slight change as suggested by Thomas Martitz). Without it you could get trapped in the WPS on targets with software hold as disabling hold again did not work correctly. Also fix(ed) typos...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21325 a1c6a512-1295-4272-9138-f99709370657
2009-06-18 13:50:11 +00:00
Steve Bavin
d6ad019af3 Renamed routines and changed comments for clarity.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21309 a1c6a512-1295-4272-9138-f99709370657
2009-06-16 07:10:05 +00:00
Jens Arnold
b22e604a06 Fix the charcell viewport defaults. The statusbar is offscreen on charcell. This fixes e.g. the yesno screen when deleting files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21267 a1c6a512-1295-4272-9138-f99709370657
2009-06-12 22:22:19 +00:00
Steve Bavin
fb2380790e FS#8894 - Add time stretching feature to all SWCODEC targets - the current algorithm is best for spoken word.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21258 a1c6a512-1295-4272-9138-f99709370657
2009-06-12 07:20:50 +00:00
Thomas Martitz
be214c9445 Fix a problem that the statusbar was redrawn to late and not really in sync with the lists when changing loading a (theme) .cfg or changing the colors witht the color picker. Now both, the statusbar and the tree lists are redrawn instantly after settings_apply() (even before the "Theme loaded" splash).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21222 a1c6a512-1295-4272-9138-f99709370657
2009-06-08 18:19:43 +00:00
Jens Arnold
1d6df54df2 Convert a number of places in core and plugins to use the BIT_N() macro instead of 1<<n. Speeds up things on SH1, and also reduces core binsize. Most notable speedups: 1 bit lcd driver: drawpixel +20%, drawline + 27%, hline +5%; jpeg viewer: +8% for 1/8 scaling. Other targets are unaffected.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21205 a1c6a512-1295-4272-9138-f99709370657
2009-06-07 21:27:05 +00:00
Thomas Martitz
6de2f14b23 Fix FS#10231. The gwps_leave_wps() call at powering down is completely unnecessary anyway as it's meant to prepare the displaying of the next screen, which isn't needed when there's no next screen.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21067 a1c6a512-1295-4272-9138-f99709370657
2009-05-24 16:09:00 +00:00
Bertrik Sikken
ab222c1705 Simplify some redundant boolean expressions
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21013 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 14:15:24 +00:00
Bertrik Sikken
2dc2054319 Remove some unused declarations
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21010 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 12:32:26 +00:00
Bertrik Sikken
0023943439 Fix duplicate #includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20977 a1c6a512-1295-4272-9138-f99709370657
2009-05-17 14:50:19 +00:00
Bertrik Sikken
8d5dbf4c14 Clean up some unused #includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20975 a1c6a512-1295-4272-9138-f99709370657
2009-05-17 11:56:06 +00:00
Jonathan Gordon
2172c91473 get repeat/hold actions working on the touchscreen WPS. prepending an action with & means that this will only get triggered if you hold down the area. cabbie WPS updated so the fwd/rwd icons will do that when held or skip fwd/back if just pressed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20974 a1c6a512-1295-4272-9138-f99709370657
2009-05-17 06:25:18 +00:00
Marianne Arnold
e435e4d976 New 'clock present' WPS tag: The tag checks for the presence of the clock hardware and can be used unconditionally (returning a 'c') or in a conditional. You can specify what to display if a target has the clock (the true case) and an alternative for targets without. This can be useful for e.g. the greyscale 160x128 WPSs or the Archos ones which work on players with and without the hardware. - Add the new tag to the WPS tag description in the manual. Change the headline to the less technical 'Time and Date' as per the discussion in IRC.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20961 a1c6a512-1295-4272-9138-f99709370657
2009-05-16 11:22:41 +00:00
Thomas Martitz
dad292c3ef Fix splash on greyscale (was showing only a black or grey box, no text) by reverting to lcd_set_foreground(). That does a bit more on greyscale than just setting the current's viewports fg_pattern :/
It will still only apply to the viewport used for splash, so no need to restore the old foreground.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20944 a1c6a512-1295-4272-9138-f99709370657
2009-05-15 15:27:32 +00:00
Thomas Martitz
f4aa7428ea Fix FS#10197 by setting the viewport before calculating the string size.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20943 a1c6a512-1295-4272-9138-f99709370657
2009-05-15 14:53:06 +00:00
Jonathan Gordon
13cc654cea More touchscreen additions, quickscreen, browser, context menu, skip fwd/back buttons in the mr500 wps (a "button bar" will pop up for 2.5s when the screen is touched.)
icons by Johannes Voggenthaler
pitch screen icon is there but not used because that screen isnt fixed for the touhscreen yet


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20939 a1c6a512-1295-4272-9138-f99709370657
2009-05-15 06:02:50 +00:00
Jonathan Gordon
c1267dc700 allow the user to change the shuffle and repeat modes from the touchscreen, update the mr500 default wps to show how to do it (hint, press the shuffle/rep icon)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20937 a1c6a512-1295-4272-9138-f99709370657
2009-05-15 05:36:16 +00:00
Jonathan Gordon
d48f1a0a45 get the quickscreen working on the mr500. hold "mode" on the remote to get to it, then you can use the 4 directions on the remote, or the touchscreen to change the values. "mode" will exit, as will pressing in the top or middle of the main screen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20935 a1c6a512-1295-4272-9138-f99709370657
2009-05-15 05:08:28 +00:00
Bertrik Sikken
09085a30f6 Remove unneeded #include "backdrop.h"
Remove unneeded #include "statusbar.h"


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20891 a1c6a512-1295-4272-9138-f99709370657
2009-05-09 18:09:14 +00:00
Thomas Martitz
c91e73e922 Convert splashes to viewports for bitmap targets and only draw/update the viewport that is needed instead of the whole screen.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20870 a1c6a512-1295-4272-9138-f99709370657
2009-05-08 00:28:33 +00:00
Karl Kurbjun
2677886bc3 Keep the quickscreen from crashing the player with a divide by 0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20854 a1c6a512-1295-4272-9138-f99709370657
2009-05-06 02:17:04 +00:00
Thomas Martitz
9adc03949f Revert r20786 as it caused problems with alternating sublines (they need to be reset if gui_wps_refresh() wasn't called for some time, since the subline timeout gets confused). Also, it needs to be set to get the update, since do_full_update will be set to false after track change no matter if an update happened.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20812 a1c6a512-1295-4272-9138-f99709370657
2009-04-27 18:57:51 +00:00
Thomas Martitz
29cf2e148b Setting do_full_update isn't actually needed, since the track changed event will set it if needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20786 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 19:23:40 +00:00
Jonathan Gordon
0eb5dc649f beginings of a working touchscreen interface for the WPS. 2 new tags:
%T|x|y|width|height|action| <- setup a region (relative to the current viewport) where if pressed the "action" will be done (currently play/stop/prev/next/menu/browse work, suggestions for others to add and better names welcome)
%Tl<timeout> <- used as a conditional to say if the touchscreen was touched in the last <timeout>, use this to enable/disable button viewports or something... same syntax as other timeout tags

cabbiev2 for the mr500 has been modified to demonstrate the new tags. press the pause/play button to pause playback. press the rockbox logo to get back to the menu. pretty icons needed to make this more usable :)



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20753 a1c6a512-1295-4272-9138-f99709370657
2009-04-20 01:41:56 +00:00
Thomas Martitz
ec7a0c5676 Fix caption backlight.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20708 a1c6a512-1295-4272-9138-f99709370657
2009-04-14 22:13:29 +00:00
Thomas Martitz
725733ca92 Fix remote wps updating (again, FS#10121).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20693 a1c6a512-1295-4272-9138-f99709370657
2009-04-12 00:30:28 +00:00
Jens Arnold
fbe39975cf Slightly more compact boundary check.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20691 a1c6a512-1295-4272-9138-f99709370657
2009-04-11 23:07:02 +00:00
Karl Kurbjun
76328bbfda Fix the scrollbar boundary checking to prevent the player from freezing on screens that are too small to show the list with the font selected. Correct the M:Robe remote screen height.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20690 a1c6a512-1295-4272-9138-f99709370657
2009-04-11 22:22:44 +00:00
Thomas Martitz
7ce12e62aa FS#8523 - Disable WPS updating when the backlight is off.
Disables WPS updating when the lcd is inactive (sleep or disabled, backlight doesn't count in), which prevents a good deal of code from running uselessly.
According to tests, it can yield up to 1h more battery life in cases of heavy WPSes.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20666 a1c6a512-1295-4272-9138-f99709370657
2009-04-09 08:30:05 +00:00
Thomas Martitz
3eaefa65b7 Forgot to add the call too gwps_fix_statusbars(), fixes yellow too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20662 a1c6a512-1295-4272-9138-f99709370657
2009-04-08 17:31:29 +00:00
Thomas Martitz
1d52b72952 WPS update optimizations:
*) always initialize restore with true, and make the get_action timeout 1 tick if restore is true (which only happens at initially showing the wps), which makes the wps show up way faster (nearly instantly)
*) reduce the number of full updates by removing update_track (full updates are initiated by the event now), rename partial_update to update.
Now, full updates should really happen only on (re-)entering the wps or track change now.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20661 a1c6a512-1295-4272-9138-f99709370657
2009-04-08 17:11:50 +00:00
Jonathan Gordon
843c7efaf8 FS9795 - some playback cleanup.
* Use events to notify things when the track has changed instead of the nasty has_track_changed()
* Event for when the mp3entry for the next track is avilable (which allows alot more tags to be static which means less redrawing in the WPS)
* virtually guarentee that the mp3entry sturct returned by audio_current/next_track() is going to be valid for the duration of the current track. The only time it wont be now is during the time between the codec finishing the previous track and the next track actually starting (~2s), but this is not an issue as long as it is called again when the TRACK_CHANGED event happens (or just use the pointer that gives)
It is still possible to confuse the WPS with the next tracks id3 info being displayed but this should fix itself up faster than it used to (and be harder to do)



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20633 a1c6a512-1295-4272-9138-f99709370657
2009-04-06 00:39:43 +00:00
Alexander Levin
9188f0ffd7 Drop the unnecessary checks since they are made by the caller
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20632 a1c6a512-1295-4272-9138-f99709370657
2009-04-05 19:39:09 +00:00
Alexander Levin
be7f5253a1 Fix hopping backwards if skip length is > 0 and we're near the end of the track (less than skip length)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20631 a1c6a512-1295-4272-9138-f99709370657
2009-04-05 19:29:21 +00:00
Thomas Martitz
23489bea1c A few skip length and dir change fixes.
*) Fix 64bit sim for playhop.
*) Revert to pre-skip length behavor for dir skipping (always have dirskipping, no matter of skip length), only prevent dir skipping if "prevent track skipping" is enabled
*) small code unification with regards to track and dir skipping

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20618 a1c6a512-1295-4272-9138-f99709370657
2009-04-04 20:33:38 +00:00
Jens Arnold
ae61b94a3f Fix the resume problems on hwcodec which were uncovered by r20483+r20485. The timing problem was there before; checking for id3 availability as a criterion whether to exit the wps was plain wrong. Now it exits only if playback actually finished.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20568 a1c6a512-1295-4272-9138-f99709370657
2009-03-29 17:58:24 +00:00
Jens Arnold
59ba832e3a Fix potential NULL pointer access.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20566 a1c6a512-1295-4272-9138-f99709370657
2009-03-29 12:42:39 +00:00
Alexander Levin
dca04925c6 Fix typos in comments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20560 a1c6a512-1295-4272-9138-f99709370657
2009-03-28 09:09:58 +00:00
Thomas Martitz
8d5982110b Fix hwcodec to actually check for prevent_skip
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20554 a1c6a512-1295-4272-9138-f99709370657
2009-03-27 13:57:56 +00:00
Thomas Martitz
62f3e95945 FS#10014 - Separate tracklocking out of skip length, skip length prevented to skip tracks. This is a seperate setting now. tracks can still change during normal playback (i.e. a song ends).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20553 a1c6a512-1295-4272-9138-f99709370657
2009-03-27 13:53:29 +00:00
Alexander Levin
73157ebb7c Fix a typo in the comment and add a (somewhat vague) description of the values returned.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20492 a1c6a512-1295-4272-9138-f99709370657
2009-03-23 17:19:48 +00:00
Thomas Martitz
3ab31337d8 Fix red, and use gui_wps_display() for restoration.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20485 a1c6a512-1295-4272-9138-f99709370657
2009-03-23 03:18:34 +00:00
Thomas Martitz
ced2724f7d Another wps rework:
*rename gui_wps_refresh() to gui_wps_redraw() and update() to gui_wps_update() to better describe what they do
*Clear things up and differentiate better between gui_wps_redraw()/gui_wps_display()/gui_wps_update() (it wasn't so what they're supposed to do before)
*cleanup gui_wps_display() and gui_wps_update() quite a bit
*Remove unused/unneeded code, do some pointer copying to save binsize, and code cleanup at several places

Visible changes should be small

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20483 a1c6a512-1295-4272-9138-f99709370657
2009-03-23 03:08:56 +00:00
Thomas Martitz
ad59f6ed22 Fix up statusbar drawing in the wps a bit, fixing most, if not all, (re-)draw issues.
a) remove the temporary work around in gui_wps_display
b) let the  wps-statusbars redraw if it's masked (i.e. WPS_REFRESH_ALL or WPS_REFRESH_STATUSBAR)
c) fix a bug of mine, I attached re-fixing the bars to the wrong event
d) unify the decision whether to draw bars at all
e) some other style/code minor cleanups

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20400 a1c6a512-1295-4272-9138-f99709370657
2009-03-20 16:12:09 +00:00
Thomas Martitz
ce6b116bc1 Put exiting the wps entirely into the hands of the wps (restoring backdrops and statusbars, stop scrolling). Remove the restoration code from root_menu, and add some gwps_leave_wps at every possible return/screen change. This also unifies exiting the wps code-wise.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20399 a1c6a512-1295-4272-9138-f99709370657
2009-03-19 23:04:39 +00:00
Thomas Martitz
71471062eb Move gwps_leave_wps() a bit down, so that the menu-statusbars are showing in sync with the rest of the followin screen. It was shown noticeably earlier, particularly if the fade on stop is on.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20355 a1c6a512-1295-4272-9138-f99709370657
2009-03-19 14:33:22 +00:00
Thomas Martitz
aad712d39f Some style changes, move gwps_leave_wps a bit down; add a #define for restoration after 1 second and rename the one for instant restoration
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20330 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 01:56:20 +00:00
Thomas Martitz
680990912c Some internal rework of the wps:
a) Put duplicated code together. The restoration code into the existing restoration part of the main loop, the exiting code into a separate function
b) Let the STATUSBAR_CHANGED event handle fixing the statusbar

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20329 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 01:39:20 +00:00
Thomas Martitz
74aba34b58 Move play_hop() to gwps.c and make it static. It's the only file that calls it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20306 a1c6a512-1295-4272-9138-f99709370657
2009-03-12 18:50:24 +00:00
Bertrik Sikken
b24fafbf14 Yet more #include cleanups
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20249 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 20:28:15 +00:00
Bertrik Sikken
30a2713b6e Clean up some more #includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20243 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 18:37:32 +00:00
Jens Arnold
3f69bb2b1d Bugfix: Text styles are not drawmodes, so stop storing them in the vieport's drawmode field. They're only used locally anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20234 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 12:42:33 +00:00
Alexander Levin
03dcedbbea Changed the comment to more accurately reflect how it works
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20233 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 11:32:02 +00:00
Thomas Martitz
fd14cac7c2 Split HAVE_SCROLLWHEEL into HAVE_SCROLLWHEEL and HAVE_WHEEL_ACCELERATION, where the latter now activates the wheel acceleration code.
HAVE_SCROLLWHEEL plainly indicates the existence of a scrollwheel, thus all ipods define it now (in addition to the ones and some 
sansas which did before). Same applies to the manual.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20177 a1c6a512-1295-4272-9138-f99709370657
2009-03-02 19:25:50 +00:00