mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-16 03:07:55 -06:00
FIX: scroll offset with touch pad
Change-Id: I7dbec590f39f174c02e4179fd781ff7fd1a93374
This commit is contained in:
parent
fee419797d
commit
3b3ad1b390
4 changed files with 15 additions and 11 deletions
|
@ -368,14 +368,17 @@ void ImageGrid::resize(wxSizeEvent& event)
|
|||
|
||||
void ImageGrid::mouseWheelMoved(wxMouseEvent &event)
|
||||
{
|
||||
auto delta = event.GetWheelRotation() < 0 ? 1 : -1;
|
||||
int off = m_row_offset + delta;
|
||||
if (off >= 0 && off < m_row_count) {
|
||||
m_row_offset = off;
|
||||
m_timer.StartOnce(4000); // Show position bar
|
||||
UpdateFocusRange();
|
||||
Refresh();
|
||||
}
|
||||
auto delta = -event.GetWheelRotation();
|
||||
m_scroll_offset += delta;
|
||||
int max = m_row_count * m_cell_size.GetHeight() / 4;
|
||||
if (m_scroll_offset < 0)
|
||||
m_scroll_offset = 0;
|
||||
else if (m_scroll_offset >= max)
|
||||
m_scroll_offset = max - 1;
|
||||
m_row_offset = m_scroll_offset * 4 / m_cell_size.GetHeight();
|
||||
m_timer.StartOnce(4000); // Show position bar
|
||||
UpdateFocusRange();
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void Slic3r::GUI::ImageGrid::changedEvent(wxCommandEvent& evt)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue