Browse Source

Use const parameters instead of static casting

Alternative fix to #3149
Scott Lahteine 8 years ago
parent
commit
c97c2dcaf7

+ 2
- 2
Marlin/dogm_lcd_implementation.h View File

169
   }
169
   }
170
 }
170
 }
171
 
171
 
172
-char lcd_print(char* str) {
172
+char lcd_print(const char* str) {
173
   char c;
173
   char c;
174
   int i = 0;
174
   int i = 0;
175
   char n = 0;
175
   char n = 0;
508
 #define lcd_implementation_drawmenu_setting_edit_callback_long5(sel, row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(sel, row, pstr, ftostr5(*(data)))
508
 #define lcd_implementation_drawmenu_setting_edit_callback_long5(sel, row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(sel, row, pstr, ftostr5(*(data)))
509
 #define lcd_implementation_drawmenu_setting_edit_callback_bool(sel, row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(sel, row, pstr, (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF))
509
 #define lcd_implementation_drawmenu_setting_edit_callback_bool(sel, row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(sel, row, pstr, (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF))
510
 
510
 
511
-void lcd_implementation_drawedit(const char* pstr, char* value) {
511
+void lcd_implementation_drawedit(const char* pstr, const char* value) {
512
   uint8_t rows = 1;
512
   uint8_t rows = 1;
513
   uint8_t lcd_width = LCD_WIDTH, char_width = DOG_CHAR_WIDTH;
513
   uint8_t lcd_width = LCD_WIDTH, char_width = DOG_CHAR_WIDTH;
514
   uint8_t vallen = lcd_strlen(value);
514
   uint8_t vallen = lcd_strlen(value);

+ 3
- 3
Marlin/ultralcd.cpp View File

516
         babystepsTodo[axis] += distance;
516
         babystepsTodo[axis] += distance;
517
       #endif
517
       #endif
518
     }
518
     }
519
-    if (lcdDrawUpdate) lcd_implementation_drawedit(msg, (char*)"");
519
+    if (lcdDrawUpdate) lcd_implementation_drawedit(msg, PSTR(""));
520
     if (LCD_CLICKED) lcd_goto_previous_menu();
520
     if (LCD_CLICKED) lcd_goto_previous_menu();
521
   }
521
   }
522
 
522
 
1715
   #endif
1715
   #endif
1716
 }
1716
 }
1717
 
1717
 
1718
-int lcd_strlen(char* s) {
1718
+int lcd_strlen(const char* s) {
1719
   int i = 0, j = 0;
1719
   int i = 0, j = 0;
1720
   while (s[i]) {
1720
   while (s[i]) {
1721
     if ((s[i] & 0xc0) != 0x80) j++;
1721
     if ((s[i] & 0xc0) != 0x80) j++;
2397
    * MBL Move to mesh starting point
2397
    * MBL Move to mesh starting point
2398
    */
2398
    */
2399
   static void _lcd_level_bed_homing() {
2399
   static void _lcd_level_bed_homing() {
2400
-    if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR("XYZ"), (char*)"Homing");
2400
+    if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR("XYZ"), PSTR("Homing"));
2401
     if (axis_known_position[X_AXIS] && axis_known_position[Y_AXIS] && axis_known_position[Z_AXIS]) {
2401
     if (axis_known_position[X_AXIS] && axis_known_position[Y_AXIS] && axis_known_position[Z_AXIS]) {
2402
       current_position[Z_AXIS] = MESH_HOME_SEARCH_Z;
2402
       current_position[Z_AXIS] = MESH_HOME_SEARCH_Z;
2403
       plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
2403
       plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);

+ 1
- 1
Marlin/ultralcd.h View File

5
 #if ENABLED(ULTRA_LCD)
5
 #if ENABLED(ULTRA_LCD)
6
   #include "buzzer.h"
6
   #include "buzzer.h"
7
 
7
 
8
-  int lcd_strlen(char* s);
8
+  int lcd_strlen(const char* s);
9
   int lcd_strlen_P(const char* s);
9
   int lcd_strlen_P(const char* s);
10
   void lcd_update();
10
   void lcd_update();
11
   void lcd_init();
11
   void lcd_init();

+ 2
- 2
Marlin/ultralcd_implementation_hitachi_HD44780.h View File

407
   return n;
407
   return n;
408
 }
408
 }
409
 
409
 
410
-char lcd_print(char* str) {
410
+char lcd_print(const char* str) {
411
   char c, n = 0;
411
   char c, n = 0;
412
   unsigned char i = 0;
412
   unsigned char i = 0;
413
   while ((c = str[i++])) n += charset_mapper(c);
413
   while ((c = str[i++])) n += charset_mapper(c);
825
 #define lcd_implementation_drawmenu_setting_edit_callback_long5(sel, row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(sel, row, pstr, '>', ftostr5(*(data)))
825
 #define lcd_implementation_drawmenu_setting_edit_callback_long5(sel, row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(sel, row, pstr, '>', ftostr5(*(data)))
826
 #define lcd_implementation_drawmenu_setting_edit_callback_bool(sel, row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(sel, row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF))
826
 #define lcd_implementation_drawmenu_setting_edit_callback_bool(sel, row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(sel, row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF))
827
 
827
 
828
-void lcd_implementation_drawedit(const char* pstr, char* value) {
828
+void lcd_implementation_drawedit(const char* pstr, const char* value) {
829
   lcd.setCursor(1, 1);
829
   lcd.setCursor(1, 1);
830
   lcd_printPGM(pstr);
830
   lcd_printPGM(pstr);
831
   lcd.print(':');
831
   lcd.print(':');

Loading…
Cancel
Save