Browse Source

Shift dragging time selection edge moves whole time selection. Should do this more properly...

tags/1.0.2
xenakios 7 years ago
parent
commit
3d53c4fb91
1 changed files with 17 additions and 3 deletions
  1. +17
    -3
      Source/PluginEditor.cpp

+ 17
- 3
Source/PluginEditor.cpp View File

@@ -614,13 +614,27 @@ void WaveformComponent::mouseDrag(const MouseEvent & e)
m_time_sel_start = m_drag_time_start;
m_time_sel_end = jmap<double>(e.x, 0, getWidth(), m_view_range.getStart(), m_view_range.getEnd());
}
if (m_time_sel_drag_target == 1)
double curlen = m_time_sel_end-m_time_sel_start;
if (m_time_sel_drag_target == 1)
{
m_time_sel_start = jmap<double>(e.x, 0, getWidth(), m_view_range.getStart(), m_view_range.getEnd());
if (e.mods.isShiftDown()==false)
m_time_sel_start = jmap<double>(e.x, 0, getWidth(), m_view_range.getStart(), m_view_range.getEnd());
else
{
m_time_sel_start = jmap<double>(e.x, 0, getWidth(), m_view_range.getStart(), m_view_range.getEnd());
m_time_sel_end = m_time_sel_start+curlen;
}
}
if (m_time_sel_drag_target == 2)
{
m_time_sel_end = jmap<double>(e.x, 0, getWidth(), m_view_range.getStart(), m_view_range.getEnd());
if (e.mods.isShiftDown()==false)
m_time_sel_end = jmap<double>(e.x, 0, getWidth(), m_view_range.getStart(), m_view_range.getEnd());
else
{
m_time_sel_end = jmap<double>(e.x, 0, getWidth(), m_view_range.getStart(), m_view_range.getEnd());
m_time_sel_start = m_time_sel_end-curlen;
}
}
if (m_time_sel_start > m_time_sel_end)
{


Loading…
Cancel
Save