EventShortCut::EventShortCut(QString eventId, QWidget* parent) : QWidget {parent} { auto groupLay = new QHBoxLayout{}; this->setLayout(groupLay); this->setContentsMargins(0,0,0,0); groupLay->setContentsMargins(5,0,0,0); // browser button m_eventBtn = new QPushButton{this}; m_eventBtn->setText(eventId); m_eventBtn->setFlat(true); m_box = new QCheckBox{}; groupLay->addWidget(m_eventBtn); groupLay->addWidget(m_box); connect(m_eventBtn, &QPushButton::clicked, [ = ]() { emit eventSelected(); }); }
void Waveform::SetSelectedInterval(int startMS, int endMS) { mTimeline->SetSelectedPositionStart(mTimeline->GetPositionFromTimeMS(startMS), false); mTimeline->SetSelectedPositionEnd(mTimeline->GetPositionFromTimeMS(endMS)); mTimeline->LatchSelectedPositions(); wxCommandEvent eventSelected(EVT_WAVE_FORM_HIGHLIGHT); eventSelected.SetInt(abs(mTimeline->GetNewStartTimeMS() - mTimeline->GetNewEndTimeMS())); wxPostEvent(mParent, eventSelected); Refresh(false); }
void EventTableWidget::handleCellPressedEvent(int row) { QString eventId = getEventId(row); if ( isRowSelected(row) && _controlKeyPressed ) { setSelectedRow(-1); clearSelection(); emit eventDeselected(eventId); } else { setSelectedRow(row); emit eventSelected(eventId); } }
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::mouseLeftDown( wxMouseEvent& event) { if(!mIsInitialized){return;} if( !m_dragging ) { m_dragging = true; CaptureMouse(); } if( m_drag_mode == DRAG_NORMAL ) { mTimeline->SetSelectedPositionStart(event.GetX()); } SetFocus(); Refresh(false); wxCommandEvent eventSelected(EVT_WAVE_FORM_HIGHLIGHT); eventSelected.SetInt(0); wxPostEvent(mParent, eventSelected); }
EventShortCut::EventShortCut(QString eventId, QWidget* parent) : QWidget {parent} { auto groupLay = new iscore::MarginLess<QHBoxLayout>{this}; // browser button m_eventBtn = new QPushButton{this}; m_eventBtn->setText(eventId); m_eventBtn->setFlat(true); m_box = new QCheckBox{}; groupLay->addWidget(m_eventBtn); groupLay->addWidget(m_box); connect(m_eventBtn, &QPushButton::clicked, [ = ]() { emit eventSelected(); }); }
void Waveform::mouseLeftUp( wxMouseEvent& event) { if(m_dragging) { ReleaseMouse(); m_dragging = false; } mTimeline->LatchSelectedPositions(); Refresh(false); wxCommandEvent eventSelected(EVT_WAVE_FORM_HIGHLIGHT); if (mTimeline->GetNewEndTimeMS() == -1) { eventSelected.SetInt(0); } else { eventSelected.SetInt(abs(mTimeline->GetNewStartTimeMS() - mTimeline->GetNewEndTimeMS())); } wxPostEvent(mParent, eventSelected); }
void EventTableWidget::handleCellDoubleClickEvent(int row) { QString eventId = getEventId(row); emit eventSelected(eventId); emit eventDoubleClicked(eventId); }