mirror of
https://github.com/eried/portapack-mayhem.git
synced 2024-12-22 05:55:06 -05:00
b9771b2350
* Resolve rename * battery has warpers
49 lines
1.4 KiB
C++
49 lines
1.4 KiB
C++
#ifndef __UI_DEBUG_BATTERY_HPP__
|
|
#define __UI_DEBUG_BATTERY_HPP__
|
|
|
|
#include "ui.hpp"
|
|
#include "ui_widget.hpp"
|
|
#include "ui_navigation.hpp"
|
|
#include "battery.hpp"
|
|
#include "i2cdevmanager.hpp"
|
|
#include "i2cdev_max17055.hpp"
|
|
|
|
namespace ui {
|
|
|
|
class BatteryCapacityView : public View {
|
|
public:
|
|
BatteryCapacityView(NavigationView& nav);
|
|
void focus() override;
|
|
std::string title() const override { return "Battery Registers"; }
|
|
|
|
bool on_encoder(const EncoderEvent delta) override;
|
|
|
|
using RegisterEntry = i2cdev::I2cDev_MAX17055::RegisterEntry;
|
|
|
|
private:
|
|
static RegisterEntry get_entry(size_t index);
|
|
|
|
Labels labels{
|
|
{{0 * 8, 0 * 16}, "Reg", Theme::getInstance()->fg_yellow->foreground},
|
|
{{9 * 8, 0 * 16}, "Addr", Theme::getInstance()->fg_yellow->foreground},
|
|
{{14 * 8, 0 * 16}, "Hex", Theme::getInstance()->fg_yellow->foreground},
|
|
{{21 * 8, 0 * 16}, "Value", Theme::getInstance()->fg_yellow->foreground},
|
|
};
|
|
std::array<Text, 16> name_texts = {};
|
|
std::array<Text, 16> addr_texts = {};
|
|
std::array<Text, 16> hex_texts = {};
|
|
std::array<Text, 16> value_texts = {};
|
|
|
|
Text page_text{{144, 284, 80, 16}, "Page 1/1"};
|
|
Button button_done{{16, 280, 96, 24}, "Done"};
|
|
|
|
void update_values();
|
|
void populate_page(int start_index);
|
|
void update_page_text();
|
|
int current_page = 0;
|
|
static constexpr int ENTRIES_PER_PAGE = 16;
|
|
};
|
|
|
|
} // namespace ui
|
|
|
|
#endif // __UI_DEBUG_BATTERY_HPP__
|