Clean up and finish #5887
This commit is contained in:
parent
eeb490221f
commit
fb4aead2b1
18 changed files with 129 additions and 25 deletions
|
@ -1128,17 +1128,12 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Double Clicking of LCD Panel's Encoder Wheel while at the Status Screen will jump
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
* to the Z-BabyStepping menu.
|
|
||||||
*/
|
*/
|
||||||
//#define DOUBLE_CLICK_JUMPS_TO_Z_BABYSTEPPING
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
#define DOUBLE_CLICK_TIME_WINDOW 1250 // How quickly the double click must be done in miliseconds.
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
// Please notice this time must be a little bit longer than what
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
// is actually desired because there is some latency in detecting a
|
|
||||||
// change in LCD Panel Button Status.
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1108,6 +1108,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1138,6 +1138,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1133,6 +1133,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1127,6 +1127,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1127,6 +1127,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1132,6 +1132,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1127,6 +1127,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -1125,6 +1125,13 @@
|
||||||
*/
|
*/
|
||||||
//#define EXTENDED_CAPABILITIES_REPORT
|
//#define EXTENDED_CAPABILITIES_REPORT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||||
|
*/
|
||||||
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||||
|
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||||
|
// Note: You may need to add extra time to mitigate controller latency.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Volumetric extrusion default state
|
* Volumetric extrusion default state
|
||||||
* Activate to make volumetric extrusion the default method,
|
* Activate to make volumetric extrusion the default method,
|
||||||
|
|
|
@ -51,7 +51,6 @@ int lcd_preheat_hotend_temp[2], lcd_preheat_bed_temp[2], lcd_preheat_fan_speed[2
|
||||||
|
|
||||||
#if ENABLED(BABYSTEPPING)
|
#if ENABLED(BABYSTEPPING)
|
||||||
long babysteps_done = 0;
|
long babysteps_done = 0;
|
||||||
millis_t status_screen_click_time = 0;
|
|
||||||
static void lcd_babystep_z();
|
static void lcd_babystep_z();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -417,22 +416,20 @@ uint16_t max_display_update_time = 0;
|
||||||
* General function to go directly to a screen
|
* General function to go directly to a screen
|
||||||
*/
|
*/
|
||||||
void lcd_goto_screen(screenFunc_t screen, const uint32_t encoder = 0) {
|
void lcd_goto_screen(screenFunc_t screen, const uint32_t encoder = 0) {
|
||||||
#ifdef DOUBLE_CLICK_JUMPS_TO_Z_BABYSTEPPING
|
|
||||||
#if ENABLED(BABYSTEPPING)
|
|
||||||
if (currentScreen==lcd_status_screen && screen==lcd_main_menu) // We are in leaving the status screen to goto the main_menu
|
|
||||||
status_screen_click_time = millis(); // screen. Mark the time so we know how quick the user is
|
|
||||||
// pressing buttons.
|
|
||||||
if (currentScreen==lcd_main_menu) {
|
|
||||||
if ( screen==lcd_status_screen && status_screen_click_time+DOUBLE_CLICK_TIME_WINDOW>millis() ) {
|
|
||||||
lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW;
|
|
||||||
status_screen_click_time = 0;
|
|
||||||
lcd_babystep_z();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
if (currentScreen != screen) {
|
if (currentScreen != screen) {
|
||||||
|
|
||||||
|
#if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING) && ENABLED(BABYSTEPPING)
|
||||||
|
static millis_t doubleclick_expire_ms = 0;
|
||||||
|
// Going to lcd_main_menu from status screen? Remember first click time.
|
||||||
|
// Going back to status screen within a very short time? Go to Z babystepping.
|
||||||
|
if (screen == lcd_main_menu) {
|
||||||
|
if (currentScreen == lcd_status_screen)
|
||||||
|
doubleclick_expire_ms = millis() + DOUBLECLICK_MAX_INTERVAL;
|
||||||
|
}
|
||||||
|
else if (screen == lcd_status_screen && currentScreen == lcd_main_menu && PENDING(millis(), doubleclick_expire_ms))
|
||||||
|
screen = lcd_babystep_z;
|
||||||
|
#endif
|
||||||
|
|
||||||
currentScreen = screen;
|
currentScreen = screen;
|
||||||
encoderPosition = encoder;
|
encoderPosition = encoder;
|
||||||
if (screen == lcd_status_screen) {
|
if (screen == lcd_status_screen) {
|
||||||
|
|
Reference in a new issue