Browse Source

Merge pull request #5289 from thinkyhead/rc_which_menu_actions

Drop "static" keyword in ultralcd.cpp function declarations
Scott Lahteine 8 years ago
parent
commit
2a9b3376a9
1 changed files with 162 additions and 162 deletions
  1. 162
    162
      Marlin/ultralcd.cpp

+ 162
- 162
Marlin/ultralcd.cpp View File

@@ -59,7 +59,7 @@ char lcd_status_message[3 * (LCD_WIDTH) + 1] = WELCOME_MSG; // worst case is kan
59 59
 #endif
60 60
 
61 61
 // The main status screen
62
-static void lcd_status_screen();
62
+void lcd_status_screen();
63 63
 
64 64
 millis_t next_lcd_update_ms;
65 65
 
@@ -114,53 +114,53 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to
114 114
     extern bool case_light_on;
115 115
   #endif
116 116
   const float manual_feedrate_mm_m[] = MANUAL_FEEDRATE;
117
-  static void lcd_main_menu();
118
-  static void lcd_tune_menu();
119
-  static void lcd_prepare_menu();
120
-  static void lcd_move_menu();
121
-  static void lcd_control_menu();
122
-  static void lcd_control_temperature_menu();
123
-  static void lcd_control_temperature_preheat_pla_settings_menu();
124
-  static void lcd_control_temperature_preheat_abs_settings_menu();
125
-  static void lcd_control_motion_menu();
126
-  static void lcd_control_volumetric_menu();
117
+  void lcd_main_menu();
118
+  void lcd_tune_menu();
119
+  void lcd_prepare_menu();
120
+  void lcd_move_menu();
121
+  void lcd_control_menu();
122
+  void lcd_control_temperature_menu();
123
+  void lcd_control_temperature_preheat_pla_settings_menu();
124
+  void lcd_control_temperature_preheat_abs_settings_menu();
125
+  void lcd_control_motion_menu();
126
+  void lcd_control_volumetric_menu();
127 127
 
128 128
   #if ENABLED(DAC_STEPPER_CURRENT)
129
-    static void dac_driver_commit();
130
-    static void dac_driver_getValues();
131
-    static void lcd_dac_menu();
132
-    static void lcd_dac_write_eeprom();
129
+    void dac_driver_commit();
130
+    void dac_driver_getValues();
131
+    void lcd_dac_menu();
132
+    void lcd_dac_write_eeprom();
133 133
   #endif
134 134
 
135 135
   #if ENABLED(LCD_INFO_MENU)
136 136
     #if ENABLED(PRINTCOUNTER)
137
-      static void lcd_info_stats_menu();
137
+      void lcd_info_stats_menu();
138 138
     #endif
139
-    static void lcd_info_thermistors_menu();
140
-    static void lcd_info_board_menu();
141
-    static void lcd_info_menu();
139
+    void lcd_info_thermistors_menu();
140
+    void lcd_info_board_menu();
141
+    void lcd_info_menu();
142 142
   #endif // LCD_INFO_MENU
143 143
 
144 144
   #if ENABLED(FILAMENT_CHANGE_FEATURE)
145
-    static void lcd_filament_change_option_menu();
146
-    static void lcd_filament_change_init_message();
147
-    static void lcd_filament_change_unload_message();
148
-    static void lcd_filament_change_insert_message();
149
-    static void lcd_filament_change_load_message();
150
-    static void lcd_filament_change_extrude_message();
151
-    static void lcd_filament_change_resume_message();
145
+    void lcd_filament_change_option_menu();
146
+    void lcd_filament_change_init_message();
147
+    void lcd_filament_change_unload_message();
148
+    void lcd_filament_change_insert_message();
149
+    void lcd_filament_change_load_message();
150
+    void lcd_filament_change_extrude_message();
151
+    void lcd_filament_change_resume_message();
152 152
   #endif
153 153
 
154 154
   #if HAS_LCD_CONTRAST
155
-    static void lcd_set_contrast();
155
+    void lcd_set_contrast();
156 156
   #endif
157 157
 
158 158
   #if ENABLED(FWRETRACT)
159
-    static void lcd_control_retract_menu();
159
+    void lcd_control_retract_menu();
160 160
   #endif
161 161
 
162 162
   #if ENABLED(DELTA_CALIBRATION_MENU)
163
-    static void lcd_delta_calibrate_menu();
163
+    void lcd_delta_calibrate_menu();
164 164
   #endif
165 165
 
166 166
   #if ENABLED(MANUAL_BED_LEVELING)
@@ -172,35 +172,35 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to
172 172
 
173 173
   // Different types of actions that can be used in menu items.
174 174
   #define menu_action_back(dummy) _menu_action_back()
175
-  static void _menu_action_back();
176
-  static void menu_action_submenu(screenFunc_t data);
177
-  static void menu_action_gcode(const char* pgcode);
178
-  static void menu_action_function(screenFunc_t data);
179
-  static void menu_action_setting_edit_bool(const char* pstr, bool* ptr);
180
-  static void menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue);
181
-  static void menu_action_setting_edit_float3(const char* pstr, float* ptr, float minValue, float maxValue);
182
-  static void menu_action_setting_edit_float32(const char* pstr, float* ptr, float minValue, float maxValue);
183
-  static void menu_action_setting_edit_float43(const char* pstr, float* ptr, float minValue, float maxValue);
184
-  static void menu_action_setting_edit_float5(const char* pstr, float* ptr, float minValue, float maxValue);
185
-  static void menu_action_setting_edit_float51(const char* pstr, float* ptr, float minValue, float maxValue);
186
-  static void menu_action_setting_edit_float52(const char* pstr, float* ptr, float minValue, float maxValue);
187
-  static void menu_action_setting_edit_float62(const char* pstr, float* ptr, float minValue, float maxValue);
188
-  static void menu_action_setting_edit_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue);
189
-  static void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, screenFunc_t callbackFunc);
190
-  static void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, screenFunc_t callbackFunc);
191
-  static void menu_action_setting_edit_callback_float3(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
192
-  static void menu_action_setting_edit_callback_float32(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
193
-  static void menu_action_setting_edit_callback_float43(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
194
-  static void menu_action_setting_edit_callback_float5(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
195
-  static void menu_action_setting_edit_callback_float51(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
196
-  static void menu_action_setting_edit_callback_float52(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
197
-  static void menu_action_setting_edit_callback_float62(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
198
-  static void menu_action_setting_edit_callback_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue, screenFunc_t callbackFunc);
175
+  void _menu_action_back();
176
+  void menu_action_submenu(screenFunc_t data);
177
+  void menu_action_gcode(const char* pgcode);
178
+  void menu_action_function(screenFunc_t data);
179
+  void menu_action_setting_edit_bool(const char* pstr, bool* ptr);
180
+  void menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue);
181
+  void menu_action_setting_edit_float3(const char* pstr, float* ptr, float minValue, float maxValue);
182
+  void menu_action_setting_edit_float32(const char* pstr, float* ptr, float minValue, float maxValue);
183
+  void menu_action_setting_edit_float43(const char* pstr, float* ptr, float minValue, float maxValue);
184
+  void menu_action_setting_edit_float5(const char* pstr, float* ptr, float minValue, float maxValue);
185
+  void menu_action_setting_edit_float51(const char* pstr, float* ptr, float minValue, float maxValue);
186
+  void menu_action_setting_edit_float52(const char* pstr, float* ptr, float minValue, float maxValue);
187
+  void menu_action_setting_edit_float62(const char* pstr, float* ptr, float minValue, float maxValue);
188
+  void menu_action_setting_edit_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue);
189
+  void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, screenFunc_t callbackFunc);
190
+  void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, screenFunc_t callbackFunc);
191
+  void menu_action_setting_edit_callback_float3(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
192
+  void menu_action_setting_edit_callback_float32(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
193
+  void menu_action_setting_edit_callback_float43(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
194
+  void menu_action_setting_edit_callback_float5(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
195
+  void menu_action_setting_edit_callback_float51(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
196
+  void menu_action_setting_edit_callback_float52(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
197
+  void menu_action_setting_edit_callback_float62(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc);
198
+  void menu_action_setting_edit_callback_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue, screenFunc_t callbackFunc);
199 199
 
200 200
   #if ENABLED(SDSUPPORT)
201
-    static void lcd_sdcard_menu();
202
-    static void menu_action_sdfile(const char* filename, char* longFilename);
203
-    static void menu_action_sddirectory(const char* filename, char* longFilename);
201
+    void lcd_sdcard_menu();
202
+    void menu_action_sdfile(const char* filename, char* longFilename);
203
+    void menu_action_sddirectory(const char* filename, char* longFilename);
204 204
   #endif
205 205
 
206 206
   /* Helper macros for menus */
@@ -394,7 +394,7 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to
394 394
   /**
395 395
    * General function to go directly to a screen
396 396
    */
397
-  static void lcd_goto_screen(screenFunc_t screen, const uint32_t encoder = 0) {
397
+  void lcd_goto_screen(screenFunc_t screen, const uint32_t encoder = 0) {
398 398
     if (currentScreen != screen) {
399 399
       currentScreen = screen;
400 400
       encoderPosition = encoder;
@@ -411,7 +411,7 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to
411 411
     }
412 412
   }
413 413
 
414
-  static void lcd_return_to_status() { lcd_goto_screen(lcd_status_screen); }
414
+  void lcd_return_to_status() { lcd_goto_screen(lcd_status_screen); }
415 415
 
416 416
   inline void lcd_save_previous_menu() {
417 417
     if (screen_history_depth < COUNT(screen_history)) {
@@ -421,7 +421,7 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to
421 421
     }
422 422
   }
423 423
 
424
-  static void lcd_goto_previous_menu() {
424
+  void lcd_goto_previous_menu() {
425 425
     if (screen_history_depth > 0) {
426 426
       --screen_history_depth;
427 427
       lcd_goto_screen(
@@ -442,7 +442,7 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to
442 442
  * This is very display-dependent, so the lcd implementation draws this.
443 443
  */
444 444
 
445
-static void lcd_status_screen() {
445
+void lcd_status_screen() {
446 446
 
447 447
   #if ENABLED(ULTIPANEL)
448 448
     ENCODER_DIRECTION_NORMAL();
@@ -552,17 +552,17 @@ void kill_screen(const char* lcd_msg) {
552 552
 
553 553
   #if ENABLED(SDSUPPORT)
554 554
 
555
-    static void lcd_sdcard_pause() {
555
+    void lcd_sdcard_pause() {
556 556
       card.pauseSDPrint();
557 557
       print_job_timer.pause();
558 558
     }
559 559
 
560
-    static void lcd_sdcard_resume() {
560
+    void lcd_sdcard_resume() {
561 561
       card.startFileprint();
562 562
       print_job_timer.start();
563 563
     }
564 564
 
565
-    static void lcd_sdcard_stop() {
565
+    void lcd_sdcard_stop() {
566 566
       card.stopSDPrint();
567 567
       clear_command_queue();
568 568
       quickstop_stepper();
@@ -582,7 +582,7 @@ void kill_screen(const char* lcd_msg) {
582 582
    *
583 583
    */
584 584
 
585
-  static void lcd_main_menu() {
585
+  void lcd_main_menu() {
586 586
     START_MENU();
587 587
     MENU_BACK(MSG_WATCH);
588 588
 
@@ -662,7 +662,7 @@ void kill_screen(const char* lcd_msg) {
662 662
 
663 663
     long babysteps_done = 0;
664 664
 
665
-    static void _lcd_babystep(const AxisEnum axis, const char* msg) {
665
+    void _lcd_babystep(const AxisEnum axis, const char* msg) {
666 666
       if (lcd_clicked) { defer_return_to_status = false; return lcd_goto_previous_menu(); }
667 667
       ENCODER_DIRECTION_NORMAL();
668 668
       if (encoderPosition) {
@@ -679,13 +679,13 @@ void kill_screen(const char* lcd_msg) {
679 679
     }
680 680
 
681 681
     #if ENABLED(BABYSTEP_XY)
682
-      static void _lcd_babystep_x() { _lcd_babystep(X_AXIS, PSTR(MSG_BABYSTEPPING_X)); }
683
-      static void _lcd_babystep_y() { _lcd_babystep(Y_AXIS, PSTR(MSG_BABYSTEPPING_Y)); }
684
-      static void lcd_babystep_x() { lcd_goto_screen(_lcd_babystep_x); babysteps_done = 0; defer_return_to_status = true; }
685
-      static void lcd_babystep_y() { lcd_goto_screen(_lcd_babystep_y); babysteps_done = 0; defer_return_to_status = true; }
682
+      void _lcd_babystep_x() { _lcd_babystep(X_AXIS, PSTR(MSG_BABYSTEPPING_X)); }
683
+      void _lcd_babystep_y() { _lcd_babystep(Y_AXIS, PSTR(MSG_BABYSTEPPING_Y)); }
684
+      void lcd_babystep_x() { lcd_goto_screen(_lcd_babystep_x); babysteps_done = 0; defer_return_to_status = true; }
685
+      void lcd_babystep_y() { lcd_goto_screen(_lcd_babystep_y); babysteps_done = 0; defer_return_to_status = true; }
686 686
     #endif
687
-    static void _lcd_babystep_z() { _lcd_babystep(Z_AXIS, PSTR(MSG_BABYSTEPPING_Z)); }
688
-    static void lcd_babystep_z() { lcd_goto_screen(_lcd_babystep_z); babysteps_done = 0; defer_return_to_status = true; }
687
+    void _lcd_babystep_z() { _lcd_babystep(Z_AXIS, PSTR(MSG_BABYSTEPPING_Z)); }
688
+    void lcd_babystep_z() { lcd_goto_screen(_lcd_babystep_z); babysteps_done = 0; defer_return_to_status = true; }
689 689
 
690 690
   #endif //BABYSTEPPING
691 691
 
@@ -731,7 +731,7 @@ void kill_screen(const char* lcd_msg) {
731 731
   #endif
732 732
 
733 733
   #if ENABLED(FILAMENT_CHANGE_FEATURE)
734
-    static void lcd_enqueue_filament_change() {
734
+    void lcd_enqueue_filament_change() {
735 735
       lcd_filament_change_show_message(FILAMENT_CHANGE_MESSAGE_INIT);
736 736
       enqueue_and_echo_commands_P(PSTR("M600"));
737 737
     }
@@ -742,7 +742,7 @@ void kill_screen(const char* lcd_msg) {
742 742
    * "Tune" submenu
743 743
    *
744 744
    */
745
-  static void lcd_tune_menu() {
745
+  void lcd_tune_menu() {
746 746
     START_MENU();
747 747
 
748 748
     //
@@ -864,13 +864,13 @@ void kill_screen(const char* lcd_msg) {
864 864
    *
865 865
    */
866 866
   #if ENABLED(DAC_STEPPER_CURRENT)
867
-    static void dac_driver_getValues() { LOOP_XYZE(i) driverPercent[i] = dac_current_get_percent((AxisEnum)i); }
867
+    void dac_driver_getValues() { LOOP_XYZE(i) driverPercent[i] = dac_current_get_percent((AxisEnum)i); }
868 868
 
869
-    static void dac_driver_commit() { dac_current_set_percents(driverPercent); }
869
+    void dac_driver_commit() { dac_current_set_percents(driverPercent); }
870 870
 
871
-    static void dac_driver_eeprom_write() { dac_commit_eeprom(); }
871
+    void dac_driver_eeprom_write() { dac_commit_eeprom(); }
872 872
 
873
-    static void lcd_dac_menu() {
873
+    void lcd_dac_menu() {
874 874
       dac_driver_getValues();
875 875
       START_MENU();
876 876
       MENU_BACK(MSG_CONTROL);
@@ -958,7 +958,7 @@ void kill_screen(const char* lcd_msg) {
958 958
 
959 959
   #if TEMP_SENSOR_0 != 0 && (TEMP_SENSOR_1 != 0 || TEMP_SENSOR_2 != 0 || TEMP_SENSOR_3 != 0 || TEMP_SENSOR_BED != 0)
960 960
 
961
-    static void lcd_preheat_pla_menu() {
961
+    void lcd_preheat_pla_menu() {
962 962
       START_MENU();
963 963
       MENU_BACK(MSG_PREPARE);
964 964
       #if HOTENDS == 1
@@ -980,7 +980,7 @@ void kill_screen(const char* lcd_msg) {
980 980
       END_MENU();
981 981
     }
982 982
 
983
-    static void lcd_preheat_abs_menu() {
983
+    void lcd_preheat_abs_menu() {
984 984
       START_MENU();
985 985
       MENU_BACK(MSG_PREPARE);
986 986
       #if HOTENDS == 1
@@ -1014,7 +1014,7 @@ void kill_screen(const char* lcd_msg) {
1014 1014
 
1015 1015
   #if ENABLED(SDSUPPORT) && ENABLED(MENU_ADDAUTOSTART)
1016 1016
 
1017
-    static void lcd_autostart_sd() {
1017
+    void lcd_autostart_sd() {
1018 1018
       card.autostart_index = 0;
1019 1019
       card.setroot();
1020 1020
       card.checkautostart(true);
@@ -1049,9 +1049,9 @@ void kill_screen(const char* lcd_msg) {
1049 1049
       stepper.synchronize();
1050 1050
     }
1051 1051
 
1052
-    static void _lcd_level_goto_next_point();
1052
+    void _lcd_level_goto_next_point();
1053 1053
 
1054
-    static void _lcd_level_bed_done() {
1054
+    void _lcd_level_bed_done() {
1055 1055
       if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_DONE));
1056 1056
       lcdDrawUpdate =
1057 1057
         #if ENABLED(DOGLCD)
@@ -1065,7 +1065,7 @@ void kill_screen(const char* lcd_msg) {
1065 1065
     /**
1066 1066
      * Step 7: Get the Z coordinate, then goto next point or exit
1067 1067
      */
1068
-    static void _lcd_level_bed_get_z() {
1068
+    void _lcd_level_bed_get_z() {
1069 1069
       ENCODER_DIRECTION_NORMAL();
1070 1070
 
1071 1071
       // Encoder wheel adjusts the Z position
@@ -1127,7 +1127,7 @@ void kill_screen(const char* lcd_msg) {
1127 1127
     /**
1128 1128
      * Step 6: Display "Next point: 1 / 9" while waiting for move to finish
1129 1129
      */
1130
-    static void _lcd_level_bed_moving() {
1130
+    void _lcd_level_bed_moving() {
1131 1131
       if (lcdDrawUpdate) {
1132 1132
         char msg[10];
1133 1133
         sprintf_P(msg, PSTR("%i / %u"), (int)(_lcd_level_bed_position + 1), (MESH_NUM_X_POINTS) * (MESH_NUM_Y_POINTS));
@@ -1146,7 +1146,7 @@ void kill_screen(const char* lcd_msg) {
1146 1146
     /**
1147 1147
      * Step 5: Initiate a move to the next point
1148 1148
      */
1149
-    static void _lcd_level_goto_next_point() {
1149
+    void _lcd_level_goto_next_point() {
1150 1150
       // Set the menu to display ahead of blocking call
1151 1151
       lcd_goto_screen(_lcd_level_bed_moving);
1152 1152
 
@@ -1163,7 +1163,7 @@ void kill_screen(const char* lcd_msg) {
1163 1163
      * Step 4: Display "Click to Begin", wait for click
1164 1164
      *         Move to the first probe position
1165 1165
      */
1166
-    static void _lcd_level_bed_homing_done() {
1166
+    void _lcd_level_bed_homing_done() {
1167 1167
       if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_WAITING));
1168 1168
       if (lcd_clicked) {
1169 1169
         _lcd_level_bed_position = 0;
@@ -1180,7 +1180,7 @@ void kill_screen(const char* lcd_msg) {
1180 1180
     /**
1181 1181
      * Step 3: Display "Homing XYZ" - Wait for homing to finish
1182 1182
      */
1183
-    static void _lcd_level_bed_homing() {
1183
+    void _lcd_level_bed_homing() {
1184 1184
       if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_HOMING), NULL);
1185 1185
       lcdDrawUpdate =
1186 1186
         #if ENABLED(DOGLCD)
@@ -1196,7 +1196,7 @@ void kill_screen(const char* lcd_msg) {
1196 1196
     /**
1197 1197
      * Step 2: Continue Bed Leveling...
1198 1198
      */
1199
-    static void _lcd_level_bed_continue() {
1199
+    void _lcd_level_bed_continue() {
1200 1200
       defer_return_to_status = true;
1201 1201
       axis_homed[X_AXIS] = axis_homed[Y_AXIS] = axis_homed[Z_AXIS] = false;
1202 1202
       mbl.reset();
@@ -1207,7 +1207,7 @@ void kill_screen(const char* lcd_msg) {
1207 1207
     /**
1208 1208
      * Step 1: MBL entry-point: "Cancel" or "Level Bed"
1209 1209
      */
1210
-    static void lcd_level_bed() {
1210
+    void lcd_level_bed() {
1211 1211
       START_MENU();
1212 1212
       MENU_BACK(MSG_LEVEL_BED_CANCEL);
1213 1213
       MENU_ITEM(submenu, MSG_LEVEL_BED, _lcd_level_bed_continue);
@@ -1222,7 +1222,7 @@ void kill_screen(const char* lcd_msg) {
1222 1222
    *
1223 1223
    */
1224 1224
 
1225
-  static void lcd_prepare_menu() {
1225
+  void lcd_prepare_menu() {
1226 1226
     START_MENU();
1227 1227
 
1228 1228
     //
@@ -1317,7 +1317,7 @@ void kill_screen(const char* lcd_msg) {
1317 1317
 
1318 1318
   #if ENABLED(DELTA_CALIBRATION_MENU)
1319 1319
 
1320
-    static void _goto_tower_pos(const float &a) {
1320
+    void _goto_tower_pos(const float &a) {
1321 1321
       do_blocking_move_to(
1322 1322
         a < 0 ? X_HOME_POS : sin(a) * -(DELTA_PRINTABLE_RADIUS),
1323 1323
         a < 0 ? Y_HOME_POS : cos(a) *  (DELTA_PRINTABLE_RADIUS),
@@ -1325,12 +1325,12 @@ void kill_screen(const char* lcd_msg) {
1325 1325
       );
1326 1326
     }
1327 1327
 
1328
-    static void _goto_tower_x() { _goto_tower_pos(RADIANS(120)); }
1329
-    static void _goto_tower_y() { _goto_tower_pos(RADIANS(240)); }
1330
-    static void _goto_tower_z() { _goto_tower_pos(0); }
1331
-    static void _goto_center()  { _goto_tower_pos(-1); }
1328
+    void _goto_tower_x() { _goto_tower_pos(RADIANS(120)); }
1329
+    void _goto_tower_y() { _goto_tower_pos(RADIANS(240)); }
1330
+    void _goto_tower_z() { _goto_tower_pos(0); }
1331
+    void _goto_center()  { _goto_tower_pos(-1); }
1332 1332
 
1333
-    static void lcd_delta_calibrate_menu() {
1333
+    void lcd_delta_calibrate_menu() {
1334 1334
       START_MENU();
1335 1335
       MENU_BACK(MSG_MAIN);
1336 1336
       MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28"));
@@ -1378,7 +1378,7 @@ void kill_screen(const char* lcd_msg) {
1378 1378
    *
1379 1379
    */
1380 1380
 
1381
-  static void _lcd_move_xyz(const char* name, AxisEnum axis) {
1381
+  void _lcd_move_xyz(const char* name, AxisEnum axis) {
1382 1382
     if (lcd_clicked) { return lcd_goto_previous_menu(); }
1383 1383
     ENCODER_DIRECTION_NORMAL();
1384 1384
     if (encoderPosition) {
@@ -1411,10 +1411,10 @@ void kill_screen(const char* lcd_msg) {
1411 1411
     }
1412 1412
     if (lcdDrawUpdate) lcd_implementation_drawedit(name, ftostr41sign(current_position[axis]));
1413 1413
   }
1414
-  static void lcd_move_x() { _lcd_move_xyz(PSTR(MSG_MOVE_X), X_AXIS); }
1415
-  static void lcd_move_y() { _lcd_move_xyz(PSTR(MSG_MOVE_Y), Y_AXIS); }
1416
-  static void lcd_move_z() { _lcd_move_xyz(PSTR(MSG_MOVE_Z), Z_AXIS); }
1417
-  static void _lcd_move_e(
1414
+  void lcd_move_x() { _lcd_move_xyz(PSTR(MSG_MOVE_X), X_AXIS); }
1415
+  void lcd_move_y() { _lcd_move_xyz(PSTR(MSG_MOVE_Y), Y_AXIS); }
1416
+  void lcd_move_z() { _lcd_move_xyz(PSTR(MSG_MOVE_Z), Z_AXIS); }
1417
+  void _lcd_move_e(
1418 1418
     #if E_MANUAL > 1
1419 1419
       int8_t eindex=-1
1420 1420
     #endif
@@ -1451,14 +1451,14 @@ void kill_screen(const char* lcd_msg) {
1451 1451
     }
1452 1452
   }
1453 1453
 
1454
-  static void lcd_move_e() { _lcd_move_e(); }
1454
+  void lcd_move_e() { _lcd_move_e(); }
1455 1455
   #if E_MANUAL > 1
1456
-    static void lcd_move_e0() { _lcd_move_e(0); }
1457
-    static void lcd_move_e1() { _lcd_move_e(1); }
1456
+    void lcd_move_e0() { _lcd_move_e(0); }
1457
+    void lcd_move_e1() { _lcd_move_e(1); }
1458 1458
     #if E_MANUAL > 2
1459
-      static void lcd_move_e2() { _lcd_move_e(2); }
1459
+      void lcd_move_e2() { _lcd_move_e(2); }
1460 1460
       #if E_MANUAL > 3
1461
-        static void lcd_move_e3() { _lcd_move_e(3); }
1461
+        void lcd_move_e3() { _lcd_move_e(3); }
1462 1462
       #endif
1463 1463
     #endif
1464 1464
   #endif
@@ -1475,7 +1475,7 @@ void kill_screen(const char* lcd_msg) {
1475 1475
     #define _MOVE_XYZ_ALLOWED true
1476 1476
   #endif
1477 1477
 
1478
-  static void _lcd_move_menu_axis() {
1478
+  void _lcd_move_menu_axis() {
1479 1479
     START_MENU();
1480 1480
     MENU_BACK(MSG_MOVE_AXIS);
1481 1481
 
@@ -1509,15 +1509,15 @@ void kill_screen(const char* lcd_msg) {
1509 1509
     END_MENU();
1510 1510
   }
1511 1511
 
1512
-  static void lcd_move_menu_10mm() {
1512
+  void lcd_move_menu_10mm() {
1513 1513
     move_menu_scale = 10.0;
1514 1514
     _lcd_move_menu_axis();
1515 1515
   }
1516
-  static void lcd_move_menu_1mm() {
1516
+  void lcd_move_menu_1mm() {
1517 1517
     move_menu_scale = 1.0;
1518 1518
     _lcd_move_menu_axis();
1519 1519
   }
1520
-  static void lcd_move_menu_01mm() {
1520
+  void lcd_move_menu_01mm() {
1521 1521
     move_menu_scale = 0.1;
1522 1522
     _lcd_move_menu_axis();
1523 1523
   }
@@ -1528,7 +1528,7 @@ void kill_screen(const char* lcd_msg) {
1528 1528
    *
1529 1529
    */
1530 1530
 
1531
-  static void lcd_move_menu() {
1531
+  void lcd_move_menu() {
1532 1532
     START_MENU();
1533 1533
     MENU_BACK(MSG_PREPARE);
1534 1534
 
@@ -1547,7 +1547,7 @@ void kill_screen(const char* lcd_msg) {
1547 1547
    *
1548 1548
    */
1549 1549
 
1550
-  static void lcd_control_menu() {
1550
+  void lcd_control_menu() {
1551 1551
     START_MENU();
1552 1552
     MENU_BACK(MSG_MAIN);
1553 1553
     MENU_ITEM(submenu, MSG_TEMPERATURE, lcd_control_temperature_menu);
@@ -1590,7 +1590,7 @@ void kill_screen(const char* lcd_msg) {
1590 1590
       int autotune_temp_bed = 70;
1591 1591
     #endif
1592 1592
 
1593
-    static void _lcd_autotune(int e) {
1593
+    void _lcd_autotune(int e) {
1594 1594
       char cmd[30];
1595 1595
       sprintf_P(cmd, PSTR("M303 U1 E%i S%i"), e,
1596 1596
         #if HAS_PID_FOR_BOTH
@@ -1656,7 +1656,7 @@ void kill_screen(const char* lcd_msg) {
1656 1656
    * "Control" > "Temperature" submenu
1657 1657
    *
1658 1658
    */
1659
-  static void lcd_control_temperature_menu() {
1659
+  void lcd_control_temperature_menu() {
1660 1660
     START_MENU();
1661 1661
 
1662 1662
     //
@@ -1787,7 +1787,7 @@ void kill_screen(const char* lcd_msg) {
1787 1787
     END_MENU();
1788 1788
   }
1789 1789
 
1790
-  static void _lcd_control_temperature_preheat_settings_menu(uint8_t material) {
1790
+  void _lcd_control_temperature_preheat_settings_menu(uint8_t material) {
1791 1791
     START_MENU();
1792 1792
     MENU_BACK(MSG_TEMPERATURE);
1793 1793
     MENU_ITEM_EDIT(int3, MSG_FAN_SPEED, &lcd_preheat_fan_speed[material], 0, 255);
@@ -1808,24 +1808,24 @@ void kill_screen(const char* lcd_msg) {
1808 1808
    * "Temperature" > "Preheat PLA conf" submenu
1809 1809
    *
1810 1810
    */
1811
-  static void lcd_control_temperature_preheat_pla_settings_menu() { _lcd_control_temperature_preheat_settings_menu(0); }
1811
+  void lcd_control_temperature_preheat_pla_settings_menu() { _lcd_control_temperature_preheat_settings_menu(0); }
1812 1812
 
1813 1813
   /**
1814 1814
    *
1815 1815
    * "Temperature" > "Preheat ABS conf" submenu
1816 1816
    *
1817 1817
    */
1818
-  static void lcd_control_temperature_preheat_abs_settings_menu() { _lcd_control_temperature_preheat_settings_menu(1); }
1818
+  void lcd_control_temperature_preheat_abs_settings_menu() { _lcd_control_temperature_preheat_settings_menu(1); }
1819 1819
 
1820
-  static void _reset_acceleration_rates() { planner.reset_acceleration_rates(); }
1821
-  static void _planner_refresh_positioning() { planner.refresh_positioning(); }
1820
+  void _reset_acceleration_rates() { planner.reset_acceleration_rates(); }
1821
+  void _planner_refresh_positioning() { planner.refresh_positioning(); }
1822 1822
 
1823 1823
   /**
1824 1824
    *
1825 1825
    * "Control" > "Motion" submenu
1826 1826
    *
1827 1827
    */
1828
-  static void lcd_control_motion_menu() {
1828
+  void lcd_control_motion_menu() {
1829 1829
     START_MENU();
1830 1830
     MENU_BACK(MSG_CONTROL);
1831 1831
     #if HAS_BED_PROBE
@@ -1871,7 +1871,7 @@ void kill_screen(const char* lcd_msg) {
1871 1871
    * "Control" > "Filament" submenu
1872 1872
    *
1873 1873
    */
1874
-  static void lcd_control_volumetric_menu() {
1874
+  void lcd_control_volumetric_menu() {
1875 1875
     START_MENU();
1876 1876
     MENU_BACK(MSG_CONTROL);
1877 1877
 
@@ -1901,7 +1901,7 @@ void kill_screen(const char* lcd_msg) {
1901 1901
    *
1902 1902
    */
1903 1903
   #if HAS_LCD_CONTRAST
1904
-    static void lcd_set_contrast() {
1904
+    void lcd_set_contrast() {
1905 1905
       if (lcd_clicked) { return lcd_goto_previous_menu(); }
1906 1906
       ENCODER_DIRECTION_NORMAL();
1907 1907
       if (encoderPosition) {
@@ -1928,7 +1928,7 @@ void kill_screen(const char* lcd_msg) {
1928 1928
    */
1929 1929
   #if ENABLED(FWRETRACT)
1930 1930
 
1931
-    static void lcd_control_retract_menu() {
1931
+    void lcd_control_retract_menu() {
1932 1932
       START_MENU();
1933 1933
       MENU_BACK(MSG_CONTROL);
1934 1934
       MENU_ITEM_EDIT(bool, MSG_AUTORETRACT, &autoretract_enabled);
@@ -1951,13 +1951,13 @@ void kill_screen(const char* lcd_msg) {
1951 1951
   #if ENABLED(SDSUPPORT)
1952 1952
 
1953 1953
     #if !PIN_EXISTS(SD_DETECT)
1954
-      static void lcd_sd_refresh() {
1954
+      void lcd_sd_refresh() {
1955 1955
         card.initsd();
1956 1956
         encoderTopLine = 0;
1957 1957
       }
1958 1958
     #endif
1959 1959
 
1960
-    static void lcd_sd_updir() {
1960
+    void lcd_sd_updir() {
1961 1961
       card.updir();
1962 1962
       encoderTopLine = 0;
1963 1963
     }
@@ -2014,7 +2014,7 @@ void kill_screen(const char* lcd_msg) {
2014 2014
        * About Printer > Statistics submenu
2015 2015
        *
2016 2016
        */
2017
-      static void lcd_info_stats_menu() {
2017
+      void lcd_info_stats_menu() {
2018 2018
         if (lcd_clicked) { return lcd_goto_previous_menu(); }
2019 2019
 
2020 2020
         char buffer[21];
@@ -2048,7 +2048,7 @@ void kill_screen(const char* lcd_msg) {
2048 2048
      * About Printer > Thermistors
2049 2049
      *
2050 2050
      */
2051
-    static void lcd_info_thermistors_menu() {
2051
+    void lcd_info_thermistors_menu() {
2052 2052
       if (lcd_clicked) { return lcd_goto_previous_menu(); }
2053 2053
       START_SCREEN();
2054 2054
       #define THERMISTOR_ID TEMP_SENSOR_0
@@ -2100,7 +2100,7 @@ void kill_screen(const char* lcd_msg) {
2100 2100
      * About Printer > Board Info
2101 2101
      *
2102 2102
      */
2103
-    static void lcd_info_board_menu() {
2103
+    void lcd_info_board_menu() {
2104 2104
       if (lcd_clicked) { return lcd_goto_previous_menu(); }
2105 2105
       START_SCREEN();
2106 2106
       STATIC_ITEM(BOARD_NAME, true, true);                           // MyPrinterController
@@ -2121,7 +2121,7 @@ void kill_screen(const char* lcd_msg) {
2121 2121
      * About Printer > Printer Info
2122 2122
      *
2123 2123
      */
2124
-    static void lcd_info_printer_menu() {
2124
+    void lcd_info_printer_menu() {
2125 2125
       if (lcd_clicked) { return lcd_goto_previous_menu(); }
2126 2126
       START_SCREEN();
2127 2127
       STATIC_ITEM(MSG_MARLIN, true, true);                             // Marlin
@@ -2138,7 +2138,7 @@ void kill_screen(const char* lcd_msg) {
2138 2138
      * "About Printer" submenu
2139 2139
      *
2140 2140
      */
2141
-    static void lcd_info_menu() {
2141
+    void lcd_info_menu() {
2142 2142
       START_MENU();
2143 2143
       MENU_BACK(MSG_MAIN);
2144 2144
       MENU_ITEM(submenu, MSG_INFO_PRINTER_MENU, lcd_info_printer_menu);        // Printer Info >
@@ -2153,16 +2153,16 @@ void kill_screen(const char* lcd_msg) {
2153 2153
 
2154 2154
   #if ENABLED(FILAMENT_CHANGE_FEATURE)
2155 2155
 
2156
-    static void lcd_filament_change_resume_print() {
2156
+    void lcd_filament_change_resume_print() {
2157 2157
       filament_change_menu_response = FILAMENT_CHANGE_RESPONSE_RESUME_PRINT;
2158 2158
       lcd_goto_screen(lcd_status_screen);
2159 2159
     }
2160 2160
 
2161
-    static void lcd_filament_change_extrude_more() {
2161
+    void lcd_filament_change_extrude_more() {
2162 2162
       filament_change_menu_response = FILAMENT_CHANGE_RESPONSE_EXTRUDE_MORE;
2163 2163
     }
2164 2164
 
2165
-    static void lcd_filament_change_option_menu() {
2165
+    void lcd_filament_change_option_menu() {
2166 2166
       START_MENU();
2167 2167
       #if LCD_HEIGHT > 2
2168 2168
         STATIC_ITEM(MSG_FILAMENT_CHANGE_OPTION_HEADER, true, false);
@@ -2172,7 +2172,7 @@ void kill_screen(const char* lcd_msg) {
2172 2172
       END_MENU();
2173 2173
     }
2174 2174
 
2175
-    static void lcd_filament_change_init_message() {
2175
+    void lcd_filament_change_init_message() {
2176 2176
       START_SCREEN();
2177 2177
       STATIC_ITEM(MSG_FILAMENT_CHANGE_HEADER, true, true);
2178 2178
       STATIC_ITEM(MSG_FILAMENT_CHANGE_INIT_1);
@@ -2185,7 +2185,7 @@ void kill_screen(const char* lcd_msg) {
2185 2185
       END_SCREEN();
2186 2186
     }
2187 2187
 
2188
-    static void lcd_filament_change_unload_message() {
2188
+    void lcd_filament_change_unload_message() {
2189 2189
       START_SCREEN();
2190 2190
       STATIC_ITEM(MSG_FILAMENT_CHANGE_HEADER, true, true);
2191 2191
       STATIC_ITEM(MSG_FILAMENT_CHANGE_UNLOAD_1);
@@ -2198,7 +2198,7 @@ void kill_screen(const char* lcd_msg) {
2198 2198
       END_SCREEN();
2199 2199
     }
2200 2200
 
2201
-    static void lcd_filament_change_insert_message() {
2201
+    void lcd_filament_change_insert_message() {
2202 2202
       START_SCREEN();
2203 2203
       STATIC_ITEM(MSG_FILAMENT_CHANGE_HEADER, true, true);
2204 2204
       STATIC_ITEM(MSG_FILAMENT_CHANGE_INSERT_1);
@@ -2211,7 +2211,7 @@ void kill_screen(const char* lcd_msg) {
2211 2211
       END_SCREEN();
2212 2212
     }
2213 2213
 
2214
-    static void lcd_filament_change_load_message() {
2214
+    void lcd_filament_change_load_message() {
2215 2215
       START_SCREEN();
2216 2216
       STATIC_ITEM(MSG_FILAMENT_CHANGE_HEADER, true, true);
2217 2217
       STATIC_ITEM(MSG_FILAMENT_CHANGE_LOAD_1);
@@ -2224,7 +2224,7 @@ void kill_screen(const char* lcd_msg) {
2224 2224
       END_SCREEN();
2225 2225
     }
2226 2226
 
2227
-    static void lcd_filament_change_extrude_message() {
2227
+    void lcd_filament_change_extrude_message() {
2228 2228
       START_SCREEN();
2229 2229
       STATIC_ITEM(MSG_FILAMENT_CHANGE_HEADER, true, true);
2230 2230
       STATIC_ITEM(MSG_FILAMENT_CHANGE_EXTRUDE_1);
@@ -2237,7 +2237,7 @@ void kill_screen(const char* lcd_msg) {
2237 2237
       END_SCREEN();
2238 2238
     }
2239 2239
 
2240
-    static void lcd_filament_change_resume_message() {
2240
+    void lcd_filament_change_resume_message() {
2241 2241
       START_SCREEN();
2242 2242
       STATIC_ITEM(MSG_FILAMENT_CHANGE_HEADER, true, true);
2243 2243
       STATIC_ITEM(MSG_FILAMENT_CHANGE_RESUME_1);
@@ -2294,9 +2294,9 @@ void kill_screen(const char* lcd_msg) {
2294 2294
    *   bool _menu_edit_int3();
2295 2295
    *   void menu_edit_int3(); // edit int (interactively)
2296 2296
    *   void menu_edit_callback_int3(); // edit int (interactively) with callback on completion
2297
-   *   static void _menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue);
2298
-   *   static void menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue);
2299
-   *   static void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, screenFunc_t callback); // edit int with callback
2297
+   *   void _menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue);
2298
+   *   void menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue);
2299
+   *   void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, screenFunc_t callback); // edit int with callback
2300 2300
    *
2301 2301
    * You can then use one of the menu macros to present the edit interface:
2302 2302
    *   MENU_ITEM_EDIT(int3, MSG_SPEED, &feedrate_percentage, 10, 999)
@@ -2324,7 +2324,7 @@ void kill_screen(const char* lcd_msg) {
2324 2324
     } \
2325 2325
     void menu_edit_ ## _name () { _menu_edit_ ## _name(); } \
2326 2326
     void menu_edit_callback_ ## _name () { if (_menu_edit_ ## _name ()) (*callbackFunc)(); } \
2327
-    static void _menu_action_setting_edit_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue) { \
2327
+    void _menu_action_setting_edit_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue) { \
2328 2328
       lcd_save_previous_menu(); \
2329 2329
       \
2330 2330
       lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; \
@@ -2335,11 +2335,11 @@ void kill_screen(const char* lcd_msg) {
2335 2335
       maxEditValue = maxValue * scale - minEditValue; \
2336 2336
       encoderPosition = (*ptr) * scale - minEditValue; \
2337 2337
     } \
2338
-    static void menu_action_setting_edit_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue) { \
2338
+    void menu_action_setting_edit_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue) { \
2339 2339
       _menu_action_setting_edit_ ## _name(pstr, ptr, minValue, maxValue); \
2340 2340
       currentScreen = menu_edit_ ## _name; \
2341 2341
     }\
2342
-    static void menu_action_setting_edit_callback_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue, screenFunc_t callback) { \
2342
+    void menu_action_setting_edit_callback_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue, screenFunc_t callback) { \
2343 2343
       _menu_action_setting_edit_ ## _name(pstr, ptr, minValue, maxValue); \
2344 2344
       currentScreen = menu_edit_callback_ ## _name; \
2345 2345
       callbackFunc = callback; \
@@ -2361,7 +2361,7 @@ void kill_screen(const char* lcd_msg) {
2361 2361
    *
2362 2362
    */
2363 2363
   #if ENABLED(REPRAPWORLD_KEYPAD)
2364
-    static void _reprapworld_keypad_move(AxisEnum axis, int dir) {
2364
+    void _reprapworld_keypad_move(AxisEnum axis, int dir) {
2365 2365
       move_menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP;
2366 2366
       encoderPosition = dir;
2367 2367
       switch (axis) {
@@ -2371,14 +2371,14 @@ void kill_screen(const char* lcd_msg) {
2371 2371
         default: break;
2372 2372
       }
2373 2373
     }
2374
-    static void reprapworld_keypad_move_z_up()    { _reprapworld_keypad_move(Z_AXIS,  1); }
2375
-    static void reprapworld_keypad_move_z_down()  { _reprapworld_keypad_move(Z_AXIS, -1); }
2376
-    static void reprapworld_keypad_move_x_left()  { _reprapworld_keypad_move(X_AXIS, -1); }
2377
-    static void reprapworld_keypad_move_x_right() { _reprapworld_keypad_move(X_AXIS,  1); }
2378
-    static void reprapworld_keypad_move_y_up()    { _reprapworld_keypad_move(Y_AXIS, -1); }
2379
-    static void reprapworld_keypad_move_y_down()  { _reprapworld_keypad_move(Y_AXIS,  1); }
2380
-    static void reprapworld_keypad_move_home()    { enqueue_and_echo_commands_P(PSTR("G28")); } // move all axes home and wait
2381
-    static void reprapworld_keypad_move_menu()    { lcd_goto_screen(lcd_move_menu); }
2374
+    void reprapworld_keypad_move_z_up()    { _reprapworld_keypad_move(Z_AXIS,  1); }
2375
+    void reprapworld_keypad_move_z_down()  { _reprapworld_keypad_move(Z_AXIS, -1); }
2376
+    void reprapworld_keypad_move_x_left()  { _reprapworld_keypad_move(X_AXIS, -1); }
2377
+    void reprapworld_keypad_move_x_right() { _reprapworld_keypad_move(X_AXIS,  1); }
2378
+    void reprapworld_keypad_move_y_up()    { _reprapworld_keypad_move(Y_AXIS, -1); }
2379
+    void reprapworld_keypad_move_y_down()  { _reprapworld_keypad_move(Y_AXIS,  1); }
2380
+    void reprapworld_keypad_move_home()    { enqueue_and_echo_commands_P(PSTR("G28")); } // move all axes home and wait
2381
+    void reprapworld_keypad_move_menu()    { lcd_goto_screen(lcd_move_menu); }
2382 2382
   #endif // REPRAPWORLD_KEYPAD
2383 2383
 
2384 2384
   /**
@@ -2415,20 +2415,20 @@ void kill_screen(const char* lcd_msg) {
2415 2415
    * Menu actions
2416 2416
    *
2417 2417
    */
2418
-  static void _menu_action_back() { lcd_goto_previous_menu(); }
2419
-  static void menu_action_submenu(screenFunc_t func) { lcd_save_previous_menu(); lcd_goto_screen(func); }
2420
-  static void menu_action_gcode(const char* pgcode) { enqueue_and_echo_commands_P(pgcode); }
2421
-  static void menu_action_function(screenFunc_t func) { (*func)(); }
2418
+  void _menu_action_back() { lcd_goto_previous_menu(); }
2419
+  void menu_action_submenu(screenFunc_t func) { lcd_save_previous_menu(); lcd_goto_screen(func); }
2420
+  void menu_action_gcode(const char* pgcode) { enqueue_and_echo_commands_P(pgcode); }
2421
+  void menu_action_function(screenFunc_t func) { (*func)(); }
2422 2422
 
2423 2423
   #if ENABLED(SDSUPPORT)
2424 2424
 
2425
-    static void menu_action_sdfile(const char* filename, char* longFilename) {
2425
+    void menu_action_sdfile(const char* filename, char* longFilename) {
2426 2426
       UNUSED(longFilename);
2427 2427
       card.openAndPrintFile(filename);
2428 2428
       lcd_return_to_status();
2429 2429
     }
2430 2430
 
2431
-    static void menu_action_sddirectory(const char* filename, char* longFilename) {
2431
+    void menu_action_sddirectory(const char* filename, char* longFilename) {
2432 2432
       UNUSED(longFilename);
2433 2433
       card.chdir(filename);
2434 2434
       encoderPosition = 0;
@@ -2436,8 +2436,8 @@ void kill_screen(const char* lcd_msg) {
2436 2436
 
2437 2437
   #endif //SDSUPPORT
2438 2438
 
2439
-  static void menu_action_setting_edit_bool(const char* pstr, bool* ptr) {UNUSED(pstr); *ptr = !(*ptr); }
2440
-  static void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, screenFunc_t callback) {
2439
+  void menu_action_setting_edit_bool(const char* pstr, bool* ptr) {UNUSED(pstr); *ptr = !(*ptr); }
2440
+  void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, screenFunc_t callback) {
2441 2441
     menu_action_setting_edit_bool(pstr, ptr);
2442 2442
     (*callback)();
2443 2443
   }

Loading…
Cancel
Save