Lines 283-357
Link Here
|
283 |
char b[20]; |
283 |
char b[20]; |
284 |
|
284 |
|
285 |
/* zoom */ |
285 |
/* zoom */ |
286 |
m_menu_zoom->items().push_back(MenuElem("1:1", SigC::bind(mem_fun(*this,&seqedit::set_zoom), 1 ))); |
286 |
m_menu_zoom->items().push_back(MenuElem("1:1", sigc::bind(mem_fun(*this,&seqedit::set_zoom), 1 ))); |
287 |
m_menu_zoom->items().push_back(MenuElem("1:2", SigC::bind(mem_fun(*this,&seqedit::set_zoom), 2 ))); |
287 |
m_menu_zoom->items().push_back(MenuElem("1:2", sigc::bind(mem_fun(*this,&seqedit::set_zoom), 2 ))); |
288 |
m_menu_zoom->items().push_back(MenuElem("1:4", SigC::bind(mem_fun(*this,&seqedit::set_zoom), 4 ))); |
288 |
m_menu_zoom->items().push_back(MenuElem("1:4", sigc::bind(mem_fun(*this,&seqedit::set_zoom), 4 ))); |
289 |
m_menu_zoom->items().push_back(MenuElem("1:8", SigC::bind(mem_fun(*this,&seqedit::set_zoom), 8 ))); |
289 |
m_menu_zoom->items().push_back(MenuElem("1:8", sigc::bind(mem_fun(*this,&seqedit::set_zoom), 8 ))); |
290 |
m_menu_zoom->items().push_back(MenuElem("1:16", SigC::bind(mem_fun(*this,&seqedit::set_zoom), 16 ))); |
290 |
m_menu_zoom->items().push_back(MenuElem("1:16", sigc::bind(mem_fun(*this,&seqedit::set_zoom), 16 ))); |
291 |
m_menu_zoom->items().push_back(MenuElem("1:32", SigC::bind(mem_fun(*this,&seqedit::set_zoom), 32 ))); |
291 |
m_menu_zoom->items().push_back(MenuElem("1:32", sigc::bind(mem_fun(*this,&seqedit::set_zoom), 32 ))); |
292 |
|
292 |
|
293 |
/* note snap */ |
293 |
/* note snap */ |
294 |
m_menu_snap->items().push_back(MenuElem("1", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 4 ))); |
294 |
m_menu_snap->items().push_back(MenuElem("1", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 4 ))); |
295 |
m_menu_snap->items().push_back(MenuElem("1/2", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 2 ))); |
295 |
m_menu_snap->items().push_back(MenuElem("1/2", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 2 ))); |
296 |
m_menu_snap->items().push_back(MenuElem("1/4", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 1 ))); |
296 |
m_menu_snap->items().push_back(MenuElem("1/4", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 1 ))); |
297 |
m_menu_snap->items().push_back(MenuElem("1/8", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 2 ))); |
297 |
m_menu_snap->items().push_back(MenuElem("1/8", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 2 ))); |
298 |
m_menu_snap->items().push_back(MenuElem("1/16", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 4 ))); |
298 |
m_menu_snap->items().push_back(MenuElem("1/16", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 4 ))); |
299 |
m_menu_snap->items().push_back(MenuElem("1/32", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 8 ))); |
299 |
m_menu_snap->items().push_back(MenuElem("1/32", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 8 ))); |
300 |
m_menu_snap->items().push_back(MenuElem("1/64", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 16 ))); |
300 |
m_menu_snap->items().push_back(MenuElem("1/64", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 16 ))); |
301 |
m_menu_snap->items().push_back(MenuElem("1/128", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 32 ))); |
301 |
m_menu_snap->items().push_back(MenuElem("1/128", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 32 ))); |
302 |
m_menu_snap->items().push_back(SeparatorElem()); |
302 |
m_menu_snap->items().push_back(SeparatorElem()); |
303 |
m_menu_snap->items().push_back(MenuElem("1/3", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 4 / 3 ))); |
303 |
m_menu_snap->items().push_back(MenuElem("1/3", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 4 / 3 ))); |
304 |
m_menu_snap->items().push_back(MenuElem("1/6", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 2 / 3 ))); |
304 |
m_menu_snap->items().push_back(MenuElem("1/6", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 2 / 3 ))); |
305 |
m_menu_snap->items().push_back(MenuElem("1/12", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 1 / 3 ))); |
305 |
m_menu_snap->items().push_back(MenuElem("1/12", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn * 1 / 3 ))); |
306 |
m_menu_snap->items().push_back(MenuElem("1/24", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 2 / 3 ))); |
306 |
m_menu_snap->items().push_back(MenuElem("1/24", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 2 / 3 ))); |
307 |
m_menu_snap->items().push_back(MenuElem("1/48", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 4 / 3 ))); |
307 |
m_menu_snap->items().push_back(MenuElem("1/48", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 4 / 3 ))); |
308 |
m_menu_snap->items().push_back(MenuElem("1/96", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 8 / 3 ))); |
308 |
m_menu_snap->items().push_back(MenuElem("1/96", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 8 / 3 ))); |
309 |
m_menu_snap->items().push_back(MenuElem("1/192", SigC::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 16 / 3 ))); |
309 |
m_menu_snap->items().push_back(MenuElem("1/192", sigc::bind(mem_fun(*this,&seqedit::set_snap), c_ppqn / 16 / 3 ))); |
310 |
|
310 |
|
311 |
/* note note_length */ |
311 |
/* note note_length */ |
312 |
m_menu_note_length->items().push_back(MenuElem("1", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 4 ))); |
312 |
m_menu_note_length->items().push_back(MenuElem("1", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 4 ))); |
313 |
m_menu_note_length->items().push_back(MenuElem("1/2", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 2 ))); |
313 |
m_menu_note_length->items().push_back(MenuElem("1/2", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 2 ))); |
314 |
m_menu_note_length->items().push_back(MenuElem("1/4", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 1 ))); |
314 |
m_menu_note_length->items().push_back(MenuElem("1/4", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 1 ))); |
315 |
m_menu_note_length->items().push_back(MenuElem("1/8", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 2 ))); |
315 |
m_menu_note_length->items().push_back(MenuElem("1/8", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 2 ))); |
316 |
m_menu_note_length->items().push_back(MenuElem("1/16", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 4 ))); |
316 |
m_menu_note_length->items().push_back(MenuElem("1/16", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 4 ))); |
317 |
m_menu_note_length->items().push_back(MenuElem("1/32", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 8 ))); |
317 |
m_menu_note_length->items().push_back(MenuElem("1/32", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 8 ))); |
318 |
m_menu_note_length->items().push_back(MenuElem("1/64", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 16 ))); |
318 |
m_menu_note_length->items().push_back(MenuElem("1/64", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 16 ))); |
319 |
m_menu_note_length->items().push_back(MenuElem("1/128", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 32 ))); |
319 |
m_menu_note_length->items().push_back(MenuElem("1/128", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 32 ))); |
320 |
m_menu_note_length->items().push_back(SeparatorElem()); |
320 |
m_menu_note_length->items().push_back(SeparatorElem()); |
321 |
m_menu_note_length->items().push_back(MenuElem("1/3", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 4 / 3 ))); |
321 |
m_menu_note_length->items().push_back(MenuElem("1/3", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 4 / 3 ))); |
322 |
m_menu_note_length->items().push_back(MenuElem("1/6", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 2 / 3 ))); |
322 |
m_menu_note_length->items().push_back(MenuElem("1/6", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 2 / 3 ))); |
323 |
m_menu_note_length->items().push_back(MenuElem("1/12", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 1 / 3 ))); |
323 |
m_menu_note_length->items().push_back(MenuElem("1/12", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn * 1 / 3 ))); |
324 |
m_menu_note_length->items().push_back(MenuElem("1/24", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 2 / 3 ))); |
324 |
m_menu_note_length->items().push_back(MenuElem("1/24", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 2 / 3 ))); |
325 |
m_menu_note_length->items().push_back(MenuElem("1/48", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 4 / 3 ))); |
325 |
m_menu_note_length->items().push_back(MenuElem("1/48", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 4 / 3 ))); |
326 |
m_menu_note_length->items().push_back(MenuElem("1/96", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 8 / 3 ))); |
326 |
m_menu_note_length->items().push_back(MenuElem("1/96", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 8 / 3 ))); |
327 |
m_menu_note_length->items().push_back(MenuElem("1/192", SigC::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 16 / 3 ))); |
327 |
m_menu_note_length->items().push_back(MenuElem("1/192", sigc::bind(mem_fun(*this,&seqedit::set_note_length), c_ppqn / 16 / 3 ))); |
328 |
|
328 |
|
329 |
/* Key */ |
329 |
/* Key */ |
330 |
m_menu_key->items().push_back(MenuElem( c_key_text[0], SigC::bind(mem_fun(*this,&seqedit::set_key), 0 ))); |
330 |
m_menu_key->items().push_back(MenuElem( c_key_text[0], sigc::bind(mem_fun(*this,&seqedit::set_key), 0 ))); |
331 |
m_menu_key->items().push_back(MenuElem( c_key_text[1], SigC::bind(mem_fun(*this,&seqedit::set_key), 1 ))); |
331 |
m_menu_key->items().push_back(MenuElem( c_key_text[1], sigc::bind(mem_fun(*this,&seqedit::set_key), 1 ))); |
332 |
m_menu_key->items().push_back(MenuElem( c_key_text[2], SigC::bind(mem_fun(*this,&seqedit::set_key), 2 ))); |
332 |
m_menu_key->items().push_back(MenuElem( c_key_text[2], sigc::bind(mem_fun(*this,&seqedit::set_key), 2 ))); |
333 |
m_menu_key->items().push_back(MenuElem( c_key_text[3], SigC::bind(mem_fun(*this,&seqedit::set_key), 3 ))); |
333 |
m_menu_key->items().push_back(MenuElem( c_key_text[3], sigc::bind(mem_fun(*this,&seqedit::set_key), 3 ))); |
334 |
m_menu_key->items().push_back(MenuElem( c_key_text[4], SigC::bind(mem_fun(*this,&seqedit::set_key), 4 ))); |
334 |
m_menu_key->items().push_back(MenuElem( c_key_text[4], sigc::bind(mem_fun(*this,&seqedit::set_key), 4 ))); |
335 |
m_menu_key->items().push_back(MenuElem( c_key_text[5], SigC::bind(mem_fun(*this,&seqedit::set_key), 5 ))); |
335 |
m_menu_key->items().push_back(MenuElem( c_key_text[5], sigc::bind(mem_fun(*this,&seqedit::set_key), 5 ))); |
336 |
m_menu_key->items().push_back(MenuElem( c_key_text[6], SigC::bind(mem_fun(*this,&seqedit::set_key), 6 ))); |
336 |
m_menu_key->items().push_back(MenuElem( c_key_text[6], sigc::bind(mem_fun(*this,&seqedit::set_key), 6 ))); |
337 |
m_menu_key->items().push_back(MenuElem( c_key_text[7], SigC::bind(mem_fun(*this,&seqedit::set_key), 7 ))); |
337 |
m_menu_key->items().push_back(MenuElem( c_key_text[7], sigc::bind(mem_fun(*this,&seqedit::set_key), 7 ))); |
338 |
m_menu_key->items().push_back(MenuElem( c_key_text[8], SigC::bind(mem_fun(*this,&seqedit::set_key), 8 ))); |
338 |
m_menu_key->items().push_back(MenuElem( c_key_text[8], sigc::bind(mem_fun(*this,&seqedit::set_key), 8 ))); |
339 |
m_menu_key->items().push_back(MenuElem( c_key_text[9], SigC::bind(mem_fun(*this,&seqedit::set_key), 9 ))); |
339 |
m_menu_key->items().push_back(MenuElem( c_key_text[9], sigc::bind(mem_fun(*this,&seqedit::set_key), 9 ))); |
340 |
m_menu_key->items().push_back(MenuElem( c_key_text[10], SigC::bind(mem_fun(*this,&seqedit::set_key), 10 ))); |
340 |
m_menu_key->items().push_back(MenuElem( c_key_text[10], sigc::bind(mem_fun(*this,&seqedit::set_key), 10 ))); |
341 |
m_menu_key->items().push_back(MenuElem( c_key_text[11], SigC::bind(mem_fun(*this,&seqedit::set_key), 11 ))); |
341 |
m_menu_key->items().push_back(MenuElem( c_key_text[11], sigc::bind(mem_fun(*this,&seqedit::set_key), 11 ))); |
342 |
|
342 |
|
343 |
/* bw */ |
343 |
/* bw */ |
344 |
m_menu_bw->items().push_back(MenuElem("1", SigC::bind(mem_fun(*this,&seqedit::set_bw), 1 ))); |
344 |
m_menu_bw->items().push_back(MenuElem("1", sigc::bind(mem_fun(*this,&seqedit::set_bw), 1 ))); |
345 |
m_menu_bw->items().push_back(MenuElem("2", SigC::bind(mem_fun(*this,&seqedit::set_bw), 2 ))); |
345 |
m_menu_bw->items().push_back(MenuElem("2", sigc::bind(mem_fun(*this,&seqedit::set_bw), 2 ))); |
346 |
m_menu_bw->items().push_back(MenuElem("4", SigC::bind(mem_fun(*this,&seqedit::set_bw), 4 ))); |
346 |
m_menu_bw->items().push_back(MenuElem("4", sigc::bind(mem_fun(*this,&seqedit::set_bw), 4 ))); |
347 |
m_menu_bw->items().push_back(MenuElem("8", SigC::bind(mem_fun(*this,&seqedit::set_bw), 8 ))); |
347 |
m_menu_bw->items().push_back(MenuElem("8", sigc::bind(mem_fun(*this,&seqedit::set_bw), 8 ))); |
348 |
m_menu_bw->items().push_back(MenuElem("16", SigC::bind(mem_fun(*this,&seqedit::set_bw), 16 ))); |
348 |
m_menu_bw->items().push_back(MenuElem("16", sigc::bind(mem_fun(*this,&seqedit::set_bw), 16 ))); |
349 |
|
349 |
|
350 |
|
350 |
|
351 |
/* music scale */ |
351 |
/* music scale */ |
352 |
m_menu_scale->items().push_back(MenuElem(c_scales_text[0], SigC::bind(mem_fun(*this,&seqedit::set_scale), c_scale_off ))); |
352 |
m_menu_scale->items().push_back(MenuElem(c_scales_text[0], sigc::bind(mem_fun(*this,&seqedit::set_scale), c_scale_off ))); |
353 |
m_menu_scale->items().push_back(MenuElem(c_scales_text[1], SigC::bind(mem_fun(*this,&seqedit::set_scale), c_scale_major ))); |
353 |
m_menu_scale->items().push_back(MenuElem(c_scales_text[1], sigc::bind(mem_fun(*this,&seqedit::set_scale), c_scale_major ))); |
354 |
m_menu_scale->items().push_back(MenuElem(c_scales_text[2], SigC::bind(mem_fun(*this,&seqedit::set_scale), c_scale_minor ))); |
354 |
m_menu_scale->items().push_back(MenuElem(c_scales_text[2], sigc::bind(mem_fun(*this,&seqedit::set_scale), c_scale_minor ))); |
355 |
|
355 |
|
356 |
/* midi channel menu */ |
356 |
/* midi channel menu */ |
357 |
for( int i=0; i<16; i++ ){ |
357 |
for( int i=0; i<16; i++ ){ |
Lines 360-375
Link Here
|
360 |
|
360 |
|
361 |
/* length */ |
361 |
/* length */ |
362 |
m_menu_length->items().push_back(MenuElem(b, |
362 |
m_menu_length->items().push_back(MenuElem(b, |
363 |
SigC::bind(mem_fun(*this,&seqedit::set_measures), |
363 |
sigc::bind(mem_fun(*this,&seqedit::set_measures), |
364 |
i+1 ))); |
364 |
i+1 ))); |
365 |
/* length */ |
365 |
/* length */ |
366 |
m_menu_bpm->items().push_back(MenuElem(b, |
366 |
m_menu_bpm->items().push_back(MenuElem(b, |
367 |
SigC::bind(mem_fun(*this,&seqedit::set_bpm), |
367 |
sigc::bind(mem_fun(*this,&seqedit::set_bpm), |
368 |
i+1 ))); |
368 |
i+1 ))); |
369 |
} |
369 |
} |
370 |
|
370 |
|
371 |
m_menu_length->items().push_back(MenuElem("32", SigC::bind(mem_fun(*this,&seqedit::set_measures), 32 ))); |
371 |
m_menu_length->items().push_back(MenuElem("32", sigc::bind(mem_fun(*this,&seqedit::set_measures), 32 ))); |
372 |
m_menu_length->items().push_back(MenuElem("64", SigC::bind(mem_fun(*this,&seqedit::set_measures), 64 ))); |
372 |
m_menu_length->items().push_back(MenuElem("64", sigc::bind(mem_fun(*this,&seqedit::set_measures), 64 ))); |
373 |
|
373 |
|
374 |
|
374 |
|
375 |
|
375 |
|
Lines 394-422
Link Here
|
394 |
Menu *holder2; |
394 |
Menu *holder2; |
395 |
|
395 |
|
396 |
holder = manage( new Menu()); |
396 |
holder = manage( new Menu()); |
397 |
holder->items().push_back( MenuElem( "All Notes", SigC::bind(mem_fun(*this,&seqedit::do_action), select_all_notes,0 ))); |
397 |
holder->items().push_back( MenuElem( "All Notes", sigc::bind(mem_fun(*this,&seqedit::do_action), select_all_notes,0 ))); |
398 |
holder->items().push_back( MenuElem( "Inverse Notes", SigC::bind(mem_fun(*this,&seqedit::do_action), select_inverse_notes,0 ))); |
398 |
holder->items().push_back( MenuElem( "Inverse Notes", sigc::bind(mem_fun(*this,&seqedit::do_action), select_inverse_notes,0 ))); |
399 |
|
399 |
|
400 |
if ( m_editing_status != EVENT_NOTE_ON && |
400 |
if ( m_editing_status != EVENT_NOTE_ON && |
401 |
m_editing_status != EVENT_NOTE_OFF ){ |
401 |
m_editing_status != EVENT_NOTE_OFF ){ |
402 |
|
402 |
|
403 |
holder->items().push_back( SeparatorElem( )); |
403 |
holder->items().push_back( SeparatorElem( )); |
404 |
holder->items().push_back( MenuElem( "All Events", SigC::bind(mem_fun(*this,&seqedit::do_action), select_all_events,0 ))); |
404 |
holder->items().push_back( MenuElem( "All Events", sigc::bind(mem_fun(*this,&seqedit::do_action), select_all_events,0 ))); |
405 |
holder->items().push_back( MenuElem( "Inverse Events", SigC::bind(mem_fun(*this,&seqedit::do_action), select_inverse_events,0 ))); |
405 |
holder->items().push_back( MenuElem( "Inverse Events", sigc::bind(mem_fun(*this,&seqedit::do_action), select_inverse_events,0 ))); |
406 |
} |
406 |
} |
407 |
|
407 |
|
408 |
m_menu_tools->items().push_back( MenuElem( "Select", *holder )); |
408 |
m_menu_tools->items().push_back( MenuElem( "Select", *holder )); |
409 |
|
409 |
|
410 |
holder = manage( new Menu()); |
410 |
holder = manage( new Menu()); |
411 |
holder->items().push_back( MenuElem( "Quantize Selected Notes", SigC::bind(mem_fun(*this,&seqedit::do_action), quantize_notes,0 ))); |
411 |
holder->items().push_back( MenuElem( "Quantize Selected Notes", sigc::bind(mem_fun(*this,&seqedit::do_action), quantize_notes,0 ))); |
412 |
holder->items().push_back( MenuElem( "Tighten Selected Notes", SigC::bind(mem_fun(*this,&seqedit::do_action), tighten_notes,0 ))); |
412 |
holder->items().push_back( MenuElem( "Tighten Selected Notes", sigc::bind(mem_fun(*this,&seqedit::do_action), tighten_notes,0 ))); |
413 |
|
413 |
|
414 |
if ( m_editing_status != EVENT_NOTE_ON && |
414 |
if ( m_editing_status != EVENT_NOTE_ON && |
415 |
m_editing_status != EVENT_NOTE_OFF ){ |
415 |
m_editing_status != EVENT_NOTE_OFF ){ |
416 |
|
416 |
|
417 |
holder->items().push_back( SeparatorElem( )); |
417 |
holder->items().push_back( SeparatorElem( )); |
418 |
holder->items().push_back( MenuElem( "Quantize Selected Events", SigC::bind(mem_fun(*this,&seqedit::do_action), quantize_events,0 ))); |
418 |
holder->items().push_back( MenuElem( "Quantize Selected Events", sigc::bind(mem_fun(*this,&seqedit::do_action), quantize_events,0 ))); |
419 |
holder->items().push_back( MenuElem( "Tighten Selected Events", SigC::bind(mem_fun(*this,&seqedit::do_action), tighten_events,0 ))); |
419 |
holder->items().push_back( MenuElem( "Tighten Selected Events", sigc::bind(mem_fun(*this,&seqedit::do_action), tighten_events,0 ))); |
420 |
|
420 |
|
421 |
} |
421 |
} |
422 |
m_menu_tools->items().push_back( MenuElem( "Modify Time", *holder )); |
422 |
m_menu_tools->items().push_back( MenuElem( "Modify Time", *holder )); |
Lines 432-438
Link Here
|
432 |
|
432 |
|
433 |
if ( i!=0 ){ |
433 |
if ( i!=0 ){ |
434 |
sprintf( num, "%+d [%s]", i, c_interval_text[ abs(i) ] ); |
434 |
sprintf( num, "%+d [%s]", i, c_interval_text[ abs(i) ] ); |
435 |
holder2->items().push_front( MenuElem( num, SigC::bind(mem_fun(*this,&seqedit::do_action), transpose, i ))); |
435 |
holder2->items().push_front( MenuElem( num, sigc::bind(mem_fun(*this,&seqedit::do_action), transpose, i ))); |
436 |
} |
436 |
} |
437 |
} |
437 |
} |
438 |
|
438 |
|
Lines 445-451
Link Here
|
445 |
|
445 |
|
446 |
if ( i!=0 ){ |
446 |
if ( i!=0 ){ |
447 |
sprintf( num, "%+d [%s]", (i<0) ? i-1 : i+1, c_chord_text[ abs(i) ] ); |
447 |
sprintf( num, "%+d [%s]", (i<0) ? i-1 : i+1, c_chord_text[ abs(i) ] ); |
448 |
holder2->items().push_front( MenuElem( num, SigC::bind(mem_fun(*this,&seqedit::do_action), transpose_h, i ))); |
448 |
holder2->items().push_front( MenuElem( num, sigc::bind(mem_fun(*this,&seqedit::do_action), transpose_h, i ))); |
449 |
} |
449 |
} |
450 |
} |
450 |
} |
451 |
|
451 |
|
Lines 574-580
Link Here
|
574 |
/* beats per measure */ |
574 |
/* beats per measure */ |
575 |
m_button_bpm = manage( new Button()); |
575 |
m_button_bpm = manage( new Button()); |
576 |
m_button_bpm->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( down_xpm )))); |
576 |
m_button_bpm->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( down_xpm )))); |
577 |
m_button_bpm->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_bpm )); |
577 |
m_button_bpm->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_bpm )); |
578 |
m_tooltips->set_tip( *m_button_bpm, "Time Signature. Beats per Measure" ); |
578 |
m_tooltips->set_tip( *m_button_bpm, "Time Signature. Beats per Measure" ); |
579 |
m_entry_bpm = manage( new Entry()); |
579 |
m_entry_bpm = manage( new Entry()); |
580 |
m_entry_bpm->set_width_chars(2); |
580 |
m_entry_bpm->set_width_chars(2); |
Lines 588-594
Link Here
|
588 |
/* beat width */ |
588 |
/* beat width */ |
589 |
m_button_bw = manage( new Button()); |
589 |
m_button_bw = manage( new Button()); |
590 |
m_button_bw->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( down_xpm )))); |
590 |
m_button_bw->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( down_xpm )))); |
591 |
m_button_bw->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_bw )); |
591 |
m_button_bw->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_bw )); |
592 |
m_tooltips->set_tip( *m_button_bw, "Time Signature. Length of Beat" ); |
592 |
m_tooltips->set_tip( *m_button_bw, "Time Signature. Length of Beat" ); |
593 |
m_entry_bw = manage( new Entry()); |
593 |
m_entry_bw = manage( new Entry()); |
594 |
m_entry_bw->set_width_chars(2); |
594 |
m_entry_bw->set_width_chars(2); |
Lines 601-607
Link Here
|
601 |
/* length */ |
601 |
/* length */ |
602 |
m_button_length = manage( new Button()); |
602 |
m_button_length = manage( new Button()); |
603 |
m_button_length->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( length_xpm )))); |
603 |
m_button_length->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( length_xpm )))); |
604 |
m_button_length->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_length )); |
604 |
m_button_length->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_length )); |
605 |
m_tooltips->set_tip( *m_button_length, "Sequence length in Bars." ); |
605 |
m_tooltips->set_tip( *m_button_length, "Sequence length in Bars." ); |
606 |
m_entry_length = manage( new Entry()); |
606 |
m_entry_length = manage( new Entry()); |
607 |
m_entry_length->set_width_chars(2); |
607 |
m_entry_length->set_width_chars(2); |
Lines 664-670
Link Here
|
664 |
/* snap */ |
664 |
/* snap */ |
665 |
m_button_snap = manage( new Button()); |
665 |
m_button_snap = manage( new Button()); |
666 |
m_button_snap->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( snap_xpm )))); |
666 |
m_button_snap->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( snap_xpm )))); |
667 |
m_button_snap->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_snap )); |
667 |
m_button_snap->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_snap )); |
668 |
m_tooltips->set_tip( *m_button_snap, "Grid snap." ); |
668 |
m_tooltips->set_tip( *m_button_snap, "Grid snap." ); |
669 |
m_entry_snap = manage( new Entry()); |
669 |
m_entry_snap = manage( new Entry()); |
670 |
m_entry_snap->set_width_chars(5); |
670 |
m_entry_snap->set_width_chars(5); |
Lines 677-683
Link Here
|
677 |
/* note_length */ |
677 |
/* note_length */ |
678 |
m_button_note_length = manage( new Button()); |
678 |
m_button_note_length = manage( new Button()); |
679 |
m_button_note_length->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( note_length_xpm )))); |
679 |
m_button_note_length->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( note_length_xpm )))); |
680 |
m_button_note_length->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_note_length )); |
680 |
m_button_note_length->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_note_length )); |
681 |
m_tooltips->set_tip( *m_button_note_length, "Note Length." ); |
681 |
m_tooltips->set_tip( *m_button_note_length, "Note Length." ); |
682 |
m_entry_note_length = manage( new Entry()); |
682 |
m_entry_note_length = manage( new Entry()); |
683 |
m_entry_note_length->set_width_chars(5); |
683 |
m_entry_note_length->set_width_chars(5); |
Lines 690-696
Link Here
|
690 |
/* zoom */ |
690 |
/* zoom */ |
691 |
m_button_zoom = manage( new Button()); |
691 |
m_button_zoom = manage( new Button()); |
692 |
m_button_zoom->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( zoom_xpm )))); |
692 |
m_button_zoom->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( zoom_xpm )))); |
693 |
m_button_zoom->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_zoom )); |
693 |
m_button_zoom->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_zoom )); |
694 |
m_tooltips->set_tip( *m_button_zoom, "Zoom. Pixels to Ticks" ); |
694 |
m_tooltips->set_tip( *m_button_zoom, "Zoom. Pixels to Ticks" ); |
695 |
m_entry_zoom = manage( new Entry()); |
695 |
m_entry_zoom = manage( new Entry()); |
696 |
m_entry_zoom->set_width_chars(4); |
696 |
m_entry_zoom->set_width_chars(4); |
Lines 705-711
Link Here
|
705 |
/* key */ |
705 |
/* key */ |
706 |
m_button_key = manage( new Button()); |
706 |
m_button_key = manage( new Button()); |
707 |
m_button_key->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( key_xpm )))); |
707 |
m_button_key->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( key_xpm )))); |
708 |
m_button_key->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_key )); |
708 |
m_button_key->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_key )); |
709 |
m_tooltips->set_tip( *m_button_key, "Key of Sequence" ); |
709 |
m_tooltips->set_tip( *m_button_key, "Key of Sequence" ); |
710 |
m_entry_key = manage( new Entry()); |
710 |
m_entry_key = manage( new Entry()); |
711 |
m_entry_key->set_width_chars(5); |
711 |
m_entry_key->set_width_chars(5); |
Lines 717-723
Link Here
|
717 |
/* music scale */ |
717 |
/* music scale */ |
718 |
m_button_scale = manage( new Button()); |
718 |
m_button_scale = manage( new Button()); |
719 |
m_button_scale->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( scale_xpm )))); |
719 |
m_button_scale->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( scale_xpm )))); |
720 |
m_button_scale->signal_clicked().connect( SigC::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_scale )); |
720 |
m_button_scale->signal_clicked().connect( sigc::bind<Menu *>( mem_fun( *this, &seqedit::popup_menu), m_menu_scale )); |
721 |
m_tooltips->set_tip( *m_button_scale, "Musical Scale" ); |
721 |
m_tooltips->set_tip( *m_button_scale, "Musical Scale" ); |
722 |
m_entry_scale = manage( new Entry()); |
722 |
m_entry_scale = manage( new Entry()); |
723 |
m_entry_scale->set_width_chars(5); |
723 |
m_entry_scale->set_width_chars(5); |
Lines 745-761
Link Here
|
745 |
#if 0 |
745 |
#if 0 |
746 |
/* Select */ |
746 |
/* Select */ |
747 |
m_radio_select = manage( new RadioButton( "Sel", true )); |
747 |
m_radio_select = manage( new RadioButton( "Sel", true )); |
748 |
m_radio_select->signal_clicked().connect( SigC::bind(mem_fun( *this, &seqedit::mouse_action ), e_action_select )); |
748 |
m_radio_select->signal_clicked().connect( sigc::bind(mem_fun( *this, &seqedit::mouse_action ), e_action_select )); |
749 |
m_hbox3->pack_start( *m_radio_select, false, false ); |
749 |
m_hbox3->pack_start( *m_radio_select, false, false ); |
750 |
|
750 |
|
751 |
/* Draw */ |
751 |
/* Draw */ |
752 |
m_radio_draw = manage( new RadioButton( "Draw" )); |
752 |
m_radio_draw = manage( new RadioButton( "Draw" )); |
753 |
m_radio_draw->signal_clicked().connect( SigC::bind(mem_fun( *this, &seqedit::mouse_action ), e_action_draw )); |
753 |
m_radio_draw->signal_clicked().connect( sigc::bind(mem_fun( *this, &seqedit::mouse_action ), e_action_draw )); |
754 |
m_hbox3->pack_start( *m_radio_draw, false, false ); |
754 |
m_hbox3->pack_start( *m_radio_draw, false, false ); |
755 |
|
755 |
|
756 |
/* Grow */ |
756 |
/* Grow */ |
757 |
m_radio_grow = manage( new RadioButton( "Grow" )); |
757 |
m_radio_grow = manage( new RadioButton( "Grow" )); |
758 |
m_radio_grow->signal_clicked().connect( SigC::bind(mem_fun( *this, &seqedit::mouse_action ), e_action_grow )); |
758 |
m_radio_grow->signal_clicked().connect( sigc::bind(mem_fun( *this, &seqedit::mouse_action ), e_action_grow )); |
759 |
m_hbox3->pack_start( *m_radio_grow, false, false ); |
759 |
m_hbox3->pack_start( *m_radio_grow, false, false ); |
760 |
|
760 |
|
761 |
/* Stretch */ |
761 |
/* Stretch */ |
Lines 800-806
Link Here
|
800 |
mastermidibus *masterbus = m_mainperf->get_master_midi_bus(); |
800 |
mastermidibus *masterbus = m_mainperf->get_master_midi_bus(); |
801 |
for ( int i=0; i< masterbus->get_num_out_buses(); i++ ){ |
801 |
for ( int i=0; i< masterbus->get_num_out_buses(); i++ ){ |
802 |
m_menu_midibus->items().push_back(MenuElem(masterbus->get_midi_out_bus_name(i), |
802 |
m_menu_midibus->items().push_back(MenuElem(masterbus->get_midi_out_bus_name(i), |
803 |
SigC::bind(mem_fun(*this,&seqedit::set_midi_bus), i))); |
803 |
sigc::bind(mem_fun(*this,&seqedit::set_midi_bus), i))); |
804 |
} |
804 |
} |
805 |
|
805 |
|
806 |
m_menu_midibus->popup(0,0); |
806 |
m_menu_midibus->popup(0,0); |
Lines 832-838
Link Here
|
832 |
string(")") ); |
832 |
string(")") ); |
833 |
} |
833 |
} |
834 |
m_menu_midich->items().push_back(MenuElem(name, |
834 |
m_menu_midich->items().push_back(MenuElem(name, |
835 |
SigC::bind(mem_fun(*this,&seqedit::set_midi_channel), |
835 |
sigc::bind(mem_fun(*this,&seqedit::set_midi_channel), |
836 |
i ))); |
836 |
i ))); |
837 |
} |
837 |
} |
838 |
|
838 |
|
Lines 853-859
Link Here
|
853 |
m_menu_sequences = manage( new Menu()); |
853 |
m_menu_sequences = manage( new Menu()); |
854 |
|
854 |
|
855 |
m_menu_sequences->items().push_back(MenuElem("Off", |
855 |
m_menu_sequences->items().push_back(MenuElem("Off", |
856 |
SigC::bind(mem_fun(*this, &seqedit::set_background_sequence), -1))); |
856 |
sigc::bind(mem_fun(*this, &seqedit::set_background_sequence), -1))); |
857 |
m_menu_sequences->items().push_back( SeparatorElem( )); |
857 |
m_menu_sequences->items().push_back( SeparatorElem( )); |
858 |
|
858 |
|
859 |
for ( int ss=0; ss<c_max_sets; ++ss ){ |
859 |
for ( int ss=0; ss<c_max_sets; ++ss ){ |
Lines 881-887
Link Here
|
881 |
sprintf( name, "[%d] %.13s", i, seq->get_name() ); |
881 |
sprintf( name, "[%d] %.13s", i, seq->get_name() ); |
882 |
|
882 |
|
883 |
menu_ss->items().push_back(MenuElem(name, |
883 |
menu_ss->items().push_back(MenuElem(name, |
884 |
SigC::bind(mem_fun(*this,&seqedit::set_background_sequence), i))); |
884 |
sigc::bind(mem_fun(*this,&seqedit::set_background_sequence), i))); |
885 |
|
885 |
|
886 |
} |
886 |
} |
887 |
} |
887 |
} |
Lines 964-992
Link Here
|
964 |
|
964 |
|
965 |
m_menu_data->items().push_back( ImageMenuElem( "Note On Velocity", |
965 |
m_menu_data->items().push_back( ImageMenuElem( "Note On Velocity", |
966 |
*create_menu_image( note_on ), |
966 |
*create_menu_image( note_on ), |
967 |
SigC::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_NOTE_ON, 0 ))); |
967 |
sigc::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_NOTE_ON, 0 ))); |
968 |
|
968 |
|
969 |
m_menu_data->items().push_back( SeparatorElem( )); |
969 |
m_menu_data->items().push_back( SeparatorElem( )); |
970 |
|
970 |
|
971 |
m_menu_data->items().push_back( ImageMenuElem( "Note Off Velocity", |
971 |
m_menu_data->items().push_back( ImageMenuElem( "Note Off Velocity", |
972 |
*create_menu_image( note_off ), |
972 |
*create_menu_image( note_off ), |
973 |
SigC::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_NOTE_OFF, 0 ))); |
973 |
sigc::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_NOTE_OFF, 0 ))); |
974 |
|
974 |
|
975 |
m_menu_data->items().push_back( ImageMenuElem( "AfterTouch", |
975 |
m_menu_data->items().push_back( ImageMenuElem( "AfterTouch", |
976 |
*create_menu_image( aftertouch ), |
976 |
*create_menu_image( aftertouch ), |
977 |
SigC::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_AFTERTOUCH, 0 ))); |
977 |
sigc::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_AFTERTOUCH, 0 ))); |
978 |
|
978 |
|
979 |
m_menu_data->items().push_back( ImageMenuElem( "Program Change", |
979 |
m_menu_data->items().push_back( ImageMenuElem( "Program Change", |
980 |
*create_menu_image( program_change ), |
980 |
*create_menu_image( program_change ), |
981 |
SigC::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_PROGRAM_CHANGE, 0 ))); |
981 |
sigc::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_PROGRAM_CHANGE, 0 ))); |
982 |
|
982 |
|
983 |
m_menu_data->items().push_back( ImageMenuElem( "Channel Pressure", |
983 |
m_menu_data->items().push_back( ImageMenuElem( "Channel Pressure", |
984 |
*create_menu_image( channel_pressure ), |
984 |
*create_menu_image( channel_pressure ), |
985 |
SigC::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_CHANNEL_PRESSURE, 0 ))); |
985 |
sigc::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_CHANNEL_PRESSURE, 0 ))); |
986 |
|
986 |
|
987 |
m_menu_data->items().push_back( ImageMenuElem( "Pitch Wheel", |
987 |
m_menu_data->items().push_back( ImageMenuElem( "Pitch Wheel", |
988 |
*create_menu_image( pitch_wheel ), |
988 |
*create_menu_image( pitch_wheel ), |
989 |
SigC::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_PITCH_WHEEL , 0 ))); |
989 |
sigc::bind(mem_fun(*this,&seqedit::set_data_type), (unsigned char) EVENT_PITCH_WHEEL , 0 ))); |
990 |
|
990 |
|
991 |
m_menu_data->items().push_back( SeparatorElem( )); |
991 |
m_menu_data->items().push_back( SeparatorElem( )); |
992 |
|
992 |
|
Lines 1007-1013
Link Here
|
1007 |
|
1007 |
|
1008 |
menu_cc->items().push_back( ImageMenuElem( controller_name, |
1008 |
menu_cc->items().push_back( ImageMenuElem( controller_name, |
1009 |
*create_menu_image( ccs[i*16+j]), |
1009 |
*create_menu_image( ccs[i*16+j]), |
1010 |
SigC::bind(mem_fun(*this,&seqedit::set_data_type), |
1010 |
sigc::bind(mem_fun(*this,&seqedit::set_data_type), |
1011 |
(unsigned char) EVENT_CONTROL_CHANGE, i*16+j))); |
1011 |
(unsigned char) EVENT_CONTROL_CHANGE, i*16+j))); |
1012 |
} |
1012 |
} |
1013 |
m_menu_data->items().push_back( MenuElem( string(b), *menu_cc )); |
1013 |
m_menu_data->items().push_back( MenuElem( string(b), *menu_cc )); |