瀏覽代碼

Extract common code to function preheat_or_continue(). Saves 138B of FLASH memory.

Marek Bel 5 年之前
父節點
當前提交
770e470fd5
共有 1 個文件被更改,包括 13 次插入30 次删除
  1. 13 30
      Firmware/ultralcd.cpp

+ 13 - 30
Firmware/ultralcd.cpp

@@ -131,6 +131,8 @@ static void lcd_menu_fails_stats_mmu_total();
 static void mmu_unload_filament();
 static void mmu_fil_eject_menu();
 static void mmu_load_to_nozzle_menu();
+static void preheat_or_continue();
+
 #ifdef MMU_HAS_CUTTER
 static void mmu_cut_filament_menu();
 #endif //MMU_HAS_CUTTER
@@ -2362,25 +2364,13 @@ mFilamentItem(target_temperature[0],target_temperature_bed);
 void lcd_unLoadFilament()
 {
      eFilamentAction=FilamentAction::UnLoad;
-     bFilamentFirstRun=false;
-     if(target_temperature[0]>=EXTRUDE_MINTEMP)
-          {
-          bFilamentPreheatState=true;
-          mFilamentItem(target_temperature[0],target_temperature_bed);
-          }
-     else lcd_generic_preheat_menu();
+     preheat_or_continue();
 }
 
 static void mmu_unload_filament()
 {
     eFilamentAction = FilamentAction::MmuUnLoad;
-    bFilamentFirstRun = false;
-    if (target_temperature[0] >= EXTRUDE_MINTEMP)
-    {
-        bFilamentPreheatState = true;
-        mFilamentItem(target_temperature[0], target_temperature_bed);
-    }
-    else lcd_generic_preheat_menu();
+    preheat_or_continue();
 }
 
 
@@ -2596,9 +2586,8 @@ static void lcd_menu_AutoLoadFilament()
 }
 #endif //FILAMENT_SENSOR
 
-static void lcd_LoadFilament()
+static void preheat_or_continue()
 {
-    eFilamentAction = FilamentAction::Load;
     bFilamentFirstRun = false;
     if (target_temperature[0] >= EXTRUDE_MINTEMP)
     {
@@ -2608,6 +2597,12 @@ static void lcd_LoadFilament()
     else lcd_generic_preheat_menu();
 }
 
+static void lcd_LoadFilament()
+{
+    eFilamentAction = FilamentAction::Load;
+    preheat_or_continue();
+}
+
 
 //! @brief Show filament used a print time
 //!
@@ -5937,13 +5932,7 @@ static void mmu_load_to_nozzle_menu()
     else
     {
         eFilamentAction = FilamentAction::MmuLoad;
-        bFilamentFirstRun = false;
-        if (target_temperature[0] >= EXTRUDE_MINTEMP)
-        {
-            bFilamentPreheatState = true;
-            mFilamentItem(target_temperature[0], target_temperature_bed);
-        }
-        else lcd_generic_preheat_menu();
+        preheat_or_continue();
     }
 }
 
@@ -5969,13 +5958,7 @@ static void mmu_fil_eject_menu()
     else
     {
         eFilamentAction = FilamentAction::MmuEject;
-        bFilamentFirstRun = false;
-        if (target_temperature[0] >= EXTRUDE_MINTEMP)
-        {
-            bFilamentPreheatState = true;
-            mFilamentItem(target_temperature[0], target_temperature_bed);
-        }
-        else lcd_generic_preheat_menu();
+        preheat_or_continue();
     }
 }