Fix MIN/MAX function collision with macros
This commit is contained in:
@ -382,7 +382,7 @@ void MarlinUI::clear_lcd() { lcd.clear(); }
|
||||
}
|
||||
else {
|
||||
PGM_P p = text;
|
||||
int dly = time / MAX(slen, 1);
|
||||
int dly = time / _MAX(slen, 1);
|
||||
for (uint8_t i = 0; i <= slen; i++) {
|
||||
|
||||
// Go to the correct place
|
||||
@ -1325,7 +1325,7 @@ void MarlinUI::draw_status_screen() {
|
||||
*/
|
||||
|
||||
clear_custom_char(&new_char);
|
||||
const uint8_t ypix = MIN(upper_left.y_pixel_offset + pixels_per_y_mesh_pnt, HD44780_CHAR_HEIGHT);
|
||||
const uint8_t ypix = _MIN(upper_left.y_pixel_offset + pixels_per_y_mesh_pnt, HD44780_CHAR_HEIGHT);
|
||||
for (j = upper_left.y_pixel_offset; j < ypix; j++) {
|
||||
i = upper_left.x_pixel_mask;
|
||||
for (k = 0; k < pixels_per_x_mesh_pnt; k++) {
|
||||
|
@ -1170,7 +1170,7 @@
|
||||
#define STATUS_LOGO_X 0
|
||||
#endif
|
||||
#ifndef STATUS_LOGO_Y
|
||||
#define STATUS_LOGO_Y MIN(0, 10 - (STATUS_LOGO_HEIGHT) / 2)
|
||||
#define STATUS_LOGO_Y _MIN(0, 10 - (STATUS_LOGO_HEIGHT) / 2)
|
||||
#endif
|
||||
#ifndef STATUS_LOGO_HEIGHT
|
||||
#define STATUS_LOGO_HEIGHT (sizeof(status_logo_bmp) / (STATUS_LOGO_BYTEWIDTH))
|
||||
|
@ -96,7 +96,7 @@ FORCE_INLINE void _draw_centered_temp(const int16_t temp, const uint8_t tx, cons
|
||||
#define CHAMBER_ALT() false
|
||||
#endif
|
||||
|
||||
#define MAX_HOTEND_DRAW MIN(HOTENDS, ((LCD_PIXEL_WIDTH - (STATUS_LOGO_BYTEWIDTH + STATUS_FAN_BYTEWIDTH) * 8) / (STATUS_HEATERS_XSPACE)))
|
||||
#define MAX_HOTEND_DRAW _MIN(HOTENDS, ((LCD_PIXEL_WIDTH - (STATUS_LOGO_BYTEWIDTH + STATUS_FAN_BYTEWIDTH) * 8) / (STATUS_HEATERS_XSPACE)))
|
||||
#define STATUS_HEATERS_BOT (STATUS_HEATERS_Y + STATUS_HEATERS_HEIGHT - 1)
|
||||
|
||||
#if ENABLED(MARLIN_DEV_MODE)
|
||||
|
@ -169,7 +169,7 @@ void MarlinUI::set_font(const MarlinFont font_nr) {
|
||||
text_width_1 = (sizeof(STRING_SPLASH_LINE1) - 1) * (MENU_FONT_WIDTH),
|
||||
text_width_2 = (sizeof(STRING_SPLASH_LINE2) - 1) * (MENU_FONT_WIDTH);
|
||||
#endif
|
||||
constexpr uint8_t text_max_width = MAX(text_width_1, text_width_2),
|
||||
constexpr uint8_t text_max_width = _MAX(text_width_1, text_width_2),
|
||||
rspace = width - (START_BMPWIDTH);
|
||||
|
||||
int8_t offx, offy, txt_base, txt_offx_1, txt_offx_2;
|
||||
|
@ -99,7 +99,7 @@
|
||||
#endif
|
||||
|
||||
inline float clamp(const float value, const float minimum, const float maximum) {
|
||||
return MAX(MIN(value, maximum), minimum);
|
||||
return _MAX(_MIN(value, maximum), minimum);
|
||||
}
|
||||
|
||||
static struct {
|
||||
|
@ -80,7 +80,7 @@ bool last_printing_status = false;
|
||||
// Everything written needs the high bit set.
|
||||
void write_to_lcd_P(PGM_P const message) {
|
||||
char encoded_message[MAX_CURLY_COMMAND];
|
||||
uint8_t message_length = MIN(strlen_P(message), sizeof(encoded_message));
|
||||
uint8_t message_length = _MIN(strlen_P(message), sizeof(encoded_message));
|
||||
|
||||
for (uint8_t i = 0; i < message_length; i++)
|
||||
encoded_message[i] = pgm_read_byte(&message[i]) | 0x80;
|
||||
@ -90,7 +90,7 @@ void write_to_lcd_P(PGM_P const message) {
|
||||
|
||||
void write_to_lcd(const char * const message) {
|
||||
char encoded_message[MAX_CURLY_COMMAND];
|
||||
const uint8_t message_length = MIN(strlen(message), sizeof(encoded_message));
|
||||
const uint8_t message_length = _MIN(strlen(message), sizeof(encoded_message));
|
||||
|
||||
for (uint8_t i = 0; i < message_length; i++)
|
||||
encoded_message[i] = message[i] | 0x80;
|
||||
|
@ -89,12 +89,12 @@ void MazeGame::game_screen() {
|
||||
// for (uint8_t n = 0; n < head_ind; ++n) {
|
||||
// const pos_t &p = maze_walls[n], &q = maze_walls[n + 1];
|
||||
// if (p.x == q.x) {
|
||||
// const int8_t y1 = GAMEY(MIN(p.y, q.y)), y2 = GAMEY(MAX(p.y, q.y));
|
||||
// const int8_t y1 = GAMEY(_MIN(p.y, q.y)), y2 = GAMEY(_MAX(p.y, q.y));
|
||||
// if (PAGE_CONTAINS(y1, y2))
|
||||
// u8g.drawVLine(GAMEX(p.x), y1, y2 - y1 + 1);
|
||||
// }
|
||||
// else if (PAGE_CONTAINS(GAMEY(p.y), GAMEY(p.y))) {
|
||||
// const int8_t x1 = GAMEX(MIN(p.x, q.x)), x2 = GAMEX(MAX(p.x, q.x));
|
||||
// const int8_t x1 = GAMEX(_MIN(p.x, q.x)), x2 = GAMEX(_MAX(p.x, q.x));
|
||||
// u8g.drawHLine(x1, GAMEY(p.y), x2 - x1 + 1);
|
||||
// }
|
||||
// }
|
||||
|
@ -102,10 +102,10 @@ inline bool food_on_line() {
|
||||
for (uint8_t n = 0; n < head_ind; ++n) {
|
||||
pos_t &p = snake_tail[n], &q = snake_tail[n + 1];
|
||||
if (p.x == q.x) {
|
||||
if ((foodx == p.x - 1 || foodx == p.x) && WITHIN(foody, MIN(p.y, q.y), MAX(p.y, q.y)))
|
||||
if ((foodx == p.x - 1 || foodx == p.x) && WITHIN(foody, _MIN(p.y, q.y), _MAX(p.y, q.y)))
|
||||
return true;
|
||||
}
|
||||
else if ((foody == p.y - 1 || foody == p.y) && WITHIN(foodx, MIN(p.x, q.x), MAX(p.x, q.x)))
|
||||
else if ((foody == p.y - 1 || foody == p.y) && WITHIN(foodx, _MIN(p.x, q.x), _MAX(p.x, q.x)))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@ -164,9 +164,9 @@ bool snake_overlap() {
|
||||
const pos_t &p = snake_tail[n], &q = snake_tail[n + 1];
|
||||
if (p.x != q.x) {
|
||||
// Crossing horizontal segment
|
||||
if (WITHIN(h1.x, MIN(p.x, q.x), MAX(p.x, q.x)) && (h1.y <= p.y) == (h2.y >= p.y)) return true;
|
||||
if (WITHIN(h1.x, _MIN(p.x, q.x), _MAX(p.x, q.x)) && (h1.y <= p.y) == (h2.y >= p.y)) return true;
|
||||
} // Overlapping vertical segment
|
||||
else if (h1.x == p.x && MIN(h1.y, h2.y) <= MAX(p.y, q.y) && MAX(h1.y, h2.y) >= MIN(p.y, q.y)) return true;
|
||||
else if (h1.x == p.x && _MIN(h1.y, h2.y) <= _MAX(p.y, q.y) && _MAX(h1.y, h2.y) >= _MIN(p.y, q.y)) return true;
|
||||
}
|
||||
}
|
||||
else {
|
||||
@ -176,9 +176,9 @@ bool snake_overlap() {
|
||||
const pos_t &p = snake_tail[n], &q = snake_tail[n + 1];
|
||||
if (p.y != q.y) {
|
||||
// Crossing vertical segment
|
||||
if (WITHIN(h1.y, MIN(p.y, q.y), MAX(p.y, q.y)) && (h1.x <= p.x) == (h2.x >= p.x)) return true;
|
||||
if (WITHIN(h1.y, _MIN(p.y, q.y), _MAX(p.y, q.y)) && (h1.x <= p.x) == (h2.x >= p.x)) return true;
|
||||
} // Overlapping horizontal segment
|
||||
else if (h1.y == p.y && MIN(h1.x, h2.x) <= MAX(p.x, q.x) && MAX(h1.x, h2.x) >= MIN(p.x, q.x)) return true;
|
||||
else if (h1.y == p.y && _MIN(h1.x, h2.x) <= _MAX(p.x, q.x) && _MAX(h1.x, h2.x) >= _MIN(p.x, q.x)) return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
@ -254,12 +254,12 @@ void SnakeGame::game_screen() {
|
||||
for (uint8_t n = 0; n < head_ind; ++n) {
|
||||
const pos_t &p = snake_tail[n], &q = snake_tail[n + 1];
|
||||
if (p.x == q.x) {
|
||||
const int8_t y1 = GAMEY(MIN(p.y, q.y)), y2 = GAMEY(MAX(p.y, q.y));
|
||||
const int8_t y1 = GAMEY(_MIN(p.y, q.y)), y2 = GAMEY(_MAX(p.y, q.y));
|
||||
if (PAGE_CONTAINS(y1, y2))
|
||||
u8g.drawVLine(GAMEX(p.x), y1, y2 - y1 + 1);
|
||||
}
|
||||
else if (PAGE_CONTAINS(GAMEY(p.y), GAMEY(p.y))) {
|
||||
const int8_t x1 = GAMEX(MIN(p.x, q.x)), x2 = GAMEX(MAX(p.x, q.x));
|
||||
const int8_t x1 = GAMEX(_MIN(p.x, q.x)), x2 = GAMEX(_MAX(p.x, q.x));
|
||||
u8g.drawHLine(x1, GAMEY(p.y), x2 - x1 + 1);
|
||||
}
|
||||
}
|
||||
@ -270,14 +270,14 @@ void SnakeGame::game_screen() {
|
||||
for (uint8_t n = 0; n < head_ind; ++n) {
|
||||
const pos_t &p = snake_tail[n], &q = snake_tail[n + 1];
|
||||
if (p.x == q.x) {
|
||||
const int8_t y1 = GAMEY(MIN(p.y, q.y)), y2 = GAMEY(MAX(p.y, q.y));
|
||||
const int8_t y1 = GAMEY(_MIN(p.y, q.y)), y2 = GAMEY(_MAX(p.y, q.y));
|
||||
if (PAGE_CONTAINS(y1, y2 + 1))
|
||||
u8g.drawFrame(GAMEX(p.x), y1, 2, y2 - y1 + 1 + 1);
|
||||
}
|
||||
else {
|
||||
const int8_t py = GAMEY(p.y);
|
||||
if (PAGE_CONTAINS(py, py + 1)) {
|
||||
const int8_t x1 = GAMEX(MIN(p.x, q.x)), x2 = GAMEX(MAX(p.x, q.x));
|
||||
const int8_t x1 = GAMEX(_MIN(p.x, q.x)), x2 = GAMEX(_MAX(p.x, q.x));
|
||||
u8g.drawFrame(x1, py, x2 - x1 + 1 + 1, 2);
|
||||
}
|
||||
}
|
||||
@ -289,7 +289,7 @@ void SnakeGame::game_screen() {
|
||||
for (uint8_t n = 0; n < head_ind; ++n) {
|
||||
const pos_t &p = snake_tail[n], &q = snake_tail[n + 1];
|
||||
if (p.x == q.x) {
|
||||
const int8_t y1 = MIN(p.y, q.y), y2 = MAX(p.y, q.y);
|
||||
const int8_t y1 = _MIN(p.y, q.y), y2 = _MAX(p.y, q.y);
|
||||
if (PAGE_CONTAINS(GAMEY(y1), GAMEY(y2) + SNAKE_SIZ - 1)) {
|
||||
for (int8_t i = y1; i <= y2; ++i) {
|
||||
const int8_t y = GAMEY(i);
|
||||
@ -301,7 +301,7 @@ void SnakeGame::game_screen() {
|
||||
else {
|
||||
const int8_t py = GAMEY(p.y);
|
||||
if (PAGE_CONTAINS(py, py + SNAKE_SIZ - 1)) {
|
||||
const int8_t x1 = MIN(p.x, q.x), x2 = MAX(p.x, q.x);
|
||||
const int8_t x1 = _MIN(p.x, q.x), x2 = _MAX(p.x, q.x);
|
||||
for (int8_t i = x1; i <= x2; ++i)
|
||||
u8g.drawBox(GAMEX(i), py, SNAKE_SIZ, SNAKE_SIZ);
|
||||
}
|
||||
|
@ -326,7 +326,7 @@ void scroll_screen(const uint8_t limit, const bool is_menu) {
|
||||
screen_changed = false;
|
||||
}
|
||||
if (screen_items > 0 && encoderLine >= screen_items - limit) {
|
||||
encoderLine = MAX(0, screen_items - limit);
|
||||
encoderLine = _MAX(0, screen_items - limit);
|
||||
ui.encoderPosition = encoderLine * (ENCODER_STEPS_PER_MENU_ITEM);
|
||||
}
|
||||
if (is_menu) {
|
||||
|
@ -192,8 +192,8 @@ class TMenuItem : MenuItemBase {
|
||||
public:
|
||||
static void action_edit(PGM_P const pstr, type_t * const ptr, const type_t minValue, const type_t maxValue, const screenFunc_t callback=nullptr, const bool live=false) {
|
||||
// Make sure minv and maxv fit within int16_t
|
||||
const int32_t minv = MAX(scale(minValue), INT_MIN),
|
||||
maxv = MIN(scale(maxValue), INT_MAX);
|
||||
const int32_t minv = _MAX(scale(minValue), INT_MIN),
|
||||
maxv = _MIN(scale(maxValue), INT_MAX);
|
||||
init(pstr, ptr, minv, maxv - minv, scale(*ptr) - minv, edit, callback, live);
|
||||
}
|
||||
static void edit() { MenuItemBase::edit(to_string, load); }
|
||||
|
@ -283,20 +283,20 @@ static void lcd_factory_settings() {
|
||||
|
||||
void _menu_configuration_preheat_settings(const uint8_t material) {
|
||||
#if HOTENDS > 5
|
||||
#define MINTEMP_ALL MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP, HEATER_4_MINTEMP, HEATER_5_MINTEMP)
|
||||
#define MAXTEMP_ALL MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP, HEATER_5_MAXTEMP)
|
||||
#define MINTEMP_ALL _MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP, HEATER_4_MINTEMP, HEATER_5_MINTEMP)
|
||||
#define MAXTEMP_ALL _MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP, HEATER_5_MAXTEMP)
|
||||
#elif HOTENDS > 4
|
||||
#define MINTEMP_ALL MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP, HEATER_4_MINTEMP)
|
||||
#define MAXTEMP_ALL MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP)
|
||||
#define MINTEMP_ALL _MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP, HEATER_4_MINTEMP)
|
||||
#define MAXTEMP_ALL _MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP)
|
||||
#elif HOTENDS > 3
|
||||
#define MINTEMP_ALL MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP)
|
||||
#define MAXTEMP_ALL MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP)
|
||||
#define MINTEMP_ALL _MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP)
|
||||
#define MAXTEMP_ALL _MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP)
|
||||
#elif HOTENDS > 2
|
||||
#define MINTEMP_ALL MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP)
|
||||
#define MAXTEMP_ALL MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP)
|
||||
#define MINTEMP_ALL _MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP)
|
||||
#define MAXTEMP_ALL _MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP)
|
||||
#elif HOTENDS > 1
|
||||
#define MINTEMP_ALL MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP)
|
||||
#define MAXTEMP_ALL MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP)
|
||||
#define MINTEMP_ALL _MIN(HEATER_0_MINTEMP, HEATER_1_MINTEMP)
|
||||
#define MAXTEMP_ALL _MAX(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP)
|
||||
#else
|
||||
#define MINTEMP_ALL HEATER_0_MINTEMP
|
||||
#define MAXTEMP_ALL HEATER_0_MAXTEMP
|
||||
|
@ -39,7 +39,7 @@
|
||||
void _man_probe_pt(const float &rx, const float &ry) {
|
||||
do_blocking_move_to(rx, ry, Z_CLEARANCE_BETWEEN_PROBES);
|
||||
ui.synchronize();
|
||||
move_menu_scale = MAX(PROBE_MANUALLY_STEP, MIN_STEPS_PER_SEGMENT / float(DEFAULT_XYZ_STEPS_PER_UNIT));
|
||||
move_menu_scale = _MAX(PROBE_MANUALLY_STEP, MIN_STEPS_PER_SEGMENT / float(DEFAULT_XYZ_STEPS_PER_UNIT));
|
||||
ui.goto_screen(lcd_move_z);
|
||||
}
|
||||
|
||||
|
@ -48,7 +48,7 @@ uint8_t MarlinUI::preheat_fan_speed[2];
|
||||
//
|
||||
|
||||
void _lcd_preheat(const int16_t endnum, const int16_t temph, const int16_t tempb, const uint8_t fan) {
|
||||
if (temph > 0) thermalManager.setTargetHotend(MIN(heater_maxtemp[endnum] - 15, temph), endnum);
|
||||
if (temph > 0) thermalManager.setTargetHotend(_MIN(heater_maxtemp[endnum] - 15, temph), endnum);
|
||||
#if HAS_HEATED_BED
|
||||
if (tempb >= 0) thermalManager.setTargetBed(tempb);
|
||||
#else
|
||||
|
@ -150,7 +150,7 @@ millis_t next_button_update_ms;
|
||||
static uint8_t filename_scroll_hash;
|
||||
if (filename_scroll_hash != hash) { // If the hash changed...
|
||||
filename_scroll_hash = hash; // Save the new hash
|
||||
filename_scroll_max = MAX(0, utf8_strlen(theCard.longFilename) - maxlen); // Update the scroll limit
|
||||
filename_scroll_max = _MAX(0, utf8_strlen(theCard.longFilename) - maxlen); // Update the scroll limit
|
||||
filename_scroll_pos = 0; // Reset scroll to the start
|
||||
lcd_status_update_delay = 8; // Don't scroll right away
|
||||
}
|
||||
|
@ -293,7 +293,7 @@ public:
|
||||
#if HAS_PRINT_PROGRESS
|
||||
#if ENABLED(LCD_SET_PROGRESS_MANUALLY)
|
||||
static uint8_t progress_bar_percent;
|
||||
static void set_progress(const uint8_t progress) { progress_bar_percent = MIN(progress, 100); }
|
||||
static void set_progress(const uint8_t progress) { progress_bar_percent = _MIN(progress, 100); }
|
||||
#endif
|
||||
static uint8_t get_progress();
|
||||
#else
|
||||
|
Reference in New Issue
Block a user