mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
Memory usage display.
This commit is contained in:
@@ -3,6 +3,8 @@
|
||||
#include <assert.h>
|
||||
#include <cmath>
|
||||
#include <apps/settings/main_controller.h>
|
||||
#include <poincare/integer.h>
|
||||
#include <ion/storage.h>
|
||||
|
||||
#define MP_STRINGIFY_HELPER(x) #x
|
||||
#define MP_STRINGIFY(x) MP_STRINGIFY_HELPER(x)
|
||||
@@ -56,6 +58,33 @@ bool AboutController::handleEvent(Ion::Events::Event event) {
|
||||
myCell->setAccessoryText(Ion::customSoftwareVersion());
|
||||
return true;
|
||||
}
|
||||
if (childLabel == I18n::Message::MemUse) {
|
||||
MessageTableCellWithBuffer * myCell = (MessageTableCellWithBuffer *)m_selectableTableView.selectedCell();
|
||||
|
||||
char memUseBuffer[15];
|
||||
|
||||
if (strchr(myCell->accessoryText(), '%') == NULL) {
|
||||
int len = Poincare::Integer((int)((float)(Ion::Storage::k_storageSize - Ion::Storage::sharedStorage()->availableSize()) / (float)(Ion::Storage::k_storageSize) * 100.0f)).serialize(memUseBuffer, 4);
|
||||
memUseBuffer[len] = '%';
|
||||
memUseBuffer[len+1] = '\0';
|
||||
|
||||
myCell->setAccessoryText(memUseBuffer);
|
||||
} else {
|
||||
int len = Poincare::Integer((int)((float) (Ion::Storage::k_storageSize - Ion::Storage::sharedStorage()->availableSize()) / 1024.f)).serialize(memUseBuffer, 4);
|
||||
memUseBuffer[len] = 'k';
|
||||
memUseBuffer[len+1] = 'B';
|
||||
memUseBuffer[len+2] = '/';
|
||||
|
||||
len = Poincare::Integer((int)((float) Ion::Storage::k_storageSize / 1024.f)).serialize(memUseBuffer + len + 3, 4) + len + 3;
|
||||
memUseBuffer[len] = 'k';
|
||||
memUseBuffer[len+1] = 'B';
|
||||
memUseBuffer[len+2] = '\0';
|
||||
|
||||
myCell->setAccessoryText(memUseBuffer);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -94,8 +123,20 @@ void AboutController::willDisplayCellForIndex(HighlightCell * cell, int index) {
|
||||
if (m_messageTreeModel->children(index)->label() == I18n::Message::Contributors) {
|
||||
MessageTableCellWithChevronAndMessage * myTextCell = (MessageTableCellWithChevronAndMessage *)cell;
|
||||
myTextCell->setSubtitle(I18n::Message::Default);
|
||||
}
|
||||
else {
|
||||
} else if (m_messageTreeModel->children(index)->label() == I18n::Message::MemUse) {
|
||||
char memUseBuffer[15];
|
||||
int len = Poincare::Integer((int)((float) (Ion::Storage::k_storageSize - Ion::Storage::sharedStorage()->availableSize()) / 1024.f)).serialize(memUseBuffer, 4);
|
||||
memUseBuffer[len] = 'k';
|
||||
memUseBuffer[len+1] = 'B';
|
||||
memUseBuffer[len+2] = '/';
|
||||
|
||||
len = Poincare::Integer((int)((float) Ion::Storage::k_storageSize / 1024.f)).serialize(memUseBuffer + len + 3, 4) + len + 3;
|
||||
memUseBuffer[len] = 'k';
|
||||
memUseBuffer[len+1] = 'B';
|
||||
|
||||
MessageTableCellWithBuffer * myCell = (MessageTableCellWithBuffer *)cell;
|
||||
myCell->setAccessoryText(memUseBuffer);
|
||||
} else {
|
||||
MessageTableCellWithBuffer * myCell = (MessageTableCellWithBuffer *)cell;
|
||||
static const char * mpVersion = MICROPY_VERSION_STRING;
|
||||
static const char * messages[] = {
|
||||
@@ -105,6 +146,7 @@ void AboutController::willDisplayCellForIndex(HighlightCell * cell, int index) {
|
||||
Ion::softwareVersion(),
|
||||
Ion::customSoftwareVersion(),
|
||||
mpVersion,
|
||||
"",
|
||||
Ion::serialNumber(),
|
||||
Ion::fccId()
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user