Commit graph

221 commits

Author SHA1 Message Date
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
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
Teruaki Kawashima
f495488b08 fix forcing scrolling title like "Scroll Speed Setting Example".
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22081 a1c6a512-1295-4272-9138-f99709370657
2009-07-29 13:35:00 +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
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
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
Johannes Schwarz
73d25744fb FS#10283 simplify plugins' menus by using stringlist with callback (by Teruaki Kawashima - some minor changes by myself)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21523 a1c6a512-1295-4272-9138-f99709370657
2009-06-26 17:59:33 +00:00
Thomas Martitz
85d8e95e55 Fix typo in comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21278 a1c6a512-1295-4272-9138-f99709370657
2009-06-13 18:24:07 +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
Bertrik Sikken
d4d121538d Remove unnecessary #include "backlight.h"
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20790 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 21:32:55 +00:00
Steve Bavin
f14999e0b9 Fix redraw sequence when exiting a setting menu, so splashes work properly - see FS#9994.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20281 a1c6a512-1295-4272-9138-f99709370657
2009-03-10 07:27:13 +00:00
Bertrik Sikken
66cf3a3329 Clean up some #includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20238 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 16:10:40 +00:00
Jonathan Gordon
036fb05dfd Accept a quick patch from Alexander Levin to neaten up the #defines and comments from my earlier commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19897 a1c6a512-1295-4272-9138-f99709370657
2009-02-01 13:43:08 +00:00
Jonathan Gordon
80cb3551eb Statusbar handling fixes.
Fixes FS#9845 - %we/%wd wasnt working
WPS no longer resets the viewportmanger more than needed (was doing it twice/draw before)
screens can now enable/disable the statusbar easily ignoring the setting instead of needing special handling (fix for the radio screen coming soon)

minor glitch introduced in this commit... the statusbar in the WPS might disappear for a fraction of a second when it is entered, I need to track this down...


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19894 a1c6a512-1295-4272-9138-f99709370657
2009-02-01 11:34:16 +00:00
Jonathan Gordon
4b472de39b a few more button/statusbar fixes...
* hopefully fix the last of the plugins which dont handle the enw SYS event.
* fix FS#9750 - WPS's which dont specify (or force the wps on) wernt showing the statusbar at all
* lamp, battery_bench, *_flash button handling fixes
* plugins using the core menu code will again show the statusbar



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19656 a1c6a512-1295-4272-9138-f99709370657
2009-01-03 13:27:19 +00:00
Jonathan Gordon
e385ee18ce Decouple the statusbar drawing from the rest of the screen drawing. it is not drawn roughly 4x per second automatically.
viewport_Set_defaults() will setup the given viewport with the correct "full screen" dimensions (so start at 0,0 if statusbars are disabled or 0,8 if they are enabled.)
All screens should keep the statusbar enabled, but if you really want to ignore the user setting you can disbaled it with viewportmanager_set_statusbar(false).

This commit also includes some menu/list viewport cleanups from kugel in FS#9603


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19622 a1c6a512-1295-4272-9138-f99709370657
2008-12-31 05:59:26 +00:00
Jonathan Gordon
2c4f40692f revert part of r18933 which fixes FS#9600.
This fix is a bit wasteful, but fine untill the menu starts being called with a parent viewport.
The real fix should be using a callback to notify the menu to reinit its viewports when the theme changes


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19310 a1c6a512-1295-4272-9138-f99709370657
2008-12-03 09:24:33 +00:00
Jonathan Gordon
c7fec13fd8 FS#9173 - move all time/clock related settings in the menus into system > "time & date" (this includes sleep timer, alarm settings)
The time/date dispaly has been moved out of the "rockbox info" screen and into this screen also (only displayed if there is at least 3 lines of text on the screen though)
The time/date is talked in this screen by pressing the usual context-menu button (usually long-select)

Targets without a RTC are not changed (i.e sleep timer isnt moved)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19282 a1c6a512-1295-4272-9138-f99709370657
2008-12-01 09:28:14 +00:00
Jonathan Gordon
a22749b5c6 FS#9525 - The list for the quickscreen items chooser turned out to not really be usable so try this instead.
Settings in the menus will now have a context menu where you can reset the setting and if its OK to put it on the quickscreen there will be options there to put it on it.

Also, ban last.fm and cuesheet support settings from the QS


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19013 a1c6a512-1295-4272-9138-f99709370657
2008-11-05 09:30:20 +00:00
Jonathan Gordon
fdd4050bc7 fix some problems with the menu code:
- MENU_FUNC_CHECK_RETVAL has been loosened to return if the function returns non-zero (and passes that return value on as the return value for do_menu(). This is fine for now because only 2 places uses this flag and both return 1.
- when the option screen or a function is called from a menu which doesn't use the full screen viewport the wrong viewport was used (option screen crashed, and returning from the funciton ignored the origional viewport.) This is now changed so (for now) the option screen always gets the full screen viewport and returning from functions shows the menu correctly.

Some time in the future menu items which are functions should be changed to accept a viewport (if they end up drawing). 
When that happens both option screen and the called function should use the menu's parent viewport


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18933 a1c6a512-1295-4272-9138-f99709370657
2008-10-30 07:07:45 +00:00
Peter D'Hoye
c5383c1c27 Stop scrolling lines when entering or leaving a menu list item. Fixes FS #9478 (Scrolling lines from (menu) lists are drawn over other screens)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18802 a1c6a512-1295-4272-9138-f99709370657
2008-10-13 22:08:01 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Peter D'Hoye
f76122f0e7 Accept FS #9052 by Alexander Levin with a fix by me. Changes HAS_BUTTONBAR into HAVE_BUTTONBAR to bring it in line with the other defines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17655 a1c6a512-1295-4272-9138-f99709370657
2008-05-29 20:32:39 +00:00
Jonathan Gordon
ea664e0647 Viewported quickscreen (take 2 :D) (FS#8553)
- no customization support
- no top item
- much better use of the screen
- deprecates 20 odd lang strings (the QS can now use the regular lang strings and user font)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17315 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 12:30:40 +00:00
Bertrik Sikken
e15f8a21a9 Made source files #include the header file that they implement to make sure they are in sync. Made some local functions static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17312 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 08:35:14 +00:00
Jonathan Gordon
6d207956d3 found (and fixed) by Stephane Doyon...
"A glitch was recently introduced when backing out of context menu functions. When exiting for example the playlist viewer, or the id3 viewer, it will speak the name of the menu entry used to access that function. That's pretty confusing because it sounds like you dropped back into the menu system while we have in fact exited the context menu completely."



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17293 a1c6a512-1295-4272-9138-f99709370657
2008-04-30 10:22:39 +00:00
Jonathan Gordon
fe9dca3d5b option_screen() now accepts a viewport
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17223 a1c6a512-1295-4272-9138-f99709370657
2008-04-23 11:07:40 +00:00
Jonathan Gordon
286d48f4ec enable the quickscreen in menus and neaten up the else if-ing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17222 a1c6a512-1295-4272-9138-f99709370657
2008-04-23 10:33:46 +00:00
Nils Wallménius
6848961aa5 Pass the buffer length to the list_get_name callback functions instead of using hardcoded MAX_PATH
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17049 a1c6a512-1295-4272-9138-f99709370657
2008-04-09 15:25:17 +00:00
Jonathan Gordon
a53b85a52a fix themes not being fully applied to the menu on load (Hopefully fixes FS#8808)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16819 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 13:34:47 +00:00
Jonathan Gordon
be185a1eaf fix the buttonbar in the browser and menus.
fix a problem where the menus wouldnt redraw when they should have when settings change


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16816 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 09:05:42 +00:00
Jonathan Gordon
5ca1539969 the menu and list now accepts a parent viewport to draw in (and the menu can be told to not show status/button bars). This lays the groundwork to fix colour problems with plugin menus (see star.c for an example.) This hopefully fixes some button bar issues as well as theme problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16812 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 03:35:24 +00:00
Steve Bavin
cd88e2ad93 Code police raid on the settings code, consting and putting headers alongside their implementation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16798 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 15:24:03 +00:00
Linus Nielsen Feltzing
34d08b235e Fix buffer overflow in the title padding code (FS#8163)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15633 a1c6a512-1295-4272-9138-f99709370657
2007-11-16 08:18:08 +00:00
Jonathan Gordon
c586739763 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15546 a1c6a512-1295-4272-9138-f99709370657 2007-11-09 00:48:18 +00:00
Jonathan Gordon
5cab5dab0e fix red
fix Björn's name in the (c)
fix FS#8105 - backing out of the submenus in the context menus shuoldnt leave the context menu completly (expect playlist which possibly makes sense?)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15513 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 10:06:21 +00:00
Jonathan Gordon
91ccc01bcf fix FS#7288 - pad the title of the scrolling settings so they actually scroll
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15469 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 13:15:35 +00:00
Jonathan Gordon
a6f2b82803 revert my previous commit and do it in a much less hacky way (both of these were for FS#8084)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15458 a1c6a512-1295-4272-9138-f99709370657
2007-11-04 12:40:18 +00:00
Jonathan Gordon
62decc42e7 return to the main menu if stop is pressed in the wps context menu, (blame pondlife for the hack :D )
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15457 a1c6a512-1295-4272-9138-f99709370657
2007-11-04 12:10:41 +00:00
Stéphane Doyon
4e09b78f8c From FS#7774: use list voice callback in menus.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15234 a1c6a512-1295-4272-9138-f99709370657
2007-10-21 00:23:23 +00:00
Steve Bavin
32a9575130 FS#7994 - Rename talk.c API, make talk_disable() affect all talking (not just menus), hopefully save some space.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15206 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 15:31:42 +00:00
Stéphane Doyon
5acf091046 Add a voice callback to dynamic menus, along side the text_callback.
From FS#7563.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15042 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 03:48:56 +00:00
Jonathan Gordon
cf1cef5f57 minor update to gui_synclist_do_button() which will hopefully simplify things later.
Now returns true if the action was handled in that function instead of returning the handled action.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14733 a1c6a512-1295-4272-9138-f99709370657
2007-09-17 10:08:50 +00:00
Jonathan Gordon
94b9804427 Make MENUITEM_STRINGLIST() menus talk (if ID2P() is used for the string)
Makes the plugin browser talk (FS#7612), as well as the paylist viewer menu and the bookmark menu.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14399 a1c6a512-1295-4272-9138-f99709370657
2007-08-20 09:11:05 +00:00
Magnus Holmgren
1d9f693658 Redraw the menu when stopping playback, in case the bookmarking code left something on screen.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14196 a1c6a512-1295-4272-9138-f99709370657
2007-08-05 15:21:47 +00:00
Jonathan Gordon
75e2f19de3 dont redraw the menu if we are about to quit anyway (noticable when backing out of the playlist menu from the wps context menu)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14180 a1c6a512-1295-4272-9138-f99709370657
2007-08-04 09:47:17 +00:00
Jonathan Gordon
73336e9729 Finally use the rec button to get to the rec screen on sansa and iriver hxxx. hold rec to get there... short press still is unused
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14141 a1c6a512-1295-4272-9138-f99709370657
2007-08-02 12:13:20 +00:00
Jonathan Gordon
fe2b376060 Fix the text for settings which have a different title than what is shown in the menu (i.e scroll options)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13962 a1c6a512-1295-4272-9138-f99709370657
2007-07-23 05:40:45 +00:00
Jonathan Gordon
f7675a244b remove the need for action_signalscreenchange().
Fixes problems with targets where the ACTION_STD_CANCEL event is a combo


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13956 a1c6a512-1295-4272-9138-f99709370657
2007-07-22 06:05:53 +00:00
Jonathan Gordon
a5278fa3db Rearrange and cleanup settings code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13851 a1c6a512-1295-4272-9138-f99709370657
2007-07-11 05:41:23 +00:00