summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2020-10-26 12:36:25 -0400
committerSolomon Peachy <pizza@shaftnet.org>2020-10-26 19:52:40 +0000
commit804a49886a842495c6bb049c229d924230b85b26 (patch)
tree3a6d61c3e8ea1f7414a452ed51d5b267cc06790b
parent299c2370756baeac5ca458859ae7c64ca462f8c8 (diff)
downloadrockbox-804a49886a842495c6bb049c229d924230b85b26.tar.gz
rockbox-804a49886a842495c6bb049c229d924230b85b26.zip
statusbar: Make statusbar height equal SYSFONT_HEIGHT
And size elements horizaontally based on SYSFONT_WIDTH Unfortunately we need 16px icons to make 16px statusbar look right but at least it _works_ properly now. Also: all targets currently use 8-px SYSFONT, except some hosted bootloaders Change-Id: I0cdf97e6ef47ec49693ef79667b200595b4fe075
-rw-r--r--apps/gui/statusbar-skinned.c1
-rw-r--r--apps/gui/statusbar.c32
-rw-r--r--apps/gui/statusbar.h4
-rw-r--r--apps/recorder/icons.h11
-rw-r--r--apps/recorder/peakmeter.c2
-rwxr-xr-xtools/configure9
6 files changed, 31 insertions, 28 deletions
diff --git a/apps/gui/statusbar-skinned.c b/apps/gui/statusbar-skinned.c
index c4cc37d539..f8e06c2b5d 100644
--- a/apps/gui/statusbar-skinned.c
+++ b/apps/gui/statusbar-skinned.c
@@ -38,6 +38,7 @@
38#include "debug.h" 38#include "debug.h"
39#include "font.h" 39#include "font.h"
40#include "icon.h" 40#include "icon.h"
41#include "icons.h"
41#include "option_select.h" 42#include "option_select.h"
42#ifdef HAVE_TOUCHSCREEN 43#ifdef HAVE_TOUCHSCREEN
43#include "sound.h" 44#include "sound.h"
diff --git a/apps/gui/statusbar.c b/apps/gui/statusbar.c
index 708624b23e..66297826c0 100644
--- a/apps/gui/statusbar.c
+++ b/apps/gui/statusbar.c
@@ -49,7 +49,7 @@
49 but still needed for compatibility with old system */ 49 but still needed for compatibility with old system */
50#define ICONS_SPACING 2 50#define ICONS_SPACING 2
51#define STATUSBAR_BATTERY_X_POS 0*ICONS_SPACING 51#define STATUSBAR_BATTERY_X_POS 0*ICONS_SPACING
52#define STATUSBAR_BATTERY_WIDTH 18 52#define STATUSBAR_BATTERY_WIDTH (2+(2*SYSFONT_WIDTH))
53#define STATUSBAR_PLUG_X_POS STATUSBAR_X_POS + \ 53#define STATUSBAR_PLUG_X_POS STATUSBAR_X_POS + \
54 STATUSBAR_BATTERY_WIDTH + \ 54 STATUSBAR_BATTERY_WIDTH + \
55 ICONS_SPACING 55 ICONS_SPACING
@@ -58,7 +58,7 @@
58 STATUSBAR_BATTERY_WIDTH + \ 58 STATUSBAR_BATTERY_WIDTH + \
59 STATUSBAR_PLUG_WIDTH + \ 59 STATUSBAR_PLUG_WIDTH + \
60 2*ICONS_SPACING 60 2*ICONS_SPACING
61#define STATUSBAR_VOLUME_WIDTH 16 61#define STATUSBAR_VOLUME_WIDTH (2+(2*SYSFONT_WIDTH))
62#define STATUSBAR_ENCODER_X_POS STATUSBAR_X_POS + \ 62#define STATUSBAR_ENCODER_X_POS STATUSBAR_X_POS + \
63 STATUSBAR_BATTERY_WIDTH + \ 63 STATUSBAR_BATTERY_WIDTH + \
64 STATUSBAR_PLUG_WIDTH + \ 64 STATUSBAR_PLUG_WIDTH + \
@@ -281,7 +281,7 @@ void gui_statusbar_draw(struct gui_statusbar * bar, bool force_redraw, struct vi
281 display->mono_bitmap(bitmap_icons_7x8[Icon_USBPlug], 281 display->mono_bitmap(bitmap_icons_7x8[Icon_USBPlug],
282 STATUSBAR_PLUG_X_POS, 282 STATUSBAR_PLUG_X_POS,
283 STATUSBAR_Y_POS, STATUSBAR_PLUG_WIDTH, 283 STATUSBAR_Y_POS, STATUSBAR_PLUG_WIDTH,
284 STATUSBAR_HEIGHT); 284 SB_ICON_HEIGHT);
285#endif /* HAVE_USB_POWER */ 285#endif /* HAVE_USB_POWER */
286#if CONFIG_CHARGING 286#if CONFIG_CHARGING
287#ifdef HAVE_USB_POWER 287#ifdef HAVE_USB_POWER
@@ -292,7 +292,7 @@ void gui_statusbar_draw(struct gui_statusbar * bar, bool force_redraw, struct vi
292 display->mono_bitmap(bitmap_icons_7x8[Icon_Plug], 292 display->mono_bitmap(bitmap_icons_7x8[Icon_Plug],
293 STATUSBAR_PLUG_X_POS, 293 STATUSBAR_PLUG_X_POS,
294 STATUSBAR_Y_POS, STATUSBAR_PLUG_WIDTH, 294 STATUSBAR_Y_POS, STATUSBAR_PLUG_WIDTH,
295 STATUSBAR_HEIGHT); 295 SB_ICON_HEIGHT);
296#endif /* CONFIG_CHARGING */ 296#endif /* CONFIG_CHARGING */
297#ifdef HAVE_RECORDING 297#ifdef HAVE_RECORDING
298 /* turn off volume display in recording screen */ 298 /* turn off volume display in recording screen */
@@ -453,7 +453,7 @@ static bool gui_statusbar_icon_volume(struct gui_statusbar * bar, int volume)
453 if (volume == minvol) { 453 if (volume == minvol) {
454 display->mono_bitmap(bitmap_icons_7x8[Icon_Mute], 454 display->mono_bitmap(bitmap_icons_7x8[Icon_Mute],
455 STATUSBAR_VOLUME_X_POS + STATUSBAR_VOLUME_WIDTH / 2 - 4, 455 STATUSBAR_VOLUME_X_POS + STATUSBAR_VOLUME_WIDTH / 2 - 4,
456 STATUSBAR_Y_POS, 7, STATUSBAR_HEIGHT); 456 STATUSBAR_Y_POS, 7, SB_ICON_HEIGHT);
457 } 457 }
458 else { 458 else {
459 /* We want to redraw the icon later on */ 459 /* We want to redraw the icon later on */
@@ -505,7 +505,7 @@ static void gui_statusbar_icon_play_state(struct screen * display, int state)
505{ 505{
506 display->mono_bitmap(bitmap_icons_7x8[state], STATUSBAR_PLAY_STATE_X_POS, 506 display->mono_bitmap(bitmap_icons_7x8[state], STATUSBAR_PLAY_STATE_X_POS,
507 STATUSBAR_Y_POS, STATUSBAR_PLAY_STATE_WIDTH, 507 STATUSBAR_Y_POS, STATUSBAR_PLAY_STATE_WIDTH,
508 STATUSBAR_HEIGHT); 508 SB_ICON_HEIGHT);
509} 509}
510 510
511/* 511/*
@@ -515,7 +515,7 @@ static void gui_statusbar_icon_play_mode(struct screen * display, int mode)
515{ 515{
516 display->mono_bitmap(bitmap_icons_7x8[mode], STATUSBAR_PLAY_MODE_X_POS, 516 display->mono_bitmap(bitmap_icons_7x8[mode], STATUSBAR_PLAY_MODE_X_POS,
517 STATUSBAR_Y_POS, STATUSBAR_PLAY_MODE_WIDTH, 517 STATUSBAR_Y_POS, STATUSBAR_PLAY_MODE_WIDTH,
518 STATUSBAR_HEIGHT); 518 SB_ICON_HEIGHT);
519} 519}
520 520
521/* 521/*
@@ -525,7 +525,7 @@ static void gui_statusbar_icon_shuffle(struct screen * display)
525{ 525{
526 display->mono_bitmap(bitmap_icons_7x8[Icon_Shuffle], 526 display->mono_bitmap(bitmap_icons_7x8[Icon_Shuffle],
527 STATUSBAR_SHUFFLE_X_POS, STATUSBAR_Y_POS, 527 STATUSBAR_SHUFFLE_X_POS, STATUSBAR_Y_POS,
528 STATUSBAR_SHUFFLE_WIDTH, STATUSBAR_HEIGHT); 528 STATUSBAR_SHUFFLE_WIDTH, SB_ICON_HEIGHT);
529} 529}
530 530
531/* 531/*
@@ -535,7 +535,7 @@ static void gui_statusbar_icon_lock(struct screen * display)
535{ 535{
536 display->mono_bitmap(bitmap_icons_5x8[Icon_Lock_Main], 536 display->mono_bitmap(bitmap_icons_5x8[Icon_Lock_Main],
537 STATUSBAR_LOCKM_X_POS, STATUSBAR_Y_POS, 537 STATUSBAR_LOCKM_X_POS, STATUSBAR_Y_POS,
538 STATUSBAR_LOCKM_WIDTH, STATUSBAR_HEIGHT); 538 STATUSBAR_LOCKM_WIDTH, SB_ICON_HEIGHT);
539} 539}
540 540
541#ifdef HAS_REMOTE_BUTTON_HOLD 541#ifdef HAS_REMOTE_BUTTON_HOLD
@@ -546,7 +546,7 @@ static void gui_statusbar_icon_lock_remote(struct screen * display)
546{ 546{
547 display->mono_bitmap(bitmap_icons_5x8[Icon_Lock_Remote], 547 display->mono_bitmap(bitmap_icons_5x8[Icon_Lock_Remote],
548 STATUSBAR_LOCKR_X_POS, STATUSBAR_Y_POS, 548 STATUSBAR_LOCKR_X_POS, STATUSBAR_Y_POS,
549 STATUSBAR_LOCKR_WIDTH, STATUSBAR_HEIGHT); 549 STATUSBAR_LOCKR_WIDTH, SB_ICON_HEIGHT);
550} 550}
551#endif 551#endif
552 552
@@ -559,7 +559,7 @@ static void gui_statusbar_led(struct screen * display)
559 display->mono_bitmap(bitmap_icon_disk, 559 display->mono_bitmap(bitmap_icon_disk,
560 STATUSBAR_DISK_X_POS(display->getwidth()), 560 STATUSBAR_DISK_X_POS(display->getwidth()),
561 STATUSBAR_Y_POS, STATUSBAR_DISK_WIDTH, 561 STATUSBAR_Y_POS, STATUSBAR_DISK_WIDTH,
562 STATUSBAR_HEIGHT); 562 SB_ICON_HEIGHT);
563} 563}
564#endif 564#endif
565 565
@@ -609,7 +609,7 @@ static int write_bitmap_number(struct screen * display, int value,
609 609
610 for (ptr = buf; *ptr != '\0'; ptr++, x += BM_GLYPH_WIDTH) 610 for (ptr = buf; *ptr != '\0'; ptr++, x += BM_GLYPH_WIDTH)
611 display->mono_bitmap(bitmap_glyphs_4x8[*ptr - '0'], x, y, 611 display->mono_bitmap(bitmap_glyphs_4x8[*ptr - '0'], x, y,
612 BM_GLYPH_WIDTH, STATUSBAR_HEIGHT); 612 BM_GLYPH_WIDTH, SB_ICON_HEIGHT);
613 return x; 613 return x;
614} 614}
615 615
@@ -649,7 +649,7 @@ static void gui_statusbar_write_format_info(struct screen * display)
649 649
650 /* Show bitmap - clipping right edge if needed */ 650 /* Show bitmap - clipping right edge if needed */
651 display->mono_bitmap_part(bm, 0, 0, STATUSBAR_ENCODER_WIDTH, 651 display->mono_bitmap_part(bm, 0, 0, STATUSBAR_ENCODER_WIDTH,
652 xpos, STATUSBAR_Y_POS, width, STATUSBAR_HEIGHT); 652 xpos, STATUSBAR_Y_POS, width, SB_ICON_HEIGHT);
653 653
654 if (rec_format == REC_FORMAT_MPA_L3) 654 if (rec_format == REC_FORMAT_MPA_L3)
655 { 655 {
@@ -688,7 +688,7 @@ static void gui_statusbar_write_samplerate_info(struct screen * display)
688 /* write the 'k' */ 688 /* write the 'k' */
689 display->mono_bitmap(bitmap_glyphs_4x8[Glyph_4x8_k], xpos, 689 display->mono_bitmap(bitmap_glyphs_4x8[Glyph_4x8_k], xpos,
690 STATUSBAR_Y_POS, BM_GLYPH_WIDTH, 690 STATUSBAR_Y_POS, BM_GLYPH_WIDTH,
691 STATUSBAR_HEIGHT); 691 SB_ICON_HEIGHT);
692} 692}
693 693
694static void gui_statusbar_icon_recording_info(struct screen * display) 694static void gui_statusbar_icon_recording_info(struct screen * display)
@@ -704,13 +704,13 @@ static void gui_statusbar_icon_recording_info(struct screen * display)
704 { 704 {
705 display->mono_bitmap(bitmap_icons_5x8[Icon_Mono], 705 display->mono_bitmap(bitmap_icons_5x8[Icon_Mono],
706 STATUSBAR_RECCHANNELS_X_POS , STATUSBAR_Y_POS, 706 STATUSBAR_RECCHANNELS_X_POS , STATUSBAR_Y_POS,
707 STATUSBAR_RECCHANNELS_WIDTH, STATUSBAR_HEIGHT); 707 STATUSBAR_RECCHANNELS_WIDTH, SB_ICON_HEIGHT);
708 } 708 }
709 else 709 else
710 { 710 {
711 display->mono_bitmap(bitmap_icons_5x8[Icon_Stereo], 711 display->mono_bitmap(bitmap_icons_5x8[Icon_Stereo],
712 STATUSBAR_RECCHANNELS_X_POS, STATUSBAR_Y_POS, 712 STATUSBAR_RECCHANNELS_X_POS, STATUSBAR_Y_POS,
713 STATUSBAR_RECCHANNELS_WIDTH, STATUSBAR_HEIGHT); 713 STATUSBAR_RECCHANNELS_WIDTH, SB_ICON_HEIGHT);
714 } 714 }
715} 715}
716#endif /* HAVE_RECORDING */ 716#endif /* HAVE_RECORDING */
diff --git a/apps/gui/statusbar.h b/apps/gui/statusbar.h
index 45bd0c6ee1..a676c7b143 100644
--- a/apps/gui/statusbar.h
+++ b/apps/gui/statusbar.h
@@ -28,10 +28,6 @@
28#include "screen_access.h" 28#include "screen_access.h"
29#include "events.h" 29#include "events.h"
30 30
31#define STATUSBAR_X_POS 0
32#define STATUSBAR_Y_POS 0 /* MUST be a multiple of 8 */
33#define STATUSBAR_HEIGHT 8
34
35struct status_info { 31struct status_info {
36 int battlevel; 32 int battlevel;
37 int batt_charge_step; 33 int batt_charge_step;
diff --git a/apps/recorder/icons.h b/apps/recorder/icons.h
index 66de36bcd0..249453a943 100644
--- a/apps/recorder/icons.h
+++ b/apps/recorder/icons.h
@@ -103,14 +103,15 @@ extern const unsigned char bitmap_icon_disk[];
103 103
104#define STATUSBAR_X_POS 0 104#define STATUSBAR_X_POS 0
105#define STATUSBAR_Y_POS 0 /* MUST be a multiple of 8 */ 105#define STATUSBAR_Y_POS 0 /* MUST be a multiple of 8 */
106#define STATUSBAR_HEIGHT 8 106#define STATUSBAR_HEIGHT SYSFONT_HEIGHT
107#define STATUSBAR_WIDTH LCD_WIDTH 107#define STATUSBAR_WIDTH LCD_WIDTH
108#define SB_ICON_HEIGHT 8 /* ... for now */
108#define ICON_BATTERY_X_POS 0 109#define ICON_BATTERY_X_POS 0
109#define ICON_BATTERY_WIDTH 18 110#define ICON_BATTERY_WIDTH (2+(2*SYSFONT_WIDTH))
110#define ICON_PLUG_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+2 111#define ICON_PLUG_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+2
111#define ICON_PLUG_WIDTH 7 112#define ICON_PLUG_WIDTH 7
112#define ICON_VOLUME_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+2+2 113#define ICON_VOLUME_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+2+2
113#define ICON_VOLUME_WIDTH 16 114#define ICON_VOLUME_WIDTH (2+(2*SYSFONT_WIDTH))
114#define ICON_PLAY_STATE_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+2+2+2 115#define ICON_PLAY_STATE_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+2+2+2
115#define ICON_PLAY_STATE_WIDTH 7 116#define ICON_PLAY_STATE_WIDTH 7
116#define ICON_PLAY_MODE_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+ICON_PLAY_STATE_WIDTH+2+2+2+2 117#define ICON_PLAY_MODE_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+ICON_PLAY_STATE_WIDTH+2+2+2+2
@@ -123,5 +124,9 @@ extern const unsigned char bitmap_icon_disk[];
123#define ICON_DISK_X_POS STATUSBAR_WIDTH-ICON_DISK_WIDTH 124#define ICON_DISK_X_POS STATUSBAR_WIDTH-ICON_DISK_WIDTH
124#define TIME_X_END STATUSBAR_WIDTH-1 125#define TIME_X_END STATUSBAR_WIDTH-1
125 126
127#if defined(SYSFONT_HEIGHT) && (SB_ICON_HEIGHT > STATUSBAR_HEIGHT)
128#error "Icons larger than statusbar!"
129#endif
130
126#endif /* PLUGIN */ 131#endif /* PLUGIN */
127#endif /* _ICONS_H_ */ 132#endif /* _ICONS_H_ */
diff --git a/apps/recorder/peakmeter.c b/apps/recorder/peakmeter.c
index c9c0254f2a..e8e5db551a 100644
--- a/apps/recorder/peakmeter.c
+++ b/apps/recorder/peakmeter.c
@@ -1311,7 +1311,7 @@ void peak_meter_draw_trig(int xpos[], int ypos[],
1311 HORIZONTAL); 1311 HORIZONTAL);
1312 1312
1313 screens[i].mono_bitmap(bitmap_icons_7x8[icon], ixpos[i], ypos[i], 1313 screens[i].mono_bitmap(bitmap_icons_7x8[icon], ixpos[i], ypos[i],
1314 ICON_PLAY_STATE_WIDTH, STATUSBAR_HEIGHT); 1314 ICON_PLAY_STATE_WIDTH, SB_ICON_HEIGHT);
1315 } 1315 }
1316} 1316}
1317#endif 1317#endif
diff --git a/tools/configure b/tools/configure
index 33e323bc7e..8d00be434d 100755
--- a/tools/configure
+++ b/tools/configure
@@ -4057,7 +4057,7 @@ fi
4057 t_cpu="hosted" 4057 t_cpu="hosted"
4058 t_manufacturer="xduoo" 4058 t_manufacturer="xduoo"
4059 t_model="xduoo_x3ii" 4059 t_model="xduoo_x3ii"
4060 sysfont="16-Terminus" 4060 sysfontbl="16-Terminus"
4061 ;; 4061 ;;
4062 4062
4063 243|xduoox20) 4063 243|xduoox20)
@@ -4080,7 +4080,7 @@ fi
4080 t_cpu="hosted" 4080 t_cpu="hosted"
4081 t_manufacturer="xduoo" 4081 t_manufacturer="xduoo"
4082 t_model="xduoo_x20" 4082 t_model="xduoo_x20"
4083 sysfont="16-Terminus" 4083 sysfontbl="16-Terminus"
4084 ;; 4084 ;;
4085 4085
4086 244|fiiom3k) 4086 244|fiiom3k)
@@ -4103,7 +4103,7 @@ fi
4103 t_manufacturer="fiio" 4103 t_manufacturer="fiio"
4104 t_model="m3k" 4104 t_model="m3k"
4105 mipsellinuxcc 4105 mipsellinuxcc
4106 sysfont="16-Terminus" 4106 sysfontbl="16-Terminus"
4107 ;; 4107 ;;
4108 4108
4109 245|aigoerosq|erosq) 4109 245|aigoerosq|erosq)
@@ -4126,7 +4126,7 @@ fi
4126 t_cpu="hosted" 4126 t_cpu="hosted"
4127 t_manufacturer="aigo" 4127 t_manufacturer="aigo"
4128 t_model="erosq" 4128 t_model="erosq"
4129 sysfont="16-Terminus" 4129 sysfontbl="16-Terminus"
4130 ;; 4130 ;;
4131 4131
4132 250|ihifi770c) 4132 250|ihifi770c)
@@ -4307,6 +4307,7 @@ fi
4307 fi 4307 fi
4308 extradefines="$extradefines -DBOOTLOADER -ffunction-sections -fdata-sections" 4308 extradefines="$extradefines -DBOOTLOADER -ffunction-sections -fdata-sections"
4309 bootloader="1" 4309 bootloader="1"
4310 if [ -n "${sysfontbl}" ] ; then sysfont=$sysfontbl ; fi
4310 echo "Bootloader build selected" 4311 echo "Bootloader build selected"
4311 ;; 4312 ;;
4312 [Ss]) 4313 [Ss])