int StateEditor() { SDL_RenderClear(GetRenderer()); UpdateMousePosition(); UpdateEditorPanel(MainEditorPanels); UpdateWorkspace(); DrawWorkspace(); DrawEditorPanels(MainEditorPanels); NextFrame(); return 0; }
void Waveform::mouseMoved( wxMouseEvent& event) { if(!mIsInitialized){return;} if (m_dragging) { if( m_drag_mode == DRAG_LEFT_EDGE ) { mTimeline->SetSelectedPositionStart(event.GetX(), false); } else { mTimeline->SetSelectedPositionEnd(event.GetX()); } Refresh(false); wxCommandEvent eventSelected(EVT_WAVE_FORM_HIGHLIGHT); eventSelected.SetInt(abs(mTimeline->GetNewStartTimeMS() - mTimeline->GetNewEndTimeMS())); wxPostEvent(mParent, eventSelected); } else { int selected_x1 = mTimeline->GetSelectedPositionStart(); int selected_x2 = mTimeline->GetSelectedPositionEnd(); if( event.GetX() >= selected_x1 && event.GetX() < selected_x1+6 ) { SetCursor(wxCURSOR_POINT_LEFT); m_drag_mode = DRAG_LEFT_EDGE; } else if( event.GetX() > selected_x2-6 && event.GetX() <= selected_x2 ) { SetCursor(wxCURSOR_POINT_RIGHT); m_drag_mode = DRAG_RIGHT_EDGE; } else { SetCursor(wxCURSOR_ARROW); m_drag_mode = DRAG_NORMAL; } } int mouseTimeMS = mTimeline->GetAbsoluteTimeMSfromPosition(event.GetX()); UpdateMousePosition(mouseTimeMS); // Scrubbing if (_media != NULL && event.LeftIsDown() && event.ControlDown()) { int msperpixel = std::max(1000 / GetTimeFrequency(), mTimeline->TimePerMajorTickInMS() / mTimeline->PixelsPerMajorTick()); _media->Play(mouseTimeMS, msperpixel); } }
void Waveform::mouseMoved( wxMouseEvent& event) { if(!mIsInitialized){return;} if (m_dragging) { if( m_drag_mode == DRAG_LEFT_EDGE ) { mTimeline->SetSelectedPositionStart(event.GetX(), false); } else { mTimeline->SetSelectedPositionEnd(event.GetX()); } Refresh(false); } else { int selected_x1 = mTimeline->GetSelectedPositionStart(); int selected_x2 = mTimeline->GetSelectedPositionEnd(); if( event.GetX() >= selected_x1 && event.GetX() < selected_x1+6 ) { SetCursor(wxCURSOR_POINT_LEFT); m_drag_mode = DRAG_LEFT_EDGE; } else if( event.GetX() > selected_x2-6 && event.GetX() <= selected_x2 ) { SetCursor(wxCURSOR_POINT_RIGHT); m_drag_mode = DRAG_RIGHT_EDGE; } else { SetCursor(wxCURSOR_ARROW); m_drag_mode = DRAG_NORMAL; } } int mouseTimeMS = mTimeline->GetAbsoluteTimeMSfromPosition(event.GetX()); UpdateMousePosition(mouseTimeMS); }
void Waveform::mouseLeftWindow(wxMouseEvent& event) { UpdateMousePosition(-1); }