mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-05-17 04:34:44 -07:00
merge ofw PR 3840 [ci skip]
GUI: NumberInput small improvements by Willy-JL
This commit is contained in:
@@ -93,7 +93,7 @@ static void number_input_draw_input(Canvas* canvas, NumberInputModel* model) {
|
|||||||
const size_t text_x = 8;
|
const size_t text_x = 8;
|
||||||
const size_t text_y = 25;
|
const size_t text_y = 25;
|
||||||
|
|
||||||
elements_slightly_rounded_frame(canvas, 6, 14, 116, 15);
|
elements_slightly_rounded_frame(canvas, 4, 14, 120, 15);
|
||||||
|
|
||||||
canvas_draw_str(canvas, text_x, text_y, furi_string_get_cstr(model->text_buffer));
|
canvas_draw_str(canvas, text_x, text_y, furi_string_get_cstr(model->text_buffer));
|
||||||
}
|
}
|
||||||
@@ -206,7 +206,7 @@ static void number_input_add_digit(NumberInputModel* model, char* newChar) {
|
|||||||
}
|
}
|
||||||
model->current_number = strtol(furi_string_get_cstr(model->text_buffer), NULL, 10);
|
model->current_number = strtol(furi_string_get_cstr(model->text_buffer), NULL, 10);
|
||||||
if(model->current_number == 0) {
|
if(model->current_number == 0) {
|
||||||
furi_string_reset(model->text_buffer);
|
furi_string_set(model->text_buffer, "0");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -417,7 +417,9 @@ void number_input_set_result_callback(
|
|||||||
int32_t max_value) {
|
int32_t max_value) {
|
||||||
furi_check(number_input);
|
furi_check(number_input);
|
||||||
|
|
||||||
|
if(current_number != 0) {
|
||||||
current_number = CLAMP(current_number, max_value, min_value);
|
current_number = CLAMP(current_number, max_value, min_value);
|
||||||
|
}
|
||||||
|
|
||||||
with_view_model(
|
with_view_model(
|
||||||
number_input->view,
|
number_input->view,
|
||||||
@@ -426,7 +428,11 @@ void number_input_set_result_callback(
|
|||||||
model->callback = callback;
|
model->callback = callback;
|
||||||
model->callback_context = callback_context;
|
model->callback_context = callback_context;
|
||||||
model->current_number = current_number;
|
model->current_number = current_number;
|
||||||
|
if(current_number != 0) {
|
||||||
furi_string_printf(model->text_buffer, "%ld", current_number);
|
furi_string_printf(model->text_buffer, "%ld", current_number);
|
||||||
|
} else {
|
||||||
|
furi_string_set(model->text_buffer, "");
|
||||||
|
}
|
||||||
model->min_value = min_value;
|
model->min_value = min_value;
|
||||||
model->max_value = max_value;
|
model->max_value = max_value;
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user