Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of Smoothie by
JogScreen.cpp
00001 /* 00002 This file is part of Smoothie (http://smoothieware.org/). The motion control part is heavily based on Grbl (https://github.com/simen/grbl). 00003 Smoothie is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. 00004 Smoothie is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 00005 You should have received a copy of the GNU General Public License along with Smoothie. If not, see <http://www.gnu.org/licenses/>. 00006 */ 00007 00008 #include "libs/Kernel.h" 00009 #include "libs/SerialMessage.h" 00010 #include "Panel.h" 00011 #include "PanelScreen.h" 00012 #include "MainMenuScreen.h" 00013 #include "JogScreen.h" 00014 #include "ControlScreen.h" 00015 #include "libs/nuts_bolts.h" 00016 #include "libs/utils.h" 00017 #include <string> 00018 00019 using namespace std; 00020 00021 00022 JogScreen::JogScreen() 00023 { 00024 this->control_screen = new ControlScreen(); 00025 this->control_screen->set_parent(this); 00026 } 00027 00028 void JogScreen::on_enter() 00029 { 00030 this->panel->enter_menu_mode(); 00031 this->panel->setup_menu(4); 00032 this->refresh_menu(); 00033 } 00034 00035 void JogScreen::on_refresh() 00036 { 00037 if ( this->panel->menu_change() ) { 00038 this->refresh_menu(); 00039 } 00040 if ( this->panel->click() ) { 00041 this->clicked_menu_entry(this->panel->get_menu_current_line()); 00042 } 00043 } 00044 00045 void JogScreen::display_menu_line(uint16_t line) 00046 { 00047 switch ( line ) { 00048 case 0: this->panel->lcd->printf("Back"); break; 00049 case 1: this->panel->lcd->printf("Move 10.0mm \x7E"); break; 00050 case 2: this->panel->lcd->printf("Move 1.0mm \x7E"); break; 00051 case 3: this->panel->lcd->printf("Move 0.1mm \x7E"); break; 00052 } 00053 } 00054 00055 void JogScreen::clicked_menu_entry(uint16_t line) 00056 { 00057 switch ( line ) { 00058 case 0: this->panel->enter_screen(this->parent); return; 00059 case 1: this->control_screen->set_jog_increment(10.0); break; 00060 case 2: this->control_screen->set_jog_increment(1.0); break; 00061 case 3: this->control_screen->set_jog_increment(0.1); break; 00062 } 00063 this->panel->enter_screen(this->control_screen); 00064 }
Generated on Tue Jul 12 2022 20:09:02 by
1.7.2
