Ver código fonte

Added pause and retract lcd menu items

James Adams 13 anos atrás
pai
commit
96f4f90cb3
1 arquivos alterados com 59 adições e 5 exclusões
  1. 59
    5
      Marlin/ultralcd.pde

+ 59
- 5
Marlin/ultralcd.pde Ver arquivo

@@ -561,7 +561,7 @@ void MainMenu::showPrepare()
561 561
 
562 562
 enum {
563 563
   ItemAM_exit,
564
-  ItemAM_X, ItemAM_Y, ItemAM_Z, ItemAM_E
564
+  ItemAM_X, ItemAM_Y, ItemAM_Z, ItemAM_E, ItemAM_ERetract
565 565
 };
566 566
 
567 567
 void MainMenu::showAxisMove()
@@ -714,8 +714,12 @@ void MainMenu::showAxisMove()
714 714
           break;
715 715
           case ItemAM_E:
716 716
           // ErikDB: TODO: this length should be changed for volumetric.
717
-          MENUITEM(  lcdprintPGM(MSG_EXTRUDE)  ,  BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E5");beepshort(); ) ;
717
+          MENUITEM(  lcdprintPGM(MSG_EXTRUDE)  ,  BLOCK;enquecommand("G92 E0");enquecommand("G1 F70 E1");beepshort(); ) ;
718 718
           break;
719
+          case ItemAM_ERetract:
720
+              // ErikDB: TODO: this length should be changed for volumetric.
721
+              MENUITEM(  lcdprintPGM(MSG_RETRACT)  ,  BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E-1");beepshort(); ) ;
722
+              break;
719 723
           default:
720 724
           break;
721 725
       }
@@ -2338,7 +2342,7 @@ void MainMenu::showSD()
2338 2342
 }
2339 2343
 
2340 2344
 
2341
-enum {ItemM_watch, ItemM_prepare, ItemM_control, ItemM_file };
2345
+enum {ItemM_watch, ItemM_prepare, ItemM_control, ItemM_file, ItemM_pause};
2342 2346
 void MainMenu::showMainMenu()
2343 2347
 {
2344 2348
 
@@ -2410,18 +2414,68 @@ void MainMenu::showMainMenu()
2410 2414
           beepshort();
2411 2415
         }
2412 2416
       }break;
2417
+        case ItemM_pause:
2418
+        {
2419
+            if(force_lcd_update)
2420
+            {
2421
+                lcd.setCursor(0,line);
2422
+#ifdef CARDINSERTED
2423
+                if(CARDINSERTED)
2424
+#else
2425
+                    if(true)
2426
+#endif
2427
+                    {
2428
+                        if(card.sdprinting)
2429
+                            lcdprintPGM(MSG_PAUSE_PRINT);
2430
+                        else
2431
+                            lcdprintPGM(MSG_RESUME_PRINT);
2432
+                    }
2433
+                    else
2434
+                    {
2435
+                        //lcdprintPGM(MSG_NO_CARD);
2436
+                    }
2437
+            }
2438
+#ifdef CARDINSERTED
2439
+            if(CARDINSERTED)
2440
+#endif
2441
+                if((activeline==line) && CLICKED)
2442
+                {
2443
+                    if(card.sdprinting)
2444
+                    {
2445
+                        card.pauseSDPrint();
2446
+                        beepshort();
2447
+                        status = Main_Status;
2448
+                    }
2449
+                    else
2450
+                    {
2451
+                        card.startFileprint();
2452
+                        starttime=millis();
2453
+                        beepshort();
2454
+                        status = Main_Status;
2455
+                    }
2456
+                }
2457
+        }break;
2413 2458
       #else
2414 2459
       case ItemM_file:
2415 2460
         break;
2461
+        case ItemM_pause:
2462
+            break;
2416 2463
       #endif
2417
-      default: 
2464
+      default:
2418 2465
         SERIAL_ERROR_START;
2419 2466
         SERIAL_ERRORLNPGM(MSG_SERIAL_ERROR_MENU_STRUCTURE);
2420 2467
       break;
2421 2468
     }
2422 2469
     line++;
2423 2470
   }
2424
-  updateActiveLines(3,encoderpos);
2471
+    
2472
+    uint8_t numberOfLines = 4;
2473
+#ifdef SDSUPPORT
2474
+    numberOfLines = 4;
2475
+#else
2476
+    numberOfLines = 3;
2477
+#endif
2478
+    updateActiveLines(numberOfLines,encoderpos);
2425 2479
 }
2426 2480
 
2427 2481
 void MainMenu::update()

Carregando…
Cancelar
Salvar