Browse Source

Reduce repetition in menu edit items

Scott Lahteine 6 years ago
parent
commit
3a935fd72b

+ 76
- 64
Marlin/src/lcd/menu/menu_advanced.cpp View File

@@ -83,16 +83,17 @@
83 83
       #if EXTRUDERS == 1
84 84
         MENU_ITEM_EDIT(float52, MSG_ADVANCE_K, &planner.extruder_advance_K[0], 0, 999);
85 85
       #elif EXTRUDERS > 1
86
-        MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E1, &planner.extruder_advance_K[0], 0, 999);
87
-        MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E2, &planner.extruder_advance_K[1], 0, 999);
86
+        #define EDIT_ADVANCE_K(N) MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E##N, &planner.extruder_advance_K[N-1], 0, 999)
87
+        EDIT_ADVANCE_K(1);
88
+        EDIT_ADVANCE_K(2);
88 89
         #if EXTRUDERS > 2
89
-          MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E3, &planner.extruder_advance_K[2], 0, 999);
90
+          EDIT_ADVANCE_K(3);
90 91
           #if EXTRUDERS > 3
91
-            MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E4, &planner.extruder_advance_K[3], 0, 999);
92
+            EDIT_ADVANCE_K(4);
92 93
             #if EXTRUDERS > 4
93
-              MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E5, &planner.extruder_advance_K[4], 0, 999);
94
+              EDIT_ADVANCE_K(5);
94 95
               #if EXTRUDERS > 5
95
-                MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E6, &planner.extruder_advance_K[5], 0, 999);
96
+                EDIT_ADVANCE_K(6);
96 97
               #endif // EXTRUDERS > 5
97 98
             #endif // EXTRUDERS > 4
98 99
           #endif // EXTRUDERS > 3
@@ -107,17 +108,18 @@
107 108
         #if EXTRUDERS == 1
108 109
           MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM, &planner.filament_size[0], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
109 110
         #else // EXTRUDERS > 1
111
+          #define EDIT_FIL_DIAM(N) MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM MSG_DIAM_E##N, &planner.filament_size[N-1], 1.5f, 3.25f, planner.calculate_volumetric_multipliers)
110 112
           MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM, &planner.filament_size[active_extruder], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
111
-          MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM MSG_DIAM_E1, &planner.filament_size[0], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
112
-          MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM MSG_DIAM_E2, &planner.filament_size[1], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
113
+          EDIT_FIL_DIAM(1);
114
+          EDIT_FIL_DIAM(2);
113 115
           #if EXTRUDERS > 2
114
-            MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM MSG_DIAM_E3, &planner.filament_size[2], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
116
+            EDIT_FIL_DIAM(3);
115 117
             #if EXTRUDERS > 3
116
-              MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM MSG_DIAM_E4, &planner.filament_size[3], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
118
+              EDIT_FIL_DIAM(4);
117 119
               #if EXTRUDERS > 4
118
-                MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM MSG_DIAM_E5, &planner.filament_size[4], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
120
+                EDIT_FIL_DIAM(5);
119 121
                 #if EXTRUDERS > 5
120
-                  MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float43, MSG_FILAMENT_DIAM MSG_DIAM_E6, &planner.filament_size[5], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
122
+                  EDIT_FIL_DIAM(6);
121 123
                 #endif // EXTRUDERS > 5
122 124
               #endif // EXTRUDERS > 4
123 125
             #endif // EXTRUDERS > 3
@@ -138,17 +140,18 @@
138 140
       #if EXTRUDERS == 1
139 141
         MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD, &fc_settings[0].unload_length, 0, extrude_maxlength);
140 142
       #else // EXTRUDERS > 1
143
+        #define EDIT_FIL_UNLOAD(N) MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD MSG_DIAM_E##N, &fc_settings[N-1].unload_length, 0, extrude_maxlength)
141 144
         MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD, &fc_settings[active_extruder].unload_length, 0, extrude_maxlength);
142
-        MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD MSG_DIAM_E1, &fc_settings[0].unload_length, 0, extrude_maxlength);
143
-        MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD MSG_DIAM_E2, &fc_settings[1].unload_length, 0, extrude_maxlength);
145
+        EDIT_FIL_UNLOAD(1);
146
+        EDIT_FIL_UNLOAD(2);
144 147
         #if EXTRUDERS > 2
145
-          MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD MSG_DIAM_E3, &fc_settings[2].unload_length, 0, extrude_maxlength);
148
+          EDIT_FIL_UNLOAD(3);
146 149
           #if EXTRUDERS > 3
147
-            MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD MSG_DIAM_E4, &fc_settings[3].unload_length, 0, extrude_maxlength);
150
+            EDIT_FIL_UNLOAD(4);
148 151
             #if EXTRUDERS > 4
149
-              MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD MSG_DIAM_E5, &fc_settings[4].unload_length, 0, extrude_maxlength);
152
+              EDIT_FIL_UNLOAD(5);
150 153
               #if EXTRUDERS > 5
151
-                MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_UNLOAD MSG_DIAM_E6, &fc_settings[5].unload_length, 0, extrude_maxlength);
154
+                EDIT_FIL_UNLOAD(6);
152 155
               #endif // EXTRUDERS > 5
153 156
             #endif // EXTRUDERS > 4
154 157
           #endif // EXTRUDERS > 3
@@ -158,17 +161,18 @@
158 161
       #if EXTRUDERS == 1
159 162
         MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD, &fc_settings[0].load_length, 0, extrude_maxlength);
160 163
       #else // EXTRUDERS > 1
164
+        #define EDIT_FIL_LOAD(N) MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD MSG_DIAM_E##N, &fc_settings[N-1].load_length, 0, extrude_maxlength)
161 165
         MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD, &fc_settings[active_extruder].load_length, 0, extrude_maxlength);
162
-        MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD MSG_DIAM_E1, &fc_settings[0].load_length, 0, extrude_maxlength);
163
-        MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD MSG_DIAM_E2, &fc_settings[1].load_length, 0, extrude_maxlength);
166
+        EDIT_FIL_LOAD(1);
167
+        EDIT_FIL_LOAD(2);
164 168
         #if EXTRUDERS > 2
165
-          MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD MSG_DIAM_E3, &fc_settings[2].load_length, 0, extrude_maxlength);
169
+          EDIT_FIL_LOAD(3);
166 170
           #if EXTRUDERS > 3
167
-            MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD MSG_DIAM_E4, &fc_settings[3].load_length, 0, extrude_maxlength);
171
+            EDIT_FIL_LOAD(4);
168 172
             #if EXTRUDERS > 4
169
-              MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD MSG_DIAM_E5, &fc_settings[4].load_length, 0, extrude_maxlength);
173
+              EDIT_FIL_LOAD(5);
170 174
               #if EXTRUDERS > 5
171
-                MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_FILAMENT_LOAD MSG_DIAM_E6, &fc_settings[5].load_length, 0, extrude_maxlength);
175
+                EDIT_FIL_LOAD(6);
172 176
               #endif // EXTRUDERS > 5
173 177
             #endif // EXTRUDERS > 4
174 178
           #endif // EXTRUDERS > 3
@@ -388,22 +392,24 @@ void menu_advanced_temperature() {
388 392
     MENU_BACK(MSG_ADVANCED_SETTINGS);
389 393
 
390 394
     // M203 Max Feedrate
391
-    MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_A, &planner.settings.max_feedrate_mm_s[A_AXIS], 1, 999);
392
-    MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_B, &planner.settings.max_feedrate_mm_s[B_AXIS], 1, 999);
393
-    MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_C, &planner.settings.max_feedrate_mm_s[C_AXIS], 1, 999);
395
+    #define EDIT_VMAX(N) MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_A, &planner.settings.max_feedrate_mm_s[A_AXIS], 1, 999)
396
+    EDIT_VMAX(A);
397
+    EDIT_VMAX(B);
398
+    EDIT_VMAX(C);
394 399
 
395 400
     #if ENABLED(DISTINCT_E_FACTORS)
396
-      MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E, &planner.settings.max_feedrate_mm_s[E_AXIS + active_extruder], 1, 999);
397
-      MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E1, &planner.settings.max_feedrate_mm_s[E_AXIS], 1, 999);
398
-      MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E2, &planner.settings.max_feedrate_mm_s[E_AXIS + 1], 1, 999);
401
+      #define EDIT_VMAX_E(N) MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E##N, &planner.settings.max_feedrate_mm_s[E_AXIS_N(N-1)], 1, 999)
402
+      MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E, &planner.settings.max_feedrate_mm_s[E_AXIS_N(active_extruder)], 1, 999);
403
+      EDIT_VMAX_E(1);
404
+      EDIT_VMAX_E(2);
399 405
       #if E_STEPPERS > 2
400
-        MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E3, &planner.settings.max_feedrate_mm_s[E_AXIS + 2], 1, 999);
406
+        EDIT_VMAX_E(3);
401 407
         #if E_STEPPERS > 3
402
-          MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E4, &planner.settings.max_feedrate_mm_s[E_AXIS + 3], 1, 999);
408
+          EDIT_VMAX_E(4);
403 409
           #if E_STEPPERS > 4
404
-            MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E5, &planner.settings.max_feedrate_mm_s[E_AXIS + 4], 1, 999);
410
+            EDIT_VMAX_E(5);
405 411
             #if E_STEPPERS > 5
406
-              MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VMAX MSG_E6, &planner.settings.max_feedrate_mm_s[E_AXIS + 5], 1, 999);
412
+              EDIT_VMAX_E(6);
407 413
             #endif // E_STEPPERS > 5
408 414
           #endif // E_STEPPERS > 4
409 415
         #endif // E_STEPPERS > 3
@@ -436,22 +442,24 @@ void menu_advanced_temperature() {
436 442
     MENU_MULTIPLIER_ITEM_EDIT(float5, MSG_A_TRAVEL, &planner.settings.travel_acceleration, 100, 99000);
437 443
 
438 444
     // M201 settings
439
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_A, &planner.settings.max_acceleration_mm_per_s2[A_AXIS], 100, 99000, _reset_acceleration_rates);
440
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_B, &planner.settings.max_acceleration_mm_per_s2[B_AXIS], 100, 99000, _reset_acceleration_rates);
441
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_C, &planner.settings.max_acceleration_mm_per_s2[C_AXIS], 10, 99000, _reset_acceleration_rates);
445
+    #define EDIT_AMAX(Q,L) MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_##Q, &planner.settings.max_acceleration_mm_per_s2[_AXIS(Q)], L, 99000, _reset_acceleration_rates)
446
+    EDIT_AMAX(A,100);
447
+    EDIT_AMAX(B,100);
448
+    EDIT_AMAX(C, 10);
442 449
 
443 450
     #if ENABLED(DISTINCT_E_FACTORS)
444
-      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E, &planner.settings.max_acceleration_mm_per_s2[E_AXIS + active_extruder], 100, 99000, _reset_acceleration_rates);
445
-      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E1, &planner.settings.max_acceleration_mm_per_s2[E_AXIS], 100, 99000, _reset_e0_acceleration_rate);
446
-      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E2, &planner.settings.max_acceleration_mm_per_s2[E_AXIS + 1], 100, 99000, _reset_e1_acceleration_rate);
451
+      #define EDIT_AMAX_E(N,E) MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E##N, &planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(E)], 100, 99000, _reset_e##E##_acceleration_rate)
452
+      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E, &planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(active_extruder)], 100, 99000, _reset_acceleration_rates);
453
+      EDIT_AMAX_E(1,0);
454
+      EDIT_AMAX_E(2,1);
447 455
       #if E_STEPPERS > 2
448
-        MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E3, &planner.settings.max_acceleration_mm_per_s2[E_AXIS + 2], 100, 99000, _reset_e2_acceleration_rate);
456
+        EDIT_AMAX_E(3,2);
449 457
         #if E_STEPPERS > 3
450
-          MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E4, &planner.settings.max_acceleration_mm_per_s2[E_AXIS + 3], 100, 99000, _reset_e3_acceleration_rate);
458
+          EDIT_AMAX_E(4,3);
451 459
           #if E_STEPPERS > 4
452
-            MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E5, &planner.settings.max_acceleration_mm_per_s2[E_AXIS + 4], 100, 99000, _reset_e4_acceleration_rate);
460
+            EDIT_AMAX_E(5,4);
453 461
             #if E_STEPPERS > 5
454
-              MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E6, &planner.settings.max_acceleration_mm_per_s2[E_AXIS + 5], 100, 99000, _reset_e5_acceleration_rate);
462
+              EDIT_AMAX_E(6,5);
455 463
             #endif // E_STEPPERS > 5
456 464
           #endif // E_STEPPERS > 4
457 465
         #endif // E_STEPPERS > 3
@@ -476,15 +484,16 @@ void menu_advanced_temperature() {
476 484
       #endif
477 485
     #endif
478 486
     #if HAS_CLASSIC_JERK
479
-      MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VA_JERK, &planner.max_jerk[A_AXIS], 1, 990);
480
-      MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VB_JERK, &planner.max_jerk[B_AXIS], 1, 990);
487
+      #define EDIT_JERK(N) MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_V##N##_JERK, &planner.max_jerk[_AXIS(N)], 1, 990)
488
+      EDIT_JERK(A);
489
+      EDIT_JERK(B);
481 490
       #if ENABLED(DELTA)
482
-        MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VC_JERK, &planner.max_jerk[C_AXIS], 1, 990);
491
+        EDIT_JERK(C);
483 492
       #else
484 493
         MENU_MULTIPLIER_ITEM_EDIT(float52sign, MSG_VC_JERK, &planner.max_jerk[C_AXIS], 0.1f, 990);
485 494
       #endif
486 495
       #if DISABLED(JUNCTION_DEVIATION) || DISABLED(LIN_ADVANCE)
487
-        MENU_MULTIPLIER_ITEM_EDIT(float3, MSG_VE_JERK, &planner.max_jerk[E_AXIS], 1, 990);
496
+        EDIT_JERK(E);
488 497
       #endif
489 498
     #endif
490 499
 
@@ -496,22 +505,24 @@ void menu_advanced_temperature() {
496 505
     START_MENU();
497 506
     MENU_BACK(MSG_ADVANCED_SETTINGS);
498 507
 
499
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ASTEPS, &planner.settings.axis_steps_per_mm[A_AXIS], 5, 9999, _planner_refresh_positioning);
500
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_BSTEPS, &planner.settings.axis_steps_per_mm[B_AXIS], 5, 9999, _planner_refresh_positioning);
501
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_CSTEPS, &planner.settings.axis_steps_per_mm[C_AXIS], 5, 9999, _planner_refresh_positioning);
508
+    #define EDIT_QSTEPS(Q) MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_##Q##STEPS, &planner.settings.axis_steps_per_mm[_AXIS(Q)], 5, 9999, _planner_refresh_positioning)
509
+    EDIT_QSTEPS(A);
510
+    EDIT_QSTEPS(B);
511
+    EDIT_QSTEPS(C);
502 512
 
503 513
     #if ENABLED(DISTINCT_E_FACTORS)
504
-      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ESTEPS, &planner.settings.axis_steps_per_mm[E_AXIS + active_extruder], 5, 9999, _planner_refresh_positioning);
505
-      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E1STEPS, &planner.settings.axis_steps_per_mm[E_AXIS], 5, 9999, _planner_refresh_e0_positioning);
506
-      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E2STEPS, &planner.settings.axis_steps_per_mm[E_AXIS + 1], 5, 9999, _planner_refresh_e1_positioning);
514
+      #define EDIT_ESTEPS(N,E) MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E##N##STEPS, &planner.settings.axis_steps_per_mm[E_AXIS_N(E)], 5, 9999, _planner_refresh_e##E##_positioning)
515
+      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ESTEPS, &planner.settings.axis_steps_per_mm[E_AXIS_N(active_extruder)], 5, 9999, _planner_refresh_positioning);
516
+      EDIT_ESTEPS(1,0);
517
+      EDIT_ESTEPS(2,1);
507 518
       #if E_STEPPERS > 2
508
-        MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E3STEPS, &planner.settings.axis_steps_per_mm[E_AXIS + 2], 5, 9999, _planner_refresh_e2_positioning);
519
+        EDIT_ESTEPS(3,2);
509 520
         #if E_STEPPERS > 3
510
-          MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E4STEPS, &planner.settings.axis_steps_per_mm[E_AXIS + 3], 5, 9999, _planner_refresh_e3_positioning);
521
+          EDIT_ESTEPS(4,3);
511 522
           #if E_STEPPERS > 4
512
-            MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E5STEPS, &planner.settings.axis_steps_per_mm[E_AXIS + 4], 5, 9999, _planner_refresh_e4_positioning);
523
+            EDIT_ESTEPS(5,4);
513 524
             #if E_STEPPERS > 5
514
-              MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E6STEPS, &planner.settings.axis_steps_per_mm[E_AXIS + 5], 5, 9999, _planner_refresh_e5_positioning);
525
+              EDIT_ESTEPS(6,5);
515 526
             #endif // E_STEPPERS > 5
516 527
           #endif // E_STEPPERS > 4
517 528
         #endif // E_STEPPERS > 3
@@ -586,16 +597,17 @@ void menu_advanced_settings() {
586 597
     #if EXTRUDERS == 1
587 598
       MENU_ITEM_EDIT(float52, MSG_ADVANCE_K, &planner.extruder_advance_K[0], 0, 999);
588 599
     #elif EXTRUDERS > 1
589
-      MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E1, &planner.extruder_advance_K[0], 0, 999);
590
-      MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E2, &planner.extruder_advance_K[1], 0, 999);
600
+      #define EDIT_ADVANCE_K(N) MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E##N, &planner.extruder_advance_K[N-1], 0, 999)
601
+      EDIT_ADVANCE_K(1);
602
+      EDIT_ADVANCE_K(2);
591 603
       #if EXTRUDERS > 2
592
-        MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E3, &planner.extruder_advance_K[2], 0, 999);
604
+        EDIT_ADVANCE_K(3);
593 605
         #if EXTRUDERS > 3
594
-          MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E4, &planner.extruder_advance_K[3], 0, 999);
606
+          EDIT_ADVANCE_K(4);
595 607
           #if EXTRUDERS > 4
596
-            MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E5, &planner.extruder_advance_K[4], 0, 999);
608
+            EDIT_ADVANCE_K(5);
597 609
             #if EXTRUDERS > 5
598
-              MENU_ITEM_EDIT(float52, MSG_ADVANCE_K MSG_E6, &planner.extruder_advance_K[5], 0, 999);
610
+              EDIT_ADVANCE_K(6);
599 611
             #endif // EXTRUDERS > 5
600 612
           #endif // EXTRUDERS > 4
601 613
         #endif // EXTRUDERS > 3

+ 9
- 7
Marlin/src/lcd/menu/menu_configuration.cpp View File

@@ -212,10 +212,11 @@ static void lcd_factory_settings() {
212 212
     dac_driver_getValues();
213 213
     START_MENU();
214 214
     MENU_BACK(MSG_CONTROL);
215
-    MENU_ITEM_EDIT_CALLBACK(int8, MSG_X " " MSG_DAC_PERCENT, &driverPercent[X_AXIS], 0, 100, dac_driver_commit);
216
-    MENU_ITEM_EDIT_CALLBACK(int8, MSG_Y " " MSG_DAC_PERCENT, &driverPercent[Y_AXIS], 0, 100, dac_driver_commit);
217
-    MENU_ITEM_EDIT_CALLBACK(int8, MSG_Z " " MSG_DAC_PERCENT, &driverPercent[Z_AXIS], 0, 100, dac_driver_commit);
218
-    MENU_ITEM_EDIT_CALLBACK(int8, MSG_E " " MSG_DAC_PERCENT, &driverPercent[E_AXIS], 0, 100, dac_driver_commit);
215
+    #define EDIT_DAC_PERCENT(N) MENU_ITEM_EDIT_CALLBACK(int8, MSG_##N " " MSG_DAC_PERCENT, &driverPercent[_AXIS(N)], 0, 100, dac_driver_commit)
216
+    EDIT_DAC_PERCENT(X);
217
+    EDIT_DAC_PERCENT(Y);
218
+    EDIT_DAC_PERCENT(Z);
219
+    EDIT_DAC_PERCENT(E);
219 220
     MENU_ITEM(function, MSG_DAC_EEPROM_WRITE, dac_commit_eeprom);
220 221
     END_MENU();
221 222
   }
@@ -229,14 +230,15 @@ static void lcd_factory_settings() {
229 230
   void menu_pwm() {
230 231
     START_MENU();
231 232
     MENU_BACK(MSG_CONTROL);
233
+    #define EDIT_CURRENT_PWM(LABEL,I) MENU_ITEM_EDIT_CALLBACK(long5, LABEL, &stepper.motor_current_setting[I], 100, 2000, stepper.refresh_motor_power)
232 234
     #if PIN_EXISTS(MOTOR_CURRENT_PWM_XY)
233
-      MENU_ITEM_EDIT_CALLBACK(long5, MSG_X MSG_Y, &stepper.motor_current_setting[0], 100, 2000, stepper.refresh_motor_power);
235
+      EDIT_CURRENT_PWM(MSG_X MSG_Y, 0);
234 236
     #endif
235 237
     #if PIN_EXISTS(MOTOR_CURRENT_PWM_Z)
236
-      MENU_ITEM_EDIT_CALLBACK(long5, MSG_Z, &stepper.motor_current_setting[1], 100, 2000, stepper.refresh_motor_power);
238
+      EDIT_CURRENT_PWM(MSG_Z, 1);
237 239
     #endif
238 240
     #if PIN_EXISTS(MOTOR_CURRENT_PWM_E)
239
-      MENU_ITEM_EDIT_CALLBACK(long5, MSG_E, &stepper.motor_current_setting[2], 100, 2000, stepper.refresh_motor_power);
241
+      EDIT_CURRENT_PWM(MSG_E, 2);
240 242
     #endif
241 243
     END_MENU();
242 244
   }

+ 8
- 6
Marlin/src/lcd/menu/menu_delta_calibrate.cpp View File

@@ -92,13 +92,15 @@ void lcd_delta_settings() {
92 92
   START_MENU();
93 93
   MENU_BACK(MSG_DELTA_CALIBRATE);
94 94
   MENU_ITEM_EDIT_CALLBACK(float52sign, MSG_DELTA_HEIGHT, &delta_height, delta_height - 10, delta_height + 10, _recalc_delta_settings);
95
-  MENU_ITEM_EDIT_CALLBACK(float43, "Ex", &delta_endstop_adj[A_AXIS], -5, 5, _recalc_delta_settings);
96
-  MENU_ITEM_EDIT_CALLBACK(float43, "Ey", &delta_endstop_adj[B_AXIS], -5, 5, _recalc_delta_settings);
97
-  MENU_ITEM_EDIT_CALLBACK(float43, "Ez", &delta_endstop_adj[C_AXIS], -5, 5, _recalc_delta_settings);
95
+  #define EDIT_ENDSTOP_ADJ(LABEL,N) MENU_ITEM_EDIT_CALLBACK(float43, LABEL, &delta_endstop_adj[_AXIS(N)], -5, 5, _recalc_delta_settings)
96
+  EDIT_ENDSTOP_ADJ("Ex",A);
97
+  EDIT_ENDSTOP_ADJ("Ey",B);
98
+  EDIT_ENDSTOP_ADJ("Ez",C);
98 99
   MENU_ITEM_EDIT_CALLBACK(float52sign, MSG_DELTA_RADIUS, &delta_radius, delta_radius - 5, delta_radius + 5, _recalc_delta_settings);
99
-  MENU_ITEM_EDIT_CALLBACK(float43, "Tx", &delta_tower_angle_trim[A_AXIS], -5, 5, _recalc_delta_settings);
100
-  MENU_ITEM_EDIT_CALLBACK(float43, "Ty", &delta_tower_angle_trim[B_AXIS], -5, 5, _recalc_delta_settings);
101
-  MENU_ITEM_EDIT_CALLBACK(float43, "Tz", &delta_tower_angle_trim[C_AXIS], -5, 5, _recalc_delta_settings);
100
+  #define EDIT_ANGLE_TRIM(LABEL,N) MENU_ITEM_EDIT_CALLBACK(float43, LABEL, &delta_tower_angle_trim[_AXIS(N)], -5, 5, _recalc_delta_settings)
101
+  EDIT_ANGLE_TRIM("Tx",A);
102
+  EDIT_ANGLE_TRIM("Ty",B);
103
+  EDIT_ANGLE_TRIM("Tz",C);
102 104
   MENU_ITEM_EDIT_CALLBACK(float52sign, MSG_DELTA_DIAG_ROD, &delta_diagonal_rod, delta_diagonal_rod - 5, delta_diagonal_rod + 5, _recalc_delta_settings);
103 105
   END_MENU();
104 106
 }

+ 7
- 6
Marlin/src/lcd/menu/menu_temperature.cpp View File

@@ -310,16 +310,17 @@ void menu_temperature() {
310 310
   #if HOTENDS == 1
311 311
     MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE, &thermalManager.target_temperature[0], 0, HEATER_0_MAXTEMP - 15, watch_temp_callback_E0);
312 312
   #else // HOTENDS > 1
313
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE MSG_N1, &thermalManager.target_temperature[0], 0, HEATER_0_MAXTEMP - 15, watch_temp_callback_E0);
314
-    MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE MSG_N2, &thermalManager.target_temperature[1], 0, HEATER_1_MAXTEMP - 15, watch_temp_callback_E1);
313
+    #define EDIT_TARGET(N,I) MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE MSG_N##N, &thermalManager.target_temperature[I], 0, HEATER_##I##_MAXTEMP - 15, watch_temp_callback_E##I)
314
+    EDIT_TARGET(1,0);
315
+    EDIT_TARGET(2,1);
315 316
     #if HOTENDS > 2
316
-      MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE MSG_N3, &thermalManager.target_temperature[2], 0, HEATER_2_MAXTEMP - 15, watch_temp_callback_E2);
317
+      EDIT_TARGET(3,2);
317 318
       #if HOTENDS > 3
318
-        MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE MSG_N4, &thermalManager.target_temperature[3], 0, HEATER_3_MAXTEMP - 15, watch_temp_callback_E3);
319
+        EDIT_TARGET(4,3);
319 320
         #if HOTENDS > 4
320
-          MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE MSG_N5, &thermalManager.target_temperature[4], 0, HEATER_4_MAXTEMP - 15, watch_temp_callback_E4);
321
+          EDIT_TARGET(5,4);
321 322
           #if HOTENDS > 5
322
-            MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(int3, MSG_NOZZLE MSG_N6, &thermalManager.target_temperature[5], 0, HEATER_5_MAXTEMP - 15, watch_temp_callback_E5);
323
+            EDIT_TARGET(6,5);
323 324
           #endif // HOTENDS > 5
324 325
         #endif // HOTENDS > 4
325 326
       #endif // HOTENDS > 3

Loading…
Cancel
Save