Commit graph

39 commits

Author SHA1 Message Date
Thomas Martitz
3022a60cc2 Rename {draw,fill}_viewport once more (to draw_border_viewport and fill_viewport) and remove the viewport parameter as suggested by Dave Chapman.
The parameter wasn't used yet and it's not clear whether it should be a absolute or relative viewport.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28242 a1c6a512-1295-4272-9138-f99709370657
2010-10-11 01:19:55 +00:00
Thomas Martitz
5462ef728f Add _rect to {draw,fill}_viewport as suggested by Jonathan Gordon to reduce the chance to confuse it with update_viewport().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28240 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 23:35:03 +00:00
Thomas Martitz
8a0152bd4a Two new lcd/multi screen api convinience functions: draw_viewport(), fill_viewport().
They work as the drawrect/fillrect pendants but work on a viewport basis; pass NULL to draw the current viewport (the one set with set_viewport()).
In conjunction with action_get_touchscreen_press_in_vp() it should be less of a pain to draw buttons and get presses on them.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28239 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 23:15:05 +00:00
Teruaki Kawashima
e87ff2bf91 tweak position of splash so that it is displayed inside the ui viewport.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27371 a1c6a512-1295-4272-9138-f99709370657
2010-07-10 13:40:35 +00:00
Teruaki Kawashima
4862fe4451 splash.c: correct calculation of y coordinate of splash.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26108 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 14:09:35 +00:00
Jeffrey Goode
ff548fad86 Fix include problem
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26039 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 03:17:12 +00:00
Jonathan Gordon
4c03e9a6f0 fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25756 a1c6a512-1295-4272-9138-f99709370657
2010-04-29 10:38:03 +00:00
Jonathan Gordon
886ecaa7a4 centre splashes inside the UI viewport instead of the whole screen. Fixes the flickering statusbar issue and saves alot of fullscreen clears
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25755 a1c6a512-1295-4272-9138-f99709370657
2010-04-29 10:27:35 +00:00
Jonathan Gordon
9d1832cfba fix FS#10870 - slightly change the viewportmanager theme undo-er to be able to force an update even if the theme isnt being toggled from off to on which caused WPS artifacts when leaving the WPS if the theme was enabled
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24087 a1c6a512-1295-4272-9138-f99709370657
2009-12-21 05:19:12 +00:00
Jonathan Gordon
b2eb44ce0e FS#10824 - viewport/statusbar API rework.
Hopefully the only user visible changes are:
- fm and recording screens go by the statusbar setting (sbs or inbuilt)
- plugins go back to using the theme as they should for menus and lists
- splash screens might get cut a bit... entirely theme and splash dependant.. if there is a problematic one we can look at it later.
- hopefully nothing more than very minor screen flickerings... let me know exactly where they are so they can be fixed

New GUI screen rules:
* Screens assume that the theme (sbs+ui viewport+ maybe background image) are always enabled. They may be disabled on a per display basis, but MUST be re-enabled on exit
* Screens must not be coded in a way that requires a statusbar of any type.. the inbuilt bar will be removed shortly.
ALWAYS RESPECT THE USERS SETTINGS unless the screen requires the full display to fit.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23904 a1c6a512-1295-4272-9138-f99709370657
2009-12-09 07:25:46 +00:00
Tomer Shalev
d5b076b64a RTL: Cosmetic changes, no functional change - Rename constants
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23117 a1c6a512-1295-4272-9138-f99709370657
2009-10-11 20:15:22 +00:00
Thomas Martitz
a79dc87761 Add a center flag, next to the rtl flag, for viewports. That results in any text being drawn centered. It overrides the RTL flag if set.
Simplify splashes and time menu by using it.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23105 a1c6a512-1295-4272-9138-f99709370657
2009-10-11 12:21:27 +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
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
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
Nils Wallménius
01729e7a18 FS#9281 Rename of splash functions.
* Remove gui_splash()
* Rename gui_syncsplash() to splashf() and remove its voice 
capabilities.
* Rename the internal splash() to splash_internal() and introduce an 
externally visible splash() that handles simple splashing  without 
printf functionality e.g. splash(HZ, ID2P(LANG_FOO)); or splash(HZ, 
"foo"); if a LANG_* id is passed it will be voiced.
* Adjust all places that called gui_syncsplash() to use the correct 
variant from above.
* Export both new functions to plugins and adjust places calling 
rb->splash() to use the correct variant so that we now have naming 
consistency between the core and plugins.
* Fix one latent bug that would cause my sim to crash with the above 
changes and correct P2STR and P2ID macros, thanks to pondlife.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18282 a1c6a512-1295-4272-9138-f99709370657
2008-08-15 08:27:39 +00:00
Peter D'Hoye
205f3df781 Remove a viewport ambiguity by changing the screens width/heigth members into lcdwidth/lcdheight. Normal usercode should always use getwidth()/getheigth() as that returns the viewport width/height. Fixes issues that would have appeared in many places when introducing viewports with sizes != lcd sizes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17857 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 20:45:21 +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
Jonathan Gordon
0792596e17 the splash should set the viewport to NULL untill we start passing it a vp. (not any time soon though)
"fix" FS#9044 by changing the delete dir screen to use the splash instead so it doesnt have to worry about the statusbar 
height


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17654 a1c6a512-1295-4272-9138-f99709370657
2008-05-29 14:40:12 +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
Nils Wallménius
1ff0c351f7 Fix red archos sims and make some minor cleanup
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14216 a1c6a512-1295-4272-9138-f99709370657
2007-08-06 15:01:45 +00:00
Nils Wallménius
5b76936a44 Accept FS#6159 'Add voice to roughly 100 splash screens and yes-no menus' by Stephane Doyon with some minor tweaks by me. Rerun 'configure' and do a 'make clean' before rebuilding your voice files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14213 a1c6a512-1295-4272-9138-f99709370657
2007-08-06 13:08:36 +00:00
Jens Arnold
f9b90e9103 Now charcell displays require lcd_update() for updating the main lcd content like bitmap displays.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13050 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 22:55:00 +00:00
Jens Arnold
4d6374c923 Get rid of the 'center' parameter for splashes. There were only 2 of almost 500 splashes which were not centered.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12807 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 21:56:08 +00:00
Michael Sevakis
6aa12c11f7 Added a small interface to screens to translate colors into remote gray levels on the x5. Splash screens paint properly with light gray. Should be adapted to a more general approach in the future. A few trailing whitespace trimmings got into a couple files but that is fine.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11218 a1c6a512-1295-4272-9138-f99709370657
2006-10-14 01:32:58 +00:00
Michael Sevakis
e627e35439 More visual annoyance fixes. Backdrops no longer show though on centered splash screens.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11213 a1c6a512-1295-4272-9138-f99709370657
2006-10-13 11:53:57 +00:00
Jens Arnold
803331841e Splash function: Fixed several bugs and problems: (1) Off-by-one bug caused a buffer overflow with splash text longer than the screen. (2) Last line wasn't centered properly in the same situation. (3) On player, string display length must be calculated using utf8length() instead of strlen() since unicode support was added (old bug). (4) Handle splash texts with multiple spaces properly, including correct length calculation and stripping on wrap. (5) Don't reset fg/bg colours to default if not centering (old bug). * Increased buffer sizes to account for (a) larger screens (b) utf-8 (c) words wider than the screen. * More efficient code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11144 a1c6a512-1295-4272-9138-f99709370657
2006-10-07 16:37:30 +00:00
Shachar Liberman
f5a3569899 Should fix yellow player buid. warning only occurred on the real target so I've missed it
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11116 a1c6a512-1295-4272-9138-f99709370657
2006-10-03 15:02:49 +00:00
Shachar Liberman
f5452c0bde Improved code for the splash function: spare some calculation, fix a bug for screens wider then 255 (ipod 5g), fix FS#5775 by displaying complete lines instead of word by word.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11113 a1c6a512-1295-4272-9138-f99709370657
2006-10-02 23:54:28 +00:00
Linus Nielsen Feltzing
0ecd0b0fc2 patch #1422861 by Adam Boot - Fix splash() color problems
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8541 a1c6a512-1295-4272-9138-f99709370657
2006-02-02 22:00:56 +00:00
Daniel Stenberg
f981ea93fb kill gcc4 warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8162 a1c6a512-1295-4272-9138-f99709370657
2005-12-05 22:44:42 +00:00
Kevin Ferrare
1a1abf25f4 removed old statusbar and buttonbar code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8004 a1c6a512-1295-4272-9138-f99709370657
2005-11-20 01:02:14 +00:00
Daniel Stenberg
fe2c40aedb private function made static
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7953 a1c6a512-1295-4272-9138-f99709370657
2005-11-18 08:57:32 +00:00
Jens Arnold
5b2cba17aa Changed the LCD_COLOR pixel value format to packed RGB (unsigned int). Now all LCDs with depth > 1 use the same datatype. Added macros for easy pixel value definition.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7912 a1c6a512-1295-4272-9138-f99709370657
2005-11-16 21:09:23 +00:00
Jens Arnold
edf5a70e27 Replaced the common for(i = 0; i < NB_SCREENS; i++) loop with a macro that just expands to i = 0; instead of the for() loop if NB_SCREENS == 1. Reduces binary size on platforms with only one screen.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7805 a1c6a512-1295-4272-9138-f99709370657
2005-11-09 22:47:15 +00:00
Kevin Ferrare
a3ed62b36f Corrected a bug on archos with buttonbar which was erased when filetree refreshed (mistake introduced in 2005/10/29 commit; Changed some copyrights in the files (I hope this time will be the good one and the last one ! )
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7684 a1c6a512-1295-4272-9138-f99709370657
2005-10-30 01:24:35 +00:00
Kevin Ferrare
d452d26885 Changed some fn names, also corrected a bug with fonts and made the filetree work like the original one (stop on reaching list limits when pressing button)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7679 a1c6a512-1295-4272-9138-f99709370657
2005-10-28 23:52:49 +00:00
Linus Nielsen Feltzing
7da9477bc3 Initial multi screen support by Kévin Ferrare (Patch #1318081)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7666 a1c6a512-1295-4272-9138-f99709370657
2005-10-28 00:00:00 +00:00