1
0
mirror of https://github.com/MarlinFirmware/Marlin.git synced 2024-11-23 12:04:19 +00:00

COLOR_UI without TOUCH_SCREEN 👍🏻 (#20178)

This commit is contained in:
Victor Oliveira 2020-11-17 23:07:34 -03:00 committed by GitHub
parent 1cceae89cd
commit 75924edcf8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 44 additions and 29 deletions

View File

@ -169,7 +169,9 @@
if (ui.should_draw()) { if (ui.should_draw()) {
MenuItem_static::draw(1, GET_TEXT(MSG_LEVEL_BED_WAITING)); MenuItem_static::draw(1, GET_TEXT(MSG_LEVEL_BED_WAITING));
// Color UI needs a control to detect a touch // Color UI needs a control to detect a touch
TERN_(HAS_GRAPHICAL_TFT, touch.add_control(CLICK, 0, 0, TFT_WIDTH, TFT_HEIGHT)); #if BOTH(TOUCH_SCREEN, HAS_GRAPHICAL_TFT)
touch.add_control(CLICK, 0, 0, TFT_WIDTH, TFT_HEIGHT);
#endif
} }
if (ui.use_click()) { if (ui.use_click()) {
manual_probe_index = 0; manual_probe_index = 0;

View File

@ -49,7 +49,9 @@
#error "Seriously? High resolution TFT screen without menu?" #error "Seriously? High resolution TFT screen without menu?"
#endif #endif
static bool draw_menu_navigation = false; #if ENABLED(TOUCH_SCREEN)
static bool draw_menu_navigation = false;
#endif
void MarlinUI::tft_idle() { void MarlinUI::tft_idle() {
#if ENABLED(TOUCH_SCREEN) #if ENABLED(TOUCH_SCREEN)
@ -897,35 +899,37 @@ static void z_minus() {
moveAxis(Z_AXIS, -1); moveAxis(Z_AXIS, -1);
} }
static void e_select() { #if ENABLED(TOUCH_SCREEN)
motionAxisState.e_selection++; static void e_select() {
if (motionAxisState.e_selection >= EXTRUDERS) { motionAxisState.e_selection++;
motionAxisState.e_selection = 0; if (motionAxisState.e_selection >= EXTRUDERS) {
motionAxisState.e_selection = 0;
}
quick_feedback();
drawCurESelection();
drawAxisValue(E_AXIS);
} }
quick_feedback(); static void do_home() {
drawCurESelection(); quick_feedback();
drawAxisValue(E_AXIS); drawMessage(GET_TEXT(MSG_LEVEL_BED_HOMING));
} queue.inject_P(G28_STR);
// Disable touch until home is done
TERN_(HAS_TFT_XPT2046, touch.disable());
drawAxisValue(E_AXIS);
drawAxisValue(X_AXIS);
drawAxisValue(Y_AXIS);
drawAxisValue(Z_AXIS);
}
static void do_home() { static void step_size() {
quick_feedback(); motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0;
drawMessage(GET_TEXT(MSG_LEVEL_BED_HOMING)); if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0;
queue.inject_P(G28_STR); quick_feedback();
// Disable touch until home is done drawCurStepValue();
TERN_(HAS_TFT_XPT2046, touch.disable()); }
drawAxisValue(E_AXIS); #endif
drawAxisValue(X_AXIS);
drawAxisValue(Y_AXIS);
drawAxisValue(Z_AXIS);
}
static void step_size() {
motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0;
if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0;
quick_feedback();
drawCurStepValue();
}
#if HAS_BED_PROBE #if HAS_BED_PROBE
static void z_select() { static void z_select() {
@ -1021,7 +1025,7 @@ void MarlinUI::move_axis_screen() {
motionAxisState.zTypePos.x = x; motionAxisState.zTypePos.x = x;
motionAxisState.zTypePos.y = y; motionAxisState.zTypePos.y = y;
drawCurZSelection(); drawCurZSelection();
#if HAS_BED_PROBE #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN)
if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select);
#endif #endif

View File

@ -65,5 +65,14 @@ opt_set X_DRIVER_TYPE TMC2209
opt_set Y_DRIVER_TYPE TMC2209 opt_set Y_DRIVER_TYPE TMC2209
exec_test $1 $2 "MKS Robin v2 nano LVGL SPI + TMC" "$3" exec_test $1 $2 "MKS Robin v2 nano LVGL SPI + TMC" "$3"
#
# MKS Robin v2 nano New Color UI 480x320 SPI Without Touch Screen
#
use_example_configs Mks/Robin
opt_set MOTHERBOARD BOARD_MKS_ROBIN_NANO_V2
opt_disable TFT_INTERFACE_FSMC TFT_RES_320x240 TOUCH_SCREEN
opt_enable TFT_INTERFACE_SPI TFT_RES_480x320 TFT_COLOR_UI
exec_test $1 $2 "MKS Robin v2 nano New Color UI 480x320 SPI without TOUCH_SCREEN"
# cleanup # cleanup
restore_configs restore_configs