@@ -31,6 +31,10 @@ namespace {
31
31
}
32
32
return LV_TABLE_PART_CELL5; // normal
33
33
}
34
+
35
+ int16_t RoundTemperature (int16_t temp) {
36
+ return temp = temp / 100 + (temp % 100 >= 50 ? 1 : 0 );
37
+ }
34
38
}
35
39
36
40
Weather::Weather (Controllers::Settings& settingsController, Controllers::SimpleWeatherService& weatherService)
@@ -127,14 +131,11 @@ void Weather::Refresh() {
127
131
maxTemp = Controllers::SimpleWeatherService::CelsiusToFahrenheit (maxTemp);
128
132
tempUnit = ' F' ;
129
133
}
130
- temp = temp / 100 + (temp % 100 >= 50 ? 1 : 0 );
131
- maxTemp = maxTemp / 100 + (maxTemp % 100 >= 50 ? 1 : 0 );
132
- minTemp = minTemp / 100 + (minTemp % 100 >= 50 ? 1 : 0 );
133
134
lv_label_set_text (icon, Symbols::GetSymbol (optCurrentWeather->iconId ));
134
135
lv_label_set_text (condition, Symbols::GetCondition (optCurrentWeather->iconId ));
135
- lv_label_set_text_fmt (temperature, " %d°%c" , temp, tempUnit);
136
- lv_label_set_text_fmt (minTemperature, " %d°" , minTemp);
137
- lv_label_set_text_fmt (maxTemperature, " %d°" , maxTemp);
136
+ lv_label_set_text_fmt (temperature, " %d°%c" , RoundTemperature ( temp) , tempUnit);
137
+ lv_label_set_text_fmt (minTemperature, " %d°" , RoundTemperature ( minTemp) );
138
+ lv_label_set_text_fmt (maxTemperature, " %d°" , RoundTemperature ( maxTemp) );
138
139
} else {
139
140
lv_label_set_text (icon, " " );
140
141
lv_label_set_text (condition, " " );
@@ -164,8 +165,8 @@ void Weather::Refresh() {
164
165
if (wday > 6 ) {
165
166
wday -= 7 ;
166
167
}
167
- maxTemp = maxTemp / 100 + (maxTemp % 100 >= 50 ? 1 : 0 );
168
- minTemp = minTemp / 100 + (minTemp % 100 >= 50 ? 1 : 0 );
168
+ maxTemp = RoundTemperature (maxTemp);
169
+ minTemp = RoundTemperature (minTemp);
169
170
const char * dayOfWeek = Controllers::DateTime::DayOfWeekShortToStringLow (static_cast <Controllers::DateTime::Days>(wday));
170
171
lv_table_set_cell_value (forecast, 0 , i, dayOfWeek);
171
172
lv_table_set_cell_value (forecast, 1 , i, Symbols::GetSymbol (optCurrentForecast->days [i].iconId ));
0 commit comments