fix document naming and file dialogs preset, add touch scroll, flip thumbnail, scroll gesture and wheel for sidebar

This commit is contained in:
2017-08-12 18:06:36 +01:00
parent 3df8cb4fa5
commit 2711d4e9b0
20 changed files with 160 additions and 29 deletions

View File

@@ -12,6 +12,7 @@ kEventResult NodeScroll::handle_event(Event* e)
{
NodeBorder::handle_event(e);
auto me = static_cast<MouseEvent*>(e);
auto ge = static_cast<GestureEvent*>(e);
auto loc = (me->m_pos - m_pos) * root()->m_zoom;
switch (e->m_type)
{
@@ -36,8 +37,33 @@ kEventResult NodeScroll::handle_event(Event* e)
mouse_release();
m_dragging = false;
break;
// case kEventType::MouseScroll:
// break;
case kEventType::MouseScroll:
{
auto pad = GetPadding();
glm::vec2 padoff = { pad.y + pad.w, pad.x + pad.z };
auto rect = get_children_rect();
m_offset += me->m_scroll_delta * 50;
m_offset = glm::clamp(m_offset, -rect.zw() + m_clip_uncut.zw() - padoff, { 0, 0 });
m_pos_offset_childred = m_offset;
}
break;
case kEventType::GestureStart:
m_offset_start = m_offset;
mouse_capture();
break;
case kEventType::GestureMove:
{
auto pad = GetPadding();
glm::vec2 padoff = { pad.y + pad.w, pad.x + pad.z };
auto rect = get_children_rect();
m_offset = m_offset_start + ge->m_pos_delta * m_mask;
m_offset = glm::clamp(m_offset, -rect.zw() + m_clip_uncut.zw() - padoff, { 0, 0 });
m_pos_offset_childred = m_offset;
}
break;
case kEventType::GestureEnd:
mouse_release();
break;
case kEventType::MouseCancel:
mouse_release();
m_dragging = false;