#include "LcdBase.h"
#include "MainMenuScreen.h"
#include "JogScreen.h"
+#include "DirectJogScreen.h"
#include "ControlScreen.h"
#include "libs/nuts_bolts.h"
#include "libs/utils.h"
void JogScreen::on_enter()
{
THEPANEL->enter_menu_mode();
- THEPANEL->setup_menu(5);
+ THEPANEL->setup_menu(6);
this->refresh_menu();
}
switch ( line ) {
case 0: THEPANEL->lcd->printf("Back"); break;
case 1: THEPANEL->lcd->printf("Move 10.0mm \x7E"); break;
- case 2: THEPANEL->lcd->printf("Move 1.0mm \x7E"); break;
- case 3: THEPANEL->lcd->printf("Move 0.1mm \x7E"); break;
+ case 2: THEPANEL->lcd->printf("Move 1.0mm \x7E"); break;
+ case 3: THEPANEL->lcd->printf("Move 0.1mm \x7E"); break;
case 4: THEPANEL->lcd->printf("Move 0.01mm \x7E"); break;
+ case 5: THEPANEL->lcd->printf("Direct Control \x7E"); break;
}
}
void JogScreen::clicked_menu_entry(uint16_t line)
{
+ bool direct= false;
switch ( line ) {
case 0: THEPANEL->enter_screen(this->parent); return;
case 1: this->control_screen->set_jog_increment(10.0); break;
case 2: this->control_screen->set_jog_increment(1.0); break;
case 3: this->control_screen->set_jog_increment(0.1); break;
case 4: this->control_screen->set_jog_increment(0.01); break;
+ case 5: direct= true; break;
+ }
+
+ if(direct) {
+ auto djs= new DirectJogScreen();
+ djs->set_parent(this);
+ THEPANEL->enter_screen(djs); // self deleting
+
+ }else{
+ THEPANEL->enter_screen(this->control_screen);
}
- THEPANEL->enter_screen(this->control_screen);
}