void EditorFileDialog::_unhandled_input(const InputEvent& p_event) { if (p_event.type==InputEvent::KEY && is_window_modal_on_top()) { if (p_event.key.pressed) { bool handled=false; if (ED_IS_SHORTCUT("file_dialog/go_back", p_event)) { _go_back(); handled=true; } if (ED_IS_SHORTCUT("file_dialog/go_forward", p_event)) { _go_forward(); handled=true; } if (ED_IS_SHORTCUT("file_dialog/go_up", p_event)) { _go_up(); handled=true; } if (ED_IS_SHORTCUT("file_dialog/refresh", p_event)) { invalidate(); handled=true; } if (ED_IS_SHORTCUT("file_dialog/toggle_hidden_files", p_event)) { bool show=!show_hidden_files; set_show_hidden_files(show); EditorSettings::get_singleton()->set("file_dialog/show_hidden_files",show); handled=true; } if (ED_IS_SHORTCUT("file_dialog/toggle_favorite", p_event)) { _favorite_toggled(favorite->is_pressed()); handled=true; } if (ED_IS_SHORTCUT("file_dialog/toggle_mode", p_event)) { if (mode_thumbnails->is_pressed()) { set_display_mode(DISPLAY_LIST); } else { set_display_mode(DISPLAY_THUMBNAILS); } handled=true; } if (ED_IS_SHORTCUT("file_dialog/create_folder", p_event)) { _make_dir(); handled=true; } if (ED_IS_SHORTCUT("file_dialog/focus_path", p_event)) { dir->grab_focus(); handled=true; } if (ED_IS_SHORTCUT("file_dialog/move_favorite_up", p_event)) { _favorite_move_up(); handled=true; } if (ED_IS_SHORTCUT("file_dialog/move_favorite_down", p_event)) { _favorite_move_down(); handled=true; } if (handled) { accept_event(); } } } }
void process_platform() { if(getOrderID() != MP.completed_order) { if(!(getOrderState()&ORDER_ACTIVE)) { switch(getOrderType()) { case(ORDER_TYPE_FORWARD): orderStartForward(); break; case(ORDER_TYPE_LEFT_TURN): orderStartLeftTurn(); break; case(ORDER_TYPE_RIGHT_TURN): orderStartRightTurn(); break; } } else { if(MP._rotary_driver_state&ROTARY_DRIVER_ACTIVE) { if(rotaryDriverDone()) { deactivatePID(); set_stop(); setOrderDone(); MP.completed_order = getOrderID(); rotaryDriverStop(); rotaryDriverReset(); MP.adjust_state = 0; } } else { if(MP._state == PLATFORM_FORWARD) { if(getOrderTargetTicks() < cmtoticks(PLATFORM_PID_THRESHOLD)) { deactivatePID(); //set_forward(MOTOR_DEFAULT_SPEED, MOTOR_DEFAULT_SPEED); if(getOrderCurrentTicks() >= getOrderTargetTicks()) { set_stop(); setOrderDone(); MP.completed_order = getOrderID(); MP.adjust_state = 0; } } else { if(!MP.adjust_state&PLATFORM_ADJUST_DONE) { if(getOrderLengthToWall() < 7.0) { if(getOrderCurrentTicks() >= getOrderTargetTicks()*0.40 && getOrderCurrentTicks() <= getOrderTargetTicks()*0.60) { platformFineAdjust(); } } } if(getOrderCurrentTicks() >= getOrderTargetTicks()*0.6) { if(!checkFrontRight()) { deactivatePID(); set_forward(MP._originalLspeed, MP._originalRspeed); } if((!checkBackRight() && !checkFrontRight()) || (!checkBackLeft() && !checkFrontLeft())) { set_stop(); deactivatePID(); if(getOrderLengthToWall() >= 7.0) { rotaryDriverStartCM(8); } else { rotaryDriverStartCM(10); } } } } } else if(MP._state == PLATFORM_LEFT || MP._state == PLATFORM_RIGHT) { deactivatePID(); if(getOrderCurrentTicks() >= getOrderTargetTicks()) { set_stop(); setOrderDone(); MP.completed_order = getOrderID(); } } } } } if(change==1){ switch(MP._state){ case(PLATFORM_STOP): _stop(); break; case(PLATFORM_FORWARD): _go_forward(); break; case(PLATFORM_BACKWARD): _go_backward(); break; case(PLATFORM_LEFT): _turn_left(); break; case(PLATFORM_RIGHT): _turn_right(); break; default: _stop(); break; } change=0; } }