Parcourir la source

FTDI EVE Touch UI fixes (#21706)

Marcio T il y a 3 ans
Parent
révision
9c7344487a
Aucun compte lié à l'adresse e-mail de l'auteur

+ 1
- 1
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/archim2-flash/media_file_reader.h Voir le fichier

@@ -32,7 +32,7 @@
32 32
 class MediaFileReader {
33 33
   private:
34 34
     #if ENABLED(SDSUPPORT)
35
-      Sd2Card  card;
35
+      DiskIODriver_SPI_SD card;
36 36
       SdVolume volume;
37 37
       SdFile   root, file;
38 38
     #endif

+ 3
- 9
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/screens/cocoa_press_advanced_settings_menu.cpp Voir le fichier

@@ -40,8 +40,7 @@ using namespace Theme;
40 40
 #define DISPLAY_POS             BTN_POS(1,3), BTN_SIZE(1,1)
41 41
 #define INTERFACE_POS           BTN_POS(2,3), BTN_SIZE(1,1)
42 42
 #define ENDSTOPS_POS            BTN_POS(3,3), BTN_SIZE(1,1)
43
-#define CASE_LIGHT_POS          BTN_POS(1,4), BTN_SIZE(1,1)
44
-#define RESTORE_DEFAULTS_POS    BTN_POS(2,4), BTN_SIZE(1,1)
43
+#define RESTORE_DEFAULTS_POS    BTN_POS(1,4), BTN_SIZE(2,1)
45 44
 #define BACK_POS                BTN_POS(3,4), BTN_SIZE(1,1)
46 45
 
47 46
 void AdvancedSettingsMenu::onRedraw(draw_mode_t what) {
@@ -66,9 +65,7 @@ void AdvancedSettingsMenu::onRedraw(draw_mode_t what) {
66 65
       .tag(8) .button(ENDSTOPS_POS,           GET_TEXT_F(MSG_LCD_ENDSTOPS))
67 66
       .tag(9) .button(INTERFACE_POS,          GET_TEXT_F(MSG_INTERFACE))
68 67
       .tag(10).button(DISPLAY_POS,            GET_TEXT_F(MSG_DISPLAY_MENU))
69
-      .enabled(ENABLED(CASE_LIGHT_ENABLE))
70
-      .tag(11).button(CASE_LIGHT_POS,         GET_TEXT_F(MSG_CASE_LIGHT))
71
-      .tag(12).button(RESTORE_DEFAULTS_POS,   GET_TEXT_F(MSG_RESTORE_DEFAULTS))
68
+      .tag(11).button(RESTORE_DEFAULTS_POS,   GET_TEXT_F(MSG_RESTORE_DEFAULTS))
72 69
       .colors(action_btn)
73 70
       .tag(1).button(BACK_POS,                GET_TEXT_F(MSG_BACK));
74 71
   }
@@ -90,10 +87,7 @@ bool AdvancedSettingsMenu::onTouchEnd(uint8_t tag) {
90 87
     case  8: GOTO_SCREEN(EndstopStatesScreen); break;
91 88
     case  9: GOTO_SCREEN(InterfaceSettingsScreen); LockScreen::check_passcode(); break;
92 89
     case 10: GOTO_SCREEN(DisplayTuningScreen); break;
93
-    #if ENABLED(CASE_LIGHT_ENABLE)
94
-    case 11: GOTO_SCREEN(CaseLightScreen); break;
95
-    #endif
96
-    case 12: GOTO_SCREEN(RestoreFailsafeDialogBox); LockScreen::check_passcode(); break;
90
+    case 11: GOTO_SCREEN(RestoreFailsafeDialogBox); LockScreen::check_passcode(); break;
97 91
     default: return false;
98 92
   }
99 93
   return true;

+ 17
- 14
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/screens/cocoa_press_main_menu.cpp Voir le fichier

@@ -29,7 +29,7 @@
29 29
 using namespace FTDI;
30 30
 using namespace Theme;
31 31
 
32
-#define GRID_ROWS 5
32
+#define GRID_ROWS 6
33 33
 #define GRID_COLS 2
34 34
 
35 35
 #define ZPROBE_ZOFFSET_POS    BTN_POS(1,1), BTN_SIZE(1,1)
@@ -37,11 +37,12 @@ using namespace Theme;
37 37
 #define TEMPERATURE_POS       BTN_POS(2,1), BTN_SIZE(1,1)
38 38
 #define MOVE_E_POS            BTN_POS(2,2), BTN_SIZE(1,1)
39 39
 #define SPEED_POS             BTN_POS(1,3), BTN_SIZE(1,1)
40
-#define ADVANCED_SETTINGS_POS BTN_POS(2,3), BTN_SIZE(1,1)
41
-#define DISABLE_STEPPERS_POS  BTN_POS(1,4), BTN_SIZE(1,1)
42
-#define LEVELING_POS          BTN_POS(2,4), BTN_SIZE(1,1)
43
-#define ABOUT_PRINTER_POS     BTN_POS(1,5), BTN_SIZE(1,1)
44
-#define BACK_POS              BTN_POS(2,5), BTN_SIZE(1,1)
40
+#define FLOW_POS              BTN_POS(2,3), BTN_SIZE(1,1)
41
+#define ADVANCED_SETTINGS_POS BTN_POS(1,4), BTN_SIZE(1,1)
42
+#define DISABLE_STEPPERS_POS  BTN_POS(2,4), BTN_SIZE(1,1)
43
+#define LEVELING_POS          BTN_POS(1,5), BTN_SIZE(1,1)
44
+#define ABOUT_PRINTER_POS     BTN_POS(2,5), BTN_SIZE(1,1)
45
+#define BACK_POS              BTN_POS(1,6), BTN_SIZE(2,1)
45 46
 
46 47
 void MainMenu::onRedraw(draw_mode_t what) {
47 48
   if (what & BACKGROUND) {
@@ -60,11 +61,12 @@ void MainMenu::onRedraw(draw_mode_t what) {
60 61
        .tag( 4).button(ZPROBE_ZOFFSET_POS,    GET_TEXT_F(MSG_ZPROBE_ZOFFSET))
61 62
        .tag( 5).button(MOVE_E_POS,            GET_TEXT_F(MSG_E_MOVE))
62 63
        .tag( 6).button(SPEED_POS,             GET_TEXT_F(MSG_PRINT_SPEED))
63
-       .tag( 7).button(ADVANCED_SETTINGS_POS, GET_TEXT_F(MSG_ADVANCED_SETTINGS))
64
-       .tag( 8).button(DISABLE_STEPPERS_POS,  GET_TEXT_F(MSG_DISABLE_STEPPERS))
64
+       .tag( 7).button(FLOW_POS,              GET_TEXT_F(MSG_FLOW))
65
+       .tag( 8).button(ADVANCED_SETTINGS_POS, GET_TEXT_F(MSG_ADVANCED_SETTINGS))
66
+       .tag( 9).button(DISABLE_STEPPERS_POS,  GET_TEXT_F(MSG_DISABLE_STEPPERS))
65 67
        .enabled(HAS_LEVELING)
66
-       .tag( 9).button(LEVELING_POS,          GET_TEXT_F(MSG_LEVELING))
67
-       .tag(10).button(ABOUT_PRINTER_POS,     GET_TEXT_F(MSG_INFO_MENU))
68
+       .tag(10).button(LEVELING_POS,          GET_TEXT_F(MSG_LEVELING))
69
+       .tag(11).button(ABOUT_PRINTER_POS,     GET_TEXT_F(MSG_INFO_MENU))
68 70
        .colors(action_btn)
69 71
        .tag(1).button(BACK_POS,               GET_TEXT_F(MSG_BACK));
70 72
   }
@@ -82,12 +84,13 @@ bool MainMenu::onTouchEnd(uint8_t tag) {
82 84
     #endif
83 85
     case  5: GOTO_SCREEN(MoveEScreen);                      break;
84 86
     case  6: GOTO_SCREEN(FeedratePercentScreen);            break;
85
-    case  7: GOTO_SCREEN(AdvancedSettingsMenu);             break;
86
-    case  8: injectCommands_P(PSTR("M84"));                 break;
87
+    case  7: GOTO_SCREEN(FlowPercentScreen);                break;
88
+    case  8: GOTO_SCREEN(AdvancedSettingsMenu);             break;
89
+    case  9: injectCommands_P(PSTR("M84"));                 break;
87 90
     #if HAS_LEVELING
88
-    case 9:  GOTO_SCREEN(LevelingMenu);                     break;
91
+    case 10:  GOTO_SCREEN(LevelingMenu);                     break;
89 92
     #endif
90
-    case 10: GOTO_SCREEN(AboutScreen);                      break;
93
+    case 11: GOTO_SCREEN(AboutScreen);                      break;
91 94
     default:
92 95
       return false;
93 96
   }

+ 50
- 0
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/screens/flow_percent_screen.cpp Voir le fichier

@@ -0,0 +1,50 @@
1
+/***************************
2
+ * flow_percent_screen.cpp *
3
+ ***************************/
4
+
5
+/****************************************************************************
6
+ *   Written By Marcio Teixeira 2021 - Cocoa Press                          *
7
+ *                                                                          *
8
+ *   This program is free software: you can redistribute it and/or modify   *
9
+ *   it under the terms of the GNU General Public License as published by   *
10
+ *   the Free Software Foundation, either version 3 of the License, or      *
11
+ *   (at your option) any later version.                                    *
12
+ *                                                                          *
13
+ *   This program is distributed in the hope that it will be useful,        *
14
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of         *
15
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
16
+ *   GNU General Public License for more details.                           *
17
+ *                                                                          *
18
+ *   To view a copy of the GNU General Public License, go to the following  *
19
+ *   location: <https://www.gnu.org/licenses/>.                             *
20
+ ****************************************************************************/
21
+
22
+#include "../config.h"
23
+#include "screens.h"
24
+
25
+#ifdef FTDI_FLOW_PERCENT_SCREEN
26
+
27
+using namespace FTDI;
28
+using namespace ExtUI;
29
+
30
+void FlowPercentScreen::onRedraw(draw_mode_t what) {
31
+  widgets_t w(what);
32
+  w.precision(0).units(GET_TEXT_F(MSG_UNITS_PERCENT));
33
+
34
+  w.heading(GET_TEXT_F(MSG_FLOW));
35
+  w.adjuster(4,  GET_TEXT_F(MSG_FLOW), getFlow_percent(E0));
36
+  w.increments();
37
+}
38
+
39
+bool FlowPercentScreen::onTouchHeld(uint8_t tag) {
40
+  const float increment = getIncrement();
41
+  switch (tag) {
42
+    case 4: UI_DECREMENT(Flow_percent, E0); break;
43
+    case 5: UI_INCREMENT(Flow_percent, E0); break;
44
+    default:
45
+      return false;
46
+  }
47
+  return true;
48
+}
49
+
50
+#endif // FTDI_FLOW_PERCENT_SCREEN

+ 31
- 0
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/screens/flow_percent_screen.h Voir le fichier

@@ -0,0 +1,31 @@
1
+/*************************
2
+ * flow_percent_screen.h *
3
+ *************************/
4
+
5
+/****************************************************************************
6
+ *   Written By Marcio Teixeira 2021 - Cocoa Press                          *
7
+ *                                                                          *
8
+ *   This program is free software: you can redistribute it and/or modify   *
9
+ *   it under the terms of the GNU General Public License as published by   *
10
+ *   the Free Software Foundation, either version 3 of the License, or      *
11
+ *   (at your option) any later version.                                    *
12
+ *                                                                          *
13
+ *   This program is distributed in the hope that it will be useful,        *
14
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of         *
15
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
16
+ *   GNU General Public License for more details.                           *
17
+ *                                                                          *
18
+ *   To view a copy of the GNU General Public License, go to the following  *
19
+ *   location: <https://www.gnu.org/licenses/>.                             *
20
+ ****************************************************************************/
21
+
22
+#pragma once
23
+
24
+#define FTDI_FLOW_PERCENT_SCREEN
25
+#define FTDI_FLOW_PERCENT_SCREEN_CLASS FlowPercentScreen
26
+
27
+class FlowPercentScreen : public BaseNumericAdjustmentScreen, public CachedScreen<FLOW_PERCENT_SCREEN_CACHE> {
28
+  public:
29
+    static void onRedraw(draw_mode_t);
30
+    static bool onTouchHeld(uint8_t tag);
31
+};

+ 1
- 2
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/screens/leveling_menu.cpp Voir le fichier

@@ -81,9 +81,8 @@ void LevelingMenu::onRedraw(draw_mode_t what) {
81 81
        .text(BLTOUCH_TITLE_POS, GET_TEXT_F(MSG_BLTOUCH))
82 82
     #endif
83 83
        .font(font_medium).colors(normal_btn)
84
-    #if EITHER(Z_STEPPER_AUTO_ALIGN,MECHANICAL_GANTRY_CALIBRATION)
84
+       .enabled(EITHER(Z_STEPPER_AUTO_ALIGN,MECHANICAL_GANTRY_CALIBRATION))
85 85
        .tag(2).button(LEVEL_AXIS_POS, GET_TEXT_F(MSG_LEVEL_X_AXIS))
86
-    #endif
87 86
        .tag(3).button(PROBE_BED_POS, GET_TEXT_F(MSG_PROBE_BED))
88 87
        .enabled(ENABLED(HAS_MESH))
89 88
        .tag(4).button(SHOW_MESH_POS, GET_TEXT_F(MSG_SHOW_MESH))

+ 1
- 0
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/screens/screens.cpp Voir le fichier

@@ -80,6 +80,7 @@ SCREEN_TABLE {
80 80
   DECL_SCREEN_IF_INCLUDED(FTDI_NOZZLE_OFFSETS_SCREEN)
81 81
   DECL_SCREEN_IF_INCLUDED(FTDI_BACKLASH_COMP_SCREEN)
82 82
   DECL_SCREEN_IF_INCLUDED(FTDI_FEEDRATE_PERCENT_SCREEN)
83
+  DECL_SCREEN_IF_INCLUDED(FTDI_FLOW_PERCENT_SCREEN)
83 84
   DECL_SCREEN_IF_INCLUDED(FTDI_MAX_VELOCITY_SCREEN)
84 85
   DECL_SCREEN_IF_INCLUDED(FTDI_MAX_ACCELERATION_SCREEN)
85 86
   DECL_SCREEN_IF_INCLUDED(FTDI_DEFAULT_ACCELERATION_SCREEN)

+ 2
- 0
Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/screens/screens.h Voir le fichier

@@ -55,6 +55,7 @@ enum {
55 55
   MAX_VELOCITY_SCREEN_CACHE,
56 56
   MAX_ACCELERATION_SCREEN_CACHE,
57 57
   DEFAULT_ACCELERATION_SCREEN_CACHE,
58
+  FLOW_PERCENT_SCREEN_CACHE,
58 59
   #if HAS_LEVELING
59 60
     LEVELING_SCREEN_CACHE,
60 61
     #if HAS_BED_PROBE
@@ -150,6 +151,7 @@ enum {
150 151
   #include "cocoa_press_preheat_screen.h"
151 152
   #include "cocoa_press_load_chocolate.h"
152 153
   #include "move_axis_screen.h"
154
+  #include "flow_percent_screen.h"
153 155
   #include "cocoa_press_move_xyz_screen.h"
154 156
   #include "cocoa_press_move_e_screen.h"
155 157
   #include "tune_menu.h"

+ 4
- 4
Marlin/src/lcd/extui/lib/nextion/nextion_tft.cpp Voir le fichier

@@ -237,7 +237,7 @@ void NextionTFT::PanelInfo(uint8_t req) {
237 237
       SEND_VALasTXT("tmppage.tool", getActiveTool());
238 238
       SEND_VALasTXT("tmppage.fan", ui8tostr3rj(getActualFan_percent(FAN0)));
239 239
       SEND_VALasTXT("tmppage.speed", getFeedrate_percent());
240
-      SEND_VALasTXT("tmppage.flow", getFlowPercentage(getActiveTool()));
240
+      SEND_VALasTXT("tmppage.flow", getFlow_percent(getActiveTool()));
241 241
       SEND_VALasTXT("tmppage.progress", ui8tostr3rj(getProgress_percent()));
242 242
       SEND_VALasTXT("tmppage.layer", layer);
243 243
       SEND_VALasTXT("tmppage.x", getAxisPosition_mm(X));
@@ -640,9 +640,9 @@ void NextionTFT::UpdateOnChange() {
640 640
 
641 641
   // tmppage Flow
642 642
   static uint8_t last_flow_speed = 99;
643
-  if (last_flow_speed != getFlowPercentage(getActiveTool())) {
644
-    SEND_VALasTXT("tmppage.flow", getFlowPercentage(getActiveTool()));
645
-    last_flow_speed = getFlowPercentage(getActiveTool());
643
+  if (last_flow_speed != getFlow_percent(getActiveTool())) {
644
+    SEND_VALasTXT("tmppage.flow", getFlow_percent(getActiveTool()));
645
+    last_flow_speed = getFlow_percent(getActiveTool());
646 646
   }
647 647
 
648 648
   // tmppage Progress + Layer + Time

+ 1
- 1
Marlin/src/lcd/extui/ui_api.cpp Voir le fichier

@@ -691,7 +691,7 @@ namespace ExtUI {
691 691
   #endif
692 692
 
693 693
   feedRate_t getFeedrate_mm_s()                       { return feedrate_mm_s; }
694
-  int16_t getFlowPercentage(const extruder_t extr)    { return planner.flow_percentage[extr]; }
694
+  int16_t getFlow_percent(const extruder_t extr)      { return planner.flow_percentage[extr]; }
695 695
   feedRate_t getMinFeedrate_mm_s()                    { return planner.settings.min_feedrate_mm_s; }
696 696
   feedRate_t getMinTravelFeedrate_mm_s()              { return planner.settings.min_travel_feedrate_mm_s; }
697 697
   float getPrintingAcceleration_mm_s2()               { return planner.settings.acceleration; }

+ 1
- 1
Marlin/src/lcd/extui/ui_api.h Voir le fichier

@@ -129,7 +129,7 @@ namespace ExtUI {
129 129
   float getRetractAcceleration_mm_s2();
130 130
   float getTravelAcceleration_mm_s2();
131 131
   float getFeedrate_percent();
132
-  int16_t getFlowPercentage(const extruder_t);
132
+  int16_t getFlow_percent(const extruder_t);
133 133
 
134 134
   inline uint8_t getProgress_percent() { return ui.get_progress_percent(); }
135 135
 

Chargement…
Annuler
Enregistrer