feat(display): Initial widget/status screen work.

* Battery and output status widgets
* Built in status screen combining them.
* Ability to define a custom status screen factory
  function.
This commit is contained in:
Pete Johanson
2020-08-31 10:18:19 -04:00
parent d5ea426975
commit b3f3362b50
18 changed files with 362 additions and 24 deletions

View File

@@ -14,7 +14,9 @@ int zmk_ble_prof_next();
int zmk_ble_prof_prev();
int zmk_ble_prof_select(u8_t index);
int zmk_ble_active_profile_index();
bt_addr_le_t *zmk_ble_active_profile_addr();
bool zmk_ble_active_profile_is_open();
bool zmk_ble_active_profile_is_connected();
char *zmk_ble_active_profile_name();

View File

@@ -0,0 +1,11 @@
/*
* Copyright (c) 2020 Peter Johanson <peter@peterjohanson.com>
*
* SPDX-License-Identifier: MIT
*/
#pragma once
#include <lvgl.h>
lv_obj_t *zmk_display_status_screen();

View File

@@ -0,0 +1,18 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#pragma once
#include <lvgl.h>
#include <kernel.h>
struct zmk_widget_battery_status {
sys_snode_t node;
lv_obj_t *obj;
};
int zmk_widget_battery_status_init(struct zmk_widget_battery_status *widget, lv_obj_t *parent);
lv_obj_t *zmk_widget_battery_status_obj(struct zmk_widget_battery_status *widget);

View File

@@ -0,0 +1,18 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#pragma once
#include <lvgl.h>
#include <kernel.h>
struct zmk_widget_output_status {
sys_snode_t node;
lv_obj_t *obj;
};
int zmk_widget_output_status_init(struct zmk_widget_output_status *widget, lv_obj_t *parent);
lv_obj_t *zmk_widget_output_status_obj(struct zmk_widget_output_status *widget);

View File

@@ -16,5 +16,6 @@ enum zmk_endpoint {
int zmk_endpoints_select(enum zmk_endpoint endpoint);
int zmk_endpoints_toggle();
enum zmk_endpoint zmk_endpoints_selected();
int zmk_endpoints_send_report(u8_t usage_report);