Exemplo n.º 1
0
int
seqroll::idle_redraw ()
{
    draw_events_on(m_window);
    draw_events_on(m_pixmap);
    return true;
}
Exemplo n.º 2
0
int
seqdata::idle_redraw ()
{
    if (! m_dragging)
    {
        draw_events_on(m_window);
        draw_events_on(m_pixmap);
    }
    return true;
}
Exemplo n.º 3
0
bool
seqdata::on_motion_notify_event (GdkEventMotion * ev)
{
    bool result = false;
#ifdef USE_STAZED_SEQDATA_EXTENSIONS
    if (m_drag_handle)
    {
        m_current_y = int(ev->y = 3);
        m_current_y = c_dataarea_y - m_current_y;
        if (m_current_y < 0)
            m_current_y = 0;

        if (m_current_y > SEQ64_MAX_DATA_VALUE)             /* 127 */
            m_current_y = SEQ64_MAX_DATA_VALUE;

        m_seq.adjust_data_handle(m_status, m_current_y);
        update_pixmap();
        draw_events_on(m_window);
    }
#endif
    if (m_dragging)
    {
        int adj_x_min, adj_x_max, adj_y_min, adj_y_max;
        m_current_x = int(ev->x) + m_scroll_offset_x;
        m_current_y = int(ev->y);
        if (m_current_x < m_drop_x)
        {
            adj_x_min = m_current_x;
            adj_y_min = m_current_y;
            adj_x_max = m_drop_x;
            adj_y_max = m_drop_y;
        }
        else
        {
            adj_x_max = m_current_x;
            adj_y_max = m_current_y;
            adj_x_min = m_drop_x;
            adj_y_min = m_drop_y;
        }

        midipulse tick_s, tick_f;
        convert_x(adj_x_min, tick_s);
        convert_x(adj_x_max, tick_f);
        result = m_seq.change_event_data_range
        (
            tick_s, tick_f, m_status, m_cc,
            c_dataarea_y - adj_y_min - 1, c_dataarea_y - adj_y_max - 1
        );
        update_pixmap();                /* calls draw_events_on_pixmap()    */
        draw_events_on(m_window);
        draw_line_on_window();

        /*
         * \change ca 2016-06-19
         *  Why do we modify here?
         *
         *  if (result)
         *      perf().modify();
         */
    }
    return result;
}
Exemplo n.º 4
0
 void draw_events_on_pixmap ()
 {
     draw_events_on(m_pixmap);
 }
Exemplo n.º 5
0
void
seqroll::draw_events_on_pixmap ()
{
    draw_events_on(m_pixmap);
}