Преглед изворни кода

Move Info Menu to its own file

Scott Lahteine пре 6 година
родитељ
комит
96f313fb41
2 измењених фајлова са 198 додато и 173 уклоњено
  1. 0
    173
      Marlin/src/lcd/menu/menu.cpp
  2. 198
    0
      Marlin/src/lcd/menu/menu_info.cpp

+ 0
- 173
Marlin/src/lcd/menu/menu.cpp Прегледај датотеку

@@ -255,14 +255,6 @@ void menu_action_setting_edit_callback_bool(PGM_P pstr, bool* ptr, screenFunc_t
255 255
   void menu_advanced_filament();
256 256
 #endif
257 257
 
258
-#if ENABLED(LCD_INFO_MENU)
259
-  #if ENABLED(PRINTCOUNTER)
260
-    void menu_info_stats();
261
-  #endif
262
-  void menu_info_thermistors();
263
-  void menu_info_board();
264
-#endif
265
-
266 258
 #if ENABLED(ADVANCED_PAUSE_FEATURE)
267 259
   #if E_STEPPERS > 1 || ENABLED(FILAMENT_LOAD_UNLOAD_GCODES)
268 260
     void menu_change_filament();
@@ -1767,171 +1759,6 @@ void menu_advanced_settings() {
1767 1759
 
1768 1760
 #endif // SDSUPPORT
1769 1761
 
1770
-#if ENABLED(LCD_INFO_MENU)
1771
-
1772
-  #if ENABLED(PRINTCOUNTER)
1773
-    /**
1774
-     *
1775
-     * About Printer > Statistics submenu
1776
-     *
1777
-     */
1778
-    void menu_info_stats() {
1779
-      if (use_click()) { return lcd_goto_previous_menu(); }
1780
-
1781
-      char buffer[21];
1782
-      printStatistics stats = print_job_timer.getStats();
1783
-
1784
-      START_SCREEN();                                                                                // 12345678901234567890
1785
-      STATIC_ITEM(MSG_INFO_PRINT_COUNT ": ", false, false, itostr3left(stats.totalPrints));          // Print Count: 999
1786
-      STATIC_ITEM(MSG_INFO_COMPLETED_PRINTS": ", false, false, itostr3left(stats.finishedPrints));   // Completed  : 666
1787
-
1788
-      duration_t elapsed = stats.printTime;
1789
-      elapsed.toString(buffer);
1790
-
1791
-      STATIC_ITEM(MSG_INFO_PRINT_TIME ": ", false, false);                                           // Total print Time:
1792
-      STATIC_ITEM("", false, false, buffer);                                                         // 99y 364d 23h 59m 59s
1793
-
1794
-      elapsed = stats.longestPrint;
1795
-      elapsed.toString(buffer);
1796
-
1797
-      STATIC_ITEM(MSG_INFO_PRINT_LONGEST ": ", false, false);                                        // Longest job time:
1798
-      STATIC_ITEM("", false, false, buffer);                                                         // 99y 364d 23h 59m 59s
1799
-
1800
-      sprintf_P(buffer, PSTR("%ld.%im"), long(stats.filamentUsed / 1000), int16_t(stats.filamentUsed / 100) % 10);
1801
-      STATIC_ITEM(MSG_INFO_PRINT_FILAMENT ": ", false, false);                                       // Extruded total:
1802
-      STATIC_ITEM("", false, false, buffer);                                                         // 125m
1803
-      END_SCREEN();
1804
-    }
1805
-  #endif // PRINTCOUNTER
1806
-
1807
-  /**
1808
-   *
1809
-   * About Printer > Thermistors
1810
-   *
1811
-   */
1812
-  void menu_info_thermistors() {
1813
-    if (use_click()) { return lcd_goto_previous_menu(); }
1814
-    START_SCREEN();
1815
-    #define THERMISTOR_ID TEMP_SENSOR_0
1816
-    #include "../thermistornames.h"
1817
-    STATIC_ITEM("T0: " THERMISTOR_NAME, false, true);
1818
-    STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_0_MINTEMP), false);
1819
-    STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_0_MAXTEMP), false);
1820
-
1821
-    #if TEMP_SENSOR_1 != 0
1822
-      #undef THERMISTOR_ID
1823
-      #define THERMISTOR_ID TEMP_SENSOR_1
1824
-      #include "../thermistornames.h"
1825
-      STATIC_ITEM("T1: " THERMISTOR_NAME, false, true);
1826
-      STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_1_MINTEMP), false);
1827
-      STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_1_MAXTEMP), false);
1828
-    #endif
1829
-
1830
-    #if TEMP_SENSOR_2 != 0
1831
-      #undef THERMISTOR_ID
1832
-      #define THERMISTOR_ID TEMP_SENSOR_2
1833
-      #include "../thermistornames.h"
1834
-      STATIC_ITEM("T2: " THERMISTOR_NAME, false, true);
1835
-      STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_2_MINTEMP), false);
1836
-      STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_2_MAXTEMP), false);
1837
-    #endif
1838
-
1839
-    #if TEMP_SENSOR_3 != 0
1840
-      #undef THERMISTOR_ID
1841
-      #define THERMISTOR_ID TEMP_SENSOR_3
1842
-      #include "../thermistornames.h"
1843
-      STATIC_ITEM("T3: " THERMISTOR_NAME, false, true);
1844
-      STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_3_MINTEMP), false);
1845
-      STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_3_MAXTEMP), false);
1846
-    #endif
1847
-
1848
-    #if TEMP_SENSOR_4 != 0
1849
-      #undef THERMISTOR_ID
1850
-      #define THERMISTOR_ID TEMP_SENSOR_4
1851
-      #include "../thermistornames.h"
1852
-      STATIC_ITEM("T4: " THERMISTOR_NAME, false, true);
1853
-      STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_4_MINTEMP), false);
1854
-      STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_4_MAXTEMP), false);
1855
-    #endif
1856
-
1857
-    #if HAS_HEATED_BED
1858
-      #undef THERMISTOR_ID
1859
-      #define THERMISTOR_ID TEMP_SENSOR_BED
1860
-      #include "../thermistornames.h"
1861
-      STATIC_ITEM("TBed:" THERMISTOR_NAME, false, true);
1862
-      STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(BED_MINTEMP), false);
1863
-      STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(BED_MAXTEMP), false);
1864
-    #endif
1865
-    END_SCREEN();
1866
-  }
1867
-
1868
-  /**
1869
-   *
1870
-   * About Printer > Board Info
1871
-   *
1872
-   */
1873
-  void menu_info_board() {
1874
-    if (use_click()) { return lcd_goto_previous_menu(); }
1875
-    START_SCREEN();
1876
-    STATIC_ITEM(BOARD_NAME, true, true);                           // MyPrinterController
1877
-    STATIC_ITEM(MSG_INFO_BAUDRATE ": " STRINGIFY(BAUDRATE), true); // Baud: 250000
1878
-    STATIC_ITEM(MSG_INFO_PROTOCOL ": " PROTOCOL_VERSION, true);    // Protocol: 1.0
1879
-    #if POWER_SUPPLY == 0
1880
-      STATIC_ITEM(MSG_INFO_PSU ": Generic", true);
1881
-    #elif POWER_SUPPLY == 1
1882
-      STATIC_ITEM(MSG_INFO_PSU ": ATX", true);  // Power Supply: ATX
1883
-    #elif POWER_SUPPLY == 2
1884
-      STATIC_ITEM(MSG_INFO_PSU ": XBox", true); // Power Supply: XBox
1885
-    #endif
1886
-    END_SCREEN();
1887
-  }
1888
-
1889
-  /**
1890
-   *
1891
-   * About Printer > Printer Info
1892
-   *
1893
-   */
1894
-  void menu_info_printer() {
1895
-    if (use_click()) { return lcd_goto_previous_menu(); }
1896
-    START_SCREEN();
1897
-    STATIC_ITEM(MSG_MARLIN, true, true);                             // Marlin
1898
-    STATIC_ITEM(SHORT_BUILD_VERSION, true);                          // x.x.x-Branch
1899
-    STATIC_ITEM(STRING_DISTRIBUTION_DATE, true);                     // YYYY-MM-DD HH:MM
1900
-    STATIC_ITEM(MACHINE_NAME, true);                                 // My3DPrinter
1901
-    STATIC_ITEM(WEBSITE_URL, true);                                  // www.my3dprinter.com
1902
-    STATIC_ITEM(MSG_INFO_EXTRUDERS ": " STRINGIFY(EXTRUDERS), true); // Extruders: 2
1903
-    #if ENABLED(AUTO_BED_LEVELING_3POINT)
1904
-      STATIC_ITEM(MSG_3POINT_LEVELING, true);                        // 3-Point Leveling
1905
-    #elif ENABLED(AUTO_BED_LEVELING_LINEAR)
1906
-      STATIC_ITEM(MSG_LINEAR_LEVELING, true);                        // Linear Leveling
1907
-    #elif ENABLED(AUTO_BED_LEVELING_BILINEAR)
1908
-      STATIC_ITEM(MSG_BILINEAR_LEVELING, true);                      // Bi-linear Leveling
1909
-    #elif ENABLED(AUTO_BED_LEVELING_UBL)
1910
-      STATIC_ITEM(MSG_UBL_LEVELING, true);                           // Unified Bed Leveling
1911
-    #elif ENABLED(MESH_BED_LEVELING)
1912
-      STATIC_ITEM(MSG_MESH_LEVELING, true);                          // Mesh Leveling
1913
-    #endif
1914
-    END_SCREEN();
1915
-  }
1916
-
1917
-  /**
1918
-   *
1919
-   * "About Printer" submenu
1920
-   *
1921
-   */
1922
-  void menu_info() {
1923
-    START_MENU();
1924
-    MENU_BACK(MSG_MAIN);
1925
-    MENU_ITEM(submenu, MSG_INFO_PRINTER_MENU, menu_info_printer);        // Printer Info >
1926
-    MENU_ITEM(submenu, MSG_INFO_BOARD_MENU, menu_info_board);            // Board Info >
1927
-    MENU_ITEM(submenu, MSG_INFO_THERMISTOR_MENU, menu_info_thermistors); // Thermistors >
1928
-    #if ENABLED(PRINTCOUNTER)
1929
-      MENU_ITEM(submenu, MSG_INFO_STATS_MENU, menu_info_stats);          // Printer Statistics >
1930
-    #endif
1931
-    END_MENU();
1932
-  }
1933
-#endif // LCD_INFO_MENU
1934
-
1935 1762
 /**
1936 1763
  *
1937 1764
  * LED Menu

+ 198
- 0
Marlin/src/lcd/menu/menu_info.cpp Прегледај датотеку

@@ -0,0 +1,198 @@
1
+/**
2
+ * Marlin 3D Printer Firmware
3
+ * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4
+ *
5
+ * Based on Sprinter and grbl.
6
+ * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
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
+ * You should have received a copy of the GNU General Public License
19
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
+ *
21
+ */
22
+
23
+//
24
+// Info Menu
25
+//
26
+
27
+#include "../../inc/MarlinConfigPre.h"
28
+
29
+#if HAS_LCD_MENU && ENABLED(LCD_INFO_MENU)
30
+
31
+#include "menu.h"
32
+// #include "../../module/motion.h"
33
+// #include "../../module/planner.h"
34
+// #include "../../module/temperature.h"
35
+// #include "../../Marlin.h"
36
+
37
+// #if HAS_LEVELING
38
+//   #include "../../feature/bedlevel/bedlevel.h"
39
+// #endif
40
+
41
+
42
+#if ENABLED(PRINTCOUNTER)
43
+
44
+  #include "../../module/printcounter.h"
45
+
46
+  //
47
+  // About Printer > Printer Stats
48
+  //
49
+  void menu_info_stats() {
50
+    if (use_click()) { return lcd_goto_previous_menu(); }
51
+
52
+    char buffer[21];
53
+    printStatistics stats = print_job_timer.getStats();
54
+
55
+    START_SCREEN();                                                                                // 12345678901234567890
56
+    STATIC_ITEM(MSG_INFO_PRINT_COUNT ": ", false, false, itostr3left(stats.totalPrints));          // Print Count: 999
57
+    STATIC_ITEM(MSG_INFO_COMPLETED_PRINTS": ", false, false, itostr3left(stats.finishedPrints));   // Completed  : 666
58
+
59
+    duration_t elapsed = stats.printTime;
60
+    elapsed.toString(buffer);
61
+
62
+    STATIC_ITEM(MSG_INFO_PRINT_TIME ": ", false, false);                                           // Total print Time:
63
+    STATIC_ITEM("", false, false, buffer);                                                         // 99y 364d 23h 59m 59s
64
+
65
+    elapsed = stats.longestPrint;
66
+    elapsed.toString(buffer);
67
+
68
+    STATIC_ITEM(MSG_INFO_PRINT_LONGEST ": ", false, false);                                        // Longest job time:
69
+    STATIC_ITEM("", false, false, buffer);                                                         // 99y 364d 23h 59m 59s
70
+
71
+    sprintf_P(buffer, PSTR("%ld.%im"), long(stats.filamentUsed / 1000), int16_t(stats.filamentUsed / 100) % 10);
72
+    STATIC_ITEM(MSG_INFO_PRINT_FILAMENT ": ", false, false);                                       // Extruded total:
73
+    STATIC_ITEM("", false, false, buffer);                                                         // 125m
74
+    END_SCREEN();
75
+  }
76
+
77
+#endif
78
+
79
+//
80
+// About Printer > Thermistors
81
+//
82
+void menu_info_thermistors() {
83
+  if (use_click()) { return lcd_goto_previous_menu(); }
84
+  START_SCREEN();
85
+  #define THERMISTOR_ID TEMP_SENSOR_0
86
+  #include "../thermistornames.h"
87
+  STATIC_ITEM("T0: " THERMISTOR_NAME, false, true);
88
+  STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_0_MINTEMP), false);
89
+  STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_0_MAXTEMP), false);
90
+
91
+  #if TEMP_SENSOR_1 != 0
92
+    #undef THERMISTOR_ID
93
+    #define THERMISTOR_ID TEMP_SENSOR_1
94
+    #include "../thermistornames.h"
95
+    STATIC_ITEM("T1: " THERMISTOR_NAME, false, true);
96
+    STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_1_MINTEMP), false);
97
+    STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_1_MAXTEMP), false);
98
+  #endif
99
+
100
+  #if TEMP_SENSOR_2 != 0
101
+    #undef THERMISTOR_ID
102
+    #define THERMISTOR_ID TEMP_SENSOR_2
103
+    #include "../thermistornames.h"
104
+    STATIC_ITEM("T2: " THERMISTOR_NAME, false, true);
105
+    STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_2_MINTEMP), false);
106
+    STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_2_MAXTEMP), false);
107
+  #endif
108
+
109
+  #if TEMP_SENSOR_3 != 0
110
+    #undef THERMISTOR_ID
111
+    #define THERMISTOR_ID TEMP_SENSOR_3
112
+    #include "../thermistornames.h"
113
+    STATIC_ITEM("T3: " THERMISTOR_NAME, false, true);
114
+    STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_3_MINTEMP), false);
115
+    STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_3_MAXTEMP), false);
116
+  #endif
117
+
118
+  #if TEMP_SENSOR_4 != 0
119
+    #undef THERMISTOR_ID
120
+    #define THERMISTOR_ID TEMP_SENSOR_4
121
+    #include "../thermistornames.h"
122
+    STATIC_ITEM("T4: " THERMISTOR_NAME, false, true);
123
+    STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(HEATER_4_MINTEMP), false);
124
+    STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(HEATER_4_MAXTEMP), false);
125
+  #endif
126
+
127
+  #if HAS_HEATED_BED
128
+    #undef THERMISTOR_ID
129
+    #define THERMISTOR_ID TEMP_SENSOR_BED
130
+    #include "../thermistornames.h"
131
+    STATIC_ITEM("TBed:" THERMISTOR_NAME, false, true);
132
+    STATIC_ITEM(MSG_INFO_MIN_TEMP ": " STRINGIFY(BED_MINTEMP), false);
133
+    STATIC_ITEM(MSG_INFO_MAX_TEMP ": " STRINGIFY(BED_MAXTEMP), false);
134
+  #endif
135
+  END_SCREEN();
136
+}
137
+
138
+//
139
+// About Printer > Board Info
140
+//
141
+void menu_info_board() {
142
+  if (use_click()) { return lcd_goto_previous_menu(); }
143
+  START_SCREEN();
144
+  STATIC_ITEM(BOARD_NAME, true, true);                           // MyPrinterController
145
+  STATIC_ITEM(MSG_INFO_BAUDRATE ": " STRINGIFY(BAUDRATE), true); // Baud: 250000
146
+  STATIC_ITEM(MSG_INFO_PROTOCOL ": " PROTOCOL_VERSION, true);    // Protocol: 1.0
147
+  #if POWER_SUPPLY == 0
148
+    STATIC_ITEM(MSG_INFO_PSU ": Generic", true);
149
+  #elif POWER_SUPPLY == 1
150
+    STATIC_ITEM(MSG_INFO_PSU ": ATX", true);  // Power Supply: ATX
151
+  #elif POWER_SUPPLY == 2
152
+    STATIC_ITEM(MSG_INFO_PSU ": XBox", true); // Power Supply: XBox
153
+  #endif
154
+  END_SCREEN();
155
+}
156
+
157
+//
158
+// About Printer > Printer Info
159
+//
160
+void menu_info_printer() {
161
+  if (use_click()) { return lcd_goto_previous_menu(); }
162
+  START_SCREEN();
163
+  STATIC_ITEM(MSG_MARLIN, true, true);                             // Marlin
164
+  STATIC_ITEM(SHORT_BUILD_VERSION, true);                          // x.x.x-Branch
165
+  STATIC_ITEM(STRING_DISTRIBUTION_DATE, true);                     // YYYY-MM-DD HH:MM
166
+  STATIC_ITEM(MACHINE_NAME, true);                                 // My3DPrinter
167
+  STATIC_ITEM(WEBSITE_URL, true);                                  // www.my3dprinter.com
168
+  STATIC_ITEM(MSG_INFO_EXTRUDERS ": " STRINGIFY(EXTRUDERS), true); // Extruders: 2
169
+  #if ENABLED(AUTO_BED_LEVELING_3POINT)
170
+    STATIC_ITEM(MSG_3POINT_LEVELING, true);                        // 3-Point Leveling
171
+  #elif ENABLED(AUTO_BED_LEVELING_LINEAR)
172
+    STATIC_ITEM(MSG_LINEAR_LEVELING, true);                        // Linear Leveling
173
+  #elif ENABLED(AUTO_BED_LEVELING_BILINEAR)
174
+    STATIC_ITEM(MSG_BILINEAR_LEVELING, true);                      // Bi-linear Leveling
175
+  #elif ENABLED(AUTO_BED_LEVELING_UBL)
176
+    STATIC_ITEM(MSG_UBL_LEVELING, true);                           // Unified Bed Leveling
177
+  #elif ENABLED(MESH_BED_LEVELING)
178
+    STATIC_ITEM(MSG_MESH_LEVELING, true);                          // Mesh Leveling
179
+  #endif
180
+  END_SCREEN();
181
+}
182
+
183
+//
184
+// "About Printer" submenu
185
+//
186
+void menu_info() {
187
+  START_MENU();
188
+  MENU_BACK(MSG_MAIN);
189
+  MENU_ITEM(submenu, MSG_INFO_PRINTER_MENU, menu_info_printer);        // Printer Info >
190
+  MENU_ITEM(submenu, MSG_INFO_BOARD_MENU, menu_info_board);            // Board Info >
191
+  MENU_ITEM(submenu, MSG_INFO_THERMISTOR_MENU, menu_info_thermistors); // Thermistors >
192
+  #if ENABLED(PRINTCOUNTER)
193
+    MENU_ITEM(submenu, MSG_INFO_STATS_MENU, menu_info_stats);          // Printer Stats >
194
+  #endif
195
+  END_MENU();
196
+}
197
+
198
+#endif // HAS_LCD_MENU && LCD_INFO_MENU

Loading…
Откажи
Сачувај