Example #1
0
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();
    });

}
Example #2
0
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);
}
Example #3
0
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);
	}
}
Example #4
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);
    }
}
Example #5
0
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);
}
Example #6
0
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();
    });

}
Example #7
0
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);
}
Example #8
0
void EventTableWidget::handleCellDoubleClickEvent(int row) {
	QString eventId =  getEventId(row);

	emit eventSelected(eventId);
	emit eventDoubleClicked(eventId);
}