Standardize active/paused functions

This commit is contained in:
Scott Lahteine
2019-10-02 18:54:20 -05:00
parent 719615a6b6
commit 72d791a736
8 changed files with 34 additions and 19 deletions

View File

@ -30,7 +30,7 @@
#include "../../module/motion.h"
#include "../../module/printcounter.h"
#include "../../gcode/queue.h"
#include "../../sd/cardreader.h"
#if HAS_BUZZER
#include "../../libs/buzzer.h"
#endif
@ -206,8 +206,10 @@ void MenuItem_bool::action(PGM_P pstr, bool *ptr, screenFunc_t callback) {
void _lcd_set_z_fade_height() { set_z_fade_height(lcd_z_fade_height); }
#endif
#include "../../Marlin.h"
bool printer_busy() {
return planner.movesplanned() || IS_SD_PRINTING() || print_job_timer.isRunning();
return planner.movesplanned() || printingIsActive();
}
/**

View File

@ -99,7 +99,7 @@ void menu_main() {
START_MENU();
BACK_ITEM(MSG_WATCH);
const bool busy = IS_SD_PRINTING() || print_job_timer.isRunning()
const bool busy = printingIsActive()
#if ENABLED(SDSUPPORT)
, card_detected = card.isMounted()
, card_open = card_detected && card.isFileOpen()
@ -147,12 +147,7 @@ void menu_main() {
#endif // !HAS_ENCODER_WHEEL && SDSUPPORT
#if MACHINE_CAN_PAUSE
const bool paused = (print_job_timer.isPaused()
#if ENABLED(SDSUPPORT)
|| card.isPaused()
#endif
);
if (paused) ACTION_ITEM(MSG_RESUME_PRINT, ui.resume_print);
if (printingIsPaused()) ACTION_ITEM(MSG_RESUME_PRINT, ui.resume_print);
#endif
SUBMENU(MSG_MOTION, menu_motion);

View File

@ -1427,11 +1427,12 @@ void MarlinUI::update() {
#include "../module/printcounter.h"
static const char print_paused[] PROGMEM = MSG_PRINT_PAUSED;
/**
* Reset the status message
*/
void MarlinUI::reset_status() {
static const char paused[] PROGMEM = MSG_PRINT_PAUSED;
static const char printing[] PROGMEM = MSG_PRINTING;
static const char welcome[] PROGMEM = WELCOME_MSG;
#if SERVICE_INTERVAL_1 > 0
@ -1444,8 +1445,8 @@ void MarlinUI::update() {
static const char service3[] PROGMEM = { "> " SERVICE_NAME_3 "!" };
#endif
PGM_P msg;
if (!IS_SD_PRINTING() && print_job_timer.isPaused())
msg = paused;
if (printingIsPaused())
msg = print_paused;
#if ENABLED(SDSUPPORT)
else if (IS_SD_PRINTING())
return set_status(card.longest_filename(), true);
@ -1508,7 +1509,7 @@ void MarlinUI::update() {
host_prompt_open(PROMPT_PAUSE_RESUME, PSTR("UI Pause"), PSTR("Resume"));
#endif
set_status_P(PSTR(MSG_PRINT_PAUSED));
set_status_P(print_paused); // MSG_PRINT_PAUSED
#if ENABLED(PARK_HEAD_ON_PAUSE)
#if HAS_SPI_LCD
@ -1527,9 +1528,7 @@ void MarlinUI::update() {
#if ENABLED(PARK_HEAD_ON_PAUSE)
wait_for_heatup = wait_for_user = false;
#endif
#if ENABLED(SDSUPPORT)
if (card.isPaused()) queue.inject_P(PSTR("M24"));
#endif
if (IS_SD_PAUSED()) queue.inject_P(PSTR("M24"));
#ifdef ACTION_ON_RESUME
host_action_resume();
#endif