Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/flipperzero-firmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorあく <alleteam@gmail.com>2021-07-07 11:57:49 +0300
committerGitHub <noreply@github.com>2021-07-07 11:57:49 +0300
commita7283280eff93f22c8fc1b65573ae0a6447e94bf (patch)
tree89501b407baf96f3070de9e893ab1be467201d16 /applications/power
parent607e873404d746c692c38482f03c54ed3edce26c (diff)
GUI: Icons and IconsAnimation refactoring. Switch assets to new Icon Api (#566)
* GUI: Icons and IconsAnimation refactoring. Switch assets to new Icon API. * Gui: icon and animation draw now do not accept null pointer * Format Sources * Fix no debug build * Furi: stricter checks in memmgr
Diffstat (limited to 'applications/power')
-rw-r--r--applications/power/power.c9
-rw-r--r--applications/power/power_views.c22
2 files changed, 15 insertions, 16 deletions
diff --git a/applications/power/power.c b/applications/power/power.c
index 841e0a76..22bc5db4 100644
--- a/applications/power/power.c
+++ b/applications/power/power.c
@@ -9,6 +9,7 @@
#include <menu/menu_item.h>
#include <gui/gui.h>
+#include <gui/icon_animation.h>
#include <gui/view_port.h>
#include <gui/view.h>
#include <gui/view_dispatcher.h>
@@ -32,7 +33,6 @@ struct Power {
View* off_view;
View* disconnect_view;
- Icon* battery_icon;
ViewPort* battery_view_port;
Dialog* dialog;
@@ -47,7 +47,7 @@ struct Power {
void power_draw_battery_callback(Canvas* canvas, void* context) {
furi_assert(context);
Power* power = context;
- canvas_draw_icon(canvas, 0, 0, power->battery_icon);
+ canvas_draw_icon(canvas, 0, 0, &I_Battery_26x8);
with_view_model(
power->info_view, (PowerInfoModel * model) {
canvas_draw_box(canvas, 2, 2, (float)model->charge / 100 * 20, 4);
@@ -108,7 +108,7 @@ Power* power_alloc() {
power->cli = furi_record_open("cli");
power_cli_init(power->cli, power);
- power->menu = menu_item_alloc_menu("Power", assets_icons_get(A_Power_14));
+ power->menu = menu_item_alloc_menu("Power", icon_animation_alloc(&A_Power_14));
menu_item_subitem_add(
power->menu, menu_item_alloc_function("Off", NULL, power_menu_off_callback, power));
menu_item_subitem_add(
@@ -143,10 +143,9 @@ Power* power_alloc() {
view_dispatcher_add_view(
power->view_dispatcher, PowerViewDialog, dialog_get_view(power->dialog));
- power->battery_icon = assets_icons_get(I_Battery_26x8);
power->battery_view_port = view_port_alloc();
- view_port_set_width(power->battery_view_port, icon_get_width(power->battery_icon));
+ view_port_set_width(power->battery_view_port, icon_get_width(&I_Battery_26x8));
view_port_draw_callback_set(power->battery_view_port, power_draw_battery_callback, power);
return power;
}
diff --git a/applications/power/power_views.c b/applications/power/power_views.c
index b851f6f8..c6248880 100644
--- a/applications/power/power_views.c
+++ b/applications/power/power_views.c
@@ -1,9 +1,9 @@
#include "power_views.h"
#include <gui/elements.h>
-static void draw_stat(Canvas* canvas, int x, int y, IconName icon, char* val) {
+static void draw_stat(Canvas* canvas, int x, int y, const Icon* icon, char* val) {
canvas_draw_frame(canvas, x - 7, y + 7, 30, 13);
- canvas_draw_icon_name(canvas, x, y, icon);
+ canvas_draw_icon(canvas, x, y, icon);
canvas_set_color(canvas, ColorWhite);
canvas_draw_box(canvas, x - 4, y + 16, 24, 6);
canvas_set_color(canvas, ColorBlack);
@@ -18,15 +18,15 @@ static void draw_battery(Canvas* canvas, PowerInfoModel* data, int x, int y) {
int32_t drain_current = -data->current_gauge * 1000;
uint32_t charge_current = data->current_gauge * 1000;
// battery
- canvas_draw_icon_name(canvas, x, y, I_BatteryBody_52x28);
+ canvas_draw_icon(canvas, x, y, &I_BatteryBody_52x28);
if(charge_current > 0) {
- canvas_draw_icon_name(canvas, x + 16, y + 7, I_FaceCharging_29x14);
+ canvas_draw_icon(canvas, x + 16, y + 7, &I_FaceCharging_29x14);
} else if(drain_current > 100) {
- canvas_draw_icon_name(canvas, x + 16, y + 7, I_FaceConfused_29x14);
+ canvas_draw_icon(canvas, x + 16, y + 7, &I_FaceConfused_29x14);
} else if(data->charge < 10) {
- canvas_draw_icon_name(canvas, x + 16, y + 7, I_FaceNopower_29x14);
+ canvas_draw_icon(canvas, x + 16, y + 7, &I_FaceNopower_29x14);
} else {
- canvas_draw_icon_name(canvas, x + 16, y + 7, I_FaceNormal_29x14);
+ canvas_draw_icon(canvas, x + 16, y + 7, &I_FaceNormal_29x14);
}
//bubble
@@ -99,10 +99,10 @@ void power_info_draw_callback(Canvas* canvas, void* context) {
(uint32_t)(data->voltage_gauge * 10) % 10);
snprintf(health, sizeof(health), "%d%s", data->health, "%");
- draw_stat(canvas, 8, 42, I_Battery_16x16, batt_level);
- draw_stat(canvas, 40, 42, I_Temperature_16x16, temperature);
- draw_stat(canvas, 72, 42, I_Voltage_16x16, voltage);
- draw_stat(canvas, 104, 42, I_Health_16x16, health);
+ draw_stat(canvas, 8, 42, &I_Battery_16x16, batt_level);
+ draw_stat(canvas, 40, 42, &I_Temperature_16x16, temperature);
+ draw_stat(canvas, 72, 42, &I_Voltage_16x16, voltage);
+ draw_stat(canvas, 104, 42, &I_Health_16x16, health);
}
void power_off_draw_callback(Canvas* canvas, void* context) {