🐛 Fixes for ProUI, build rename (#26177)

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
This commit is contained in:
GHGiampy 2023-08-19 22:53:45 +02:00 committed by GitHub
parent 1d17c34e12
commit f7d5188b2f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 61 additions and 39 deletions

View file

@ -30,7 +30,7 @@
class CaseLight {
public:
static bool on;
#if ENABLED(CASELIGHT_USES_BRIGHTNESS)
#if CASELIGHT_USES_BRIGHTNESS
static uint8_t brightness;
#endif

View file

@ -214,13 +214,13 @@ Menu *prepareMenu = nullptr;
Menu *trammingMenu = nullptr;
#endif
Menu *moveMenu = nullptr;
Menu *ControlMenu = nullptr;
Menu *AdvancedSettings = nullptr;
Menu *controlMenu = nullptr;
Menu *advancedSettingsMenu = nullptr;
#if HAS_HOME_OFFSET
Menu *homeOffsetMenu = nullptr;
#endif
#if HAS_BED_PROBE
Menu *ProbeSetMenu = nullptr;
Menu *probeSettingsMenu = nullptr;
#endif
Menu *filSetMenu = nullptr;
Menu *selectColorMenu = nullptr;
@ -229,7 +229,7 @@ Menu *tuneMenu = nullptr;
Menu *motionMenu = nullptr;
Menu *filamentMenu = nullptr;
#if ENABLED(MESH_BED_LEVELING)
Menu *manualMesh = nullptr;
Menu *manualMeshMenu = nullptr;
#endif
#if HAS_PREHEAT
Menu *preheatMenu = nullptr;
@ -251,7 +251,7 @@ Menu *stepsMenu = nullptr;
#if ENABLED(PIDTEMPBED) && ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU)
Menu *bedPIDMenu = nullptr;
#endif
#if ENABLED(CASELIGHT_USES_BRIGHTNESS)
#if CASELIGHT_USES_BRIGHTNESS
Menu *caseLightMenu = nullptr;
#endif
#if ENABLED(LED_CONTROL_MENU)
@ -2152,9 +2152,10 @@ void setMoveZ() { hmiValue.axis = Z_AXIS; setPFloatOnClick(Z_MIN_POS, Z_MAX_POS,
toggleCheckboxLine(caselight.on);
caselight.update_enabled();
}
#if ENABLED(CASELIGHT_USES_BRIGHTNESS)
#if CASELIGHT_USES_BRIGHTNESS
bool enableLiveCaseLightBrightness = true;
void liveCaseLightBrightness() { caselight.brightness = menuData.value; caselight.update_brightness(); }
void setCaseLightBrightness() { setIntOnClick(0, 255, caselight.brightness, nullptr, liveCaseLightBrightness); }
void setCaseLightBrightness() { setIntOnClick(0, 255, caselight.brightness, liveCaseLightBrightness, enableLiveCaseLightBrightness ? liveCaseLightBrightness : nullptr); }
#endif
#endif
@ -2166,10 +2167,12 @@ void setMoveZ() { hmiValue.axis = Z_AXIS; setPFloatOnClick(Z_MIN_POS, Z_MAX_POS,
}
#endif
#if HAS_COLOR_LEDS
bool enableLiveLedColor = true;
void applyLEDColor() {
hmiData.ledColor = LEDColor( {leds.color.r, leds.color.g, leds.color.b OPTARG(HAS_WHITE_LED, hmiData.ledColor.w) } );
if (!enableLiveLedColor) leds.update();
}
void liveLEDColor(uint8_t *color) { *color = menuData.value; leds.update(); }
void liveLEDColor(uint8_t *color) { *color = menuData.value; if (enableLiveLedColor) leds.update(); }
void liveLEDColorR() { liveLEDColor(&leds.color.r); }
void liveLEDColorG() { liveLEDColor(&leds.color.g); }
void liveLEDColorB() { liveLEDColor(&leds.color.b); }
@ -3039,35 +3042,37 @@ void drawPrepareMenu() {
void drawControlMenu() {
checkkey = ID_Menu;
if (SET_MENU_R(ControlMenu, selrect({103, 1, 28, 14}), MSG_CONTROL, 11)) {
if (SET_MENU_R(controlMenu, selrect({103, 1, 28, 14}), MSG_CONTROL, 11)) {
BACK_ITEM(gotoMainMenu);
MENU_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawTempSubMenu, drawTemperatureMenu);
MENU_ITEM(ICON_Motion, MSG_MOTION, onDrawMotionSubMenu, drawMotionMenu);
#if ENABLED(EEPROM_SETTINGS)
MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawWriteEeprom, writeEEPROM);
MENU_ITEM(ICON_ReadEEPROM, MSG_LOAD_EEPROM, onDrawReadEeprom, readEEPROM);
MENU_ITEM(ICON_ResumeEEPROM, MSG_RESTORE_DEFAULTS, onDrawResetEeprom, resetEEPROM);
#endif
MENU_ITEM(ICON_Reboot, MSG_RESET_PRINTER, onDrawMenuItem, rebootPrinter);
#if ENABLED(CASE_LIGHT_MENU)
#if ENABLED(CASELIGHT_USES_BRIGHTNESS)
#if CASELIGHT_USES_BRIGHTNESS
enableLiveCaseLightBrightness = true; // Allow live update of brightness in control menu
MENU_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawSubMenu, drawCaseLightMenu);
#else
MENU_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, setCaseLight, &caselight.on);
#endif
#endif
#if ENABLED(LED_CONTROL_MENU)
enableLiveLedColor = true; // Allow live update of color in control menu
MENU_ITEM(ICON_LedControl, MSG_LED_CONTROL, onDrawSubMenu, drawLedControlMenu);
#endif
#if ENABLED(EEPROM_SETTINGS)
MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawWriteEeprom, writeEEPROM);
MENU_ITEM(ICON_ReadEEPROM, MSG_LOAD_EEPROM, onDrawReadEeprom, readEEPROM);
MENU_ITEM(ICON_ResumeEEPROM, MSG_RESTORE_DEFAULTS, onDrawResetEeprom, resetEEPROM);
#endif
MENU_ITEM(ICON_Reboot, MSG_RESET_PRINTER, onDrawMenuItem, rebootPrinter);
MENU_ITEM(ICON_Info, MSG_INFO_SCREEN, onDrawInfoSubMenu, gotoInfoMenu);
}
ui.reset_status(true);
updateMenu(ControlMenu);
updateMenu(controlMenu);
}
void drawAdvancedSettingsMenu() {
checkkey = ID_Menu;
if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 23)) {
if (SET_MENU(advancedSettingsMenu, MSG_ADVANCED_SETTINGS, 23)) {
BACK_ITEM(gotoMainMenu);
#if ENABLED(EEPROM_SETTINGS)
MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM);
@ -3129,7 +3134,7 @@ void drawAdvancedSettingsMenu() {
#endif
}
ui.reset_status(true);
updateMenu(AdvancedSettings);
updateMenu(advancedSettingsMenu);
}
void drawMoveMenu() {
@ -3180,7 +3185,7 @@ void drawMoveMenu() {
void drawProbeSetMenu() {
checkkey = ID_Menu;
if (SET_MENU(ProbeSetMenu, MSG_ZPROBE_SETTINGS, 9)) {
if (SET_MENU(probeSettingsMenu, MSG_ZPROBE_SETTINGS, 9)) {
BACK_ITEM(drawAdvancedSettingsMenu);
#if HAS_X_AXIS
EDIT_ITEM(ICON_ProbeOffsetX, MSG_ZPROBE_XOFFSET, onDrawPFloatMenu, setProbeOffsetX, &probe.offset.x);
@ -3203,7 +3208,7 @@ void drawMoveMenu() {
MENU_ITEM(ICON_ProbeTest, MSG_M48_TEST, onDrawMenuItem, probeTest);
#endif
}
updateMenu(ProbeSetMenu);
updateMenu(probeSettingsMenu);
}
#endif // HAS_BED_PROBE
@ -3251,7 +3256,7 @@ void drawFilSetMenu() {
void drawLedControlMenu() {
checkkey = ID_Menu;
if (SET_MENU(ledControlMenu, MSG_LED_CONTROL, 10)) {
BACK_ITEM(drawControlMenu);
BACK_ITEM((currentMenu == tuneMenu) ? drawTuneMenu : drawControlMenu);
#if !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL)
EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, setLedStatus, &leds.lights_on);
#endif
@ -3282,7 +3287,7 @@ void drawFilSetMenu() {
void drawTuneMenu() {
checkkey = ID_Menu;
if (SET_MENU_R(tuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, 17)) {
if (SET_MENU_R(tuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, 18)) {
BACK_ITEM(gotoPrintProcess);
EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawSpeedItem, setSpeed, &feedrate_percentage);
#if HAS_HOTEND
@ -3327,6 +3332,16 @@ void drawTuneMenu() {
#endif
#if ENABLED(CASE_LIGHT_MENU)
EDIT_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, setCaseLight, &caselight.on);
#if CASELIGHT_USES_BRIGHTNESS
// Avoid heavy interference with print job disabling live update of brightness in tune menu
enableLiveCaseLightBrightness = false;
EDIT_ITEM(ICON_Brightness, MSG_CASE_LIGHT_BRIGHTNESS, onDrawPInt8Menu, setCaseLightBrightness, &caselight.brightness);
#endif
#if ENABLED(LED_CONTROL_MENU)
// Avoid heavy interference with print job disabling live update of color in tune menu
enableLiveLedColor = false;
MENU_ITEM(ICON_LedControl, MSG_LED_CONTROL, onDrawSubMenu, drawLedControlMenu);
#endif
#elif ENABLED(LED_CONTROL_MENU) && DISABLED(CASE_LIGHT_USE_NEOPIXEL)
EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, setLedStatus, &leds.lights_on);
#endif
@ -3478,7 +3493,7 @@ void drawMotionMenu() {
void drawManualMeshMenu() {
checkkey = ID_Menu;
if (SET_MENU(manualMesh, MSG_UBL_MANUAL_MESH, 6)) {
if (SET_MENU(manualMeshMenu, MSG_UBL_MANUAL_MESH, 6)) {
BACK_ITEM(drawPrepareMenu);
MENU_ITEM(ICON_ManualMesh, MSG_LEVEL_BED, onDrawMenuItem, manualMeshStart);
mMeshMoveZItem = EDIT_ITEM(ICON_Zoffset, MSG_MOVE_Z, onDrawMMeshMoveZ, setMMeshMoveZ, &current_position.z);
@ -3486,7 +3501,7 @@ void drawMotionMenu() {
MENU_ITEM(ICON_MeshViewer, MSG_MESH_VIEW, onDrawSubMenu, dwinMeshViewer);
MENU_ITEM(ICON_MeshSave, MSG_UBL_SAVE_MESH, onDrawMenuItem, manualMeshSave);
}
updateMenu(manualMesh);
updateMenu(manualMeshMenu);
}
#endif // MESH_BED_LEVELING

View file

@ -35,6 +35,9 @@
#include "../common/encoder.h"
#include "../common/limits.h"
#include "../../../libs/BL24CXX.h"
#if ENABLED(LED_CONTROL_MENU)
#include "../../../feature/leds/leds.h"
#endif
#if ANY(BABYSTEPPING, HAS_BED_PROBE)
#define HAS_ZOFFSET_ITEM 1

View file

@ -66,7 +66,7 @@
#if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS)
#define defColorLeds LEDColorWhite()
#endif
#if ENABLED(CASELIGHT_USES_BRIGHTNESS)
#if CASELIGHT_USES_BRIGHTNESS
#define defCaseLightBrightness 255
#endif
#ifdef Z_AFTER_HOMING

View file

@ -507,25 +507,25 @@ void initMenu() {
bool setMenu(Menu* &menu, FSTR_P fTitle, int8_t totalitems) {
if (!menu) menu = new Menu();
const bool NotCurrent = (currentMenu != menu);
if (NotCurrent) {
const bool notCurrent = (currentMenu != menu);
if (notCurrent) {
menu->menuTitle.setCaption(fTitle);
menuItemsPrepare(totalitems);
}
return NotCurrent;
return notCurrent;
}
bool setMenu(Menu* &menu, frame_rect_t cn, FSTR_P fTitle, int8_t totalitems) {
if (!menu) menu = new Menu();
const bool NotCurrent = (currentMenu != menu);
if (NotCurrent) {
const bool notCurrent = (currentMenu != menu);
if (notCurrent) {
if (cn.w != 0)
menu->menuTitle.setFrame(cn.x, cn.y, cn.w, cn.h);
else
menu->menuTitle.setCaption(fTitle);
menuItemsPrepare(totalitems);
}
return NotCurrent;
return notCurrent;
}
void resetMenu(Menu* &menu) {

View file

@ -183,13 +183,13 @@ void resetMenu(Menu* &menu);
// Invalidate currentMenu to prepare for full menu drawing
void invalidateMenu();
//Update the Menu and Draw if it is valid
// Update the Menu and Draw if it is valid
void updateMenu(Menu* &menu);
//Redraw the current Menu if it is valid
// Redraw the current Menu if it is valid
void ReDrawMenu(bool force=false);
//Redraw selected menu item
// Redraw selected menu item
void ReDrawItem();
// Clear menuItems array and free menuItems elements

View file

@ -407,7 +407,7 @@ void restore_feedrate_and_scaling();
#if HAS_Z_AXIS
#if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING)
#define Z_POST_CLEARANCE hmiData.z_after_homing
#define Z_POST_CLEARANCE hmiData.zAfterHoming
#elif defined(Z_AFTER_HOMING)
#define Z_POST_CLEARANCE Z_AFTER_HOMING
#else

View file

@ -61,6 +61,9 @@ if pioutil.is_pio_build():
def rename_target(source, target, env):
from pathlib import Path
from datetime import datetime
Path(target[0].path).replace(Path(target[0].dir.path, datetime.now().strftime(new_name.replace('{date}', '%Y%m%d').replace('{time}', '%H%M%S'))))
from os import path
_newpath = Path(target[0].dir.path, datetime.now().strftime(new_name.replace('{date}', '%Y%m%d').replace('{time}', '%H%M%S')))
Path(target[0].path).replace(_newpath)
env['PROGNAME'] = path.splitext(_newpath)[0]
marlin.add_post_action(rename_target)

View file

@ -157,7 +157,8 @@ def Upload(source, target, env):
marlin_string_config_h_author = _GetMarlinEnv(MarlinEnv, 'STRING_CONFIG_H_AUTHOR')
# Get firmware upload params
upload_firmware_source_name = str(source[0]) # Source firmware filename
upload_firmware_source_name = env['PROGNAME'] + '.bin' if env['PROGNAME'] else str(source[0])
# Source firmware filename
upload_speed = env['UPLOAD_SPEED'] if 'UPLOAD_SPEED' in env else 115200
# baud rate of serial connection
upload_port = _GetUploadPort(env) # Serial port to use