Scroll horizontally with mouse wheel when horizontal enabled only

This commit is contained in:
volzhs 2016-12-27 16:32:22 +09:00
parent c798ff1551
commit 22b76511fb
1 changed files with 14 additions and 6 deletions

View File

@ -88,14 +88,22 @@ void ScrollContainer::_input_event(const InputEvent& p_input_event) {
const InputEventMouseButton &mb=p_input_event.mouse_button;
if (mb.button_index==BUTTON_WHEEL_UP && mb.pressed && v_scroll->is_visible()) {
v_scroll->set_val( v_scroll->get_val()-v_scroll->get_page()/8 );
if (mb.button_index==BUTTON_WHEEL_UP && mb.pressed) {
if (h_scroll->is_visible() && !v_scroll->is_visible()){
// only horizontal is enabled, scroll horizontally
h_scroll->set_val( h_scroll->get_val()-h_scroll->get_page()/8 );
} else if (v_scroll->is_visible()) {
v_scroll->set_val( v_scroll->get_val()-v_scroll->get_page()/8 );
}
}
if (mb.button_index==BUTTON_WHEEL_DOWN && mb.pressed && v_scroll->is_visible()) {
v_scroll->set_val( v_scroll->get_val()+v_scroll->get_page()/8 );
if (mb.button_index==BUTTON_WHEEL_DOWN && mb.pressed) {
if (h_scroll->is_visible() && !v_scroll->is_visible()){
// only horizontal is enabled, scroll horizontally
h_scroll->set_val( h_scroll->get_val()+h_scroll->get_page()/8 );
} else if (v_scroll->is_visible()) {
v_scroll->set_val( v_scroll->get_val()+v_scroll->get_page()/8 );
}
}
if(!OS::get_singleton()->has_touchscreen_ui_hint())