223 |
this->instrument = instrument; |
this->instrument = instrument; |
224 |
region = instrument ? instrument->GetFirstRegion() : 0; |
region = instrument ? instrument->GetFirstRegion() : 0; |
225 |
queue_draw(); |
queue_draw(); |
226 |
sel_changed_signal.emit(); |
region_selected(); |
227 |
} |
} |
228 |
|
|
229 |
bool RegionChooser::on_button_release_event(GdkEventButton* event) |
bool RegionChooser::on_button_release_event(GdkEventButton* event) |
233 |
resize.active = false; |
resize.active = false; |
234 |
|
|
235 |
if (resize.mode == resize.moving_high_limit) { |
if (resize.mode == resize.moving_high_limit) { |
236 |
resize.region->KeyRange.high = resize.pos - 1; |
if (resize.region->KeyRange.high != resize.pos - 1) { |
237 |
|
resize.region->KeyRange.high = resize.pos - 1; |
238 |
|
instrument_changed(); |
239 |
|
} |
240 |
} else if (resize.mode == resize.moving_low_limit) { |
} else if (resize.mode == resize.moving_low_limit) { |
241 |
resize.region->KeyRange.low = resize.pos; |
if (resize.region->KeyRange.low != resize.pos) { |
242 |
|
resize.region->KeyRange.low = resize.pos; |
243 |
|
instrument_changed(); |
244 |
|
} |
245 |
} |
} |
246 |
|
|
247 |
if (!is_in_resize_zone(event->x, event->y) && cursor_is_resize) { |
if (!is_in_resize_zone(event->x, event->y) && cursor_is_resize) { |
263 |
if (r) { |
if (r) { |
264 |
region = r; |
region = r; |
265 |
queue_draw(); |
queue_draw(); |
266 |
sel_changed_signal.emit(); |
region_selected(); |
267 |
popup_menu_inside_region->popup(event->button, event->time); |
popup_menu_inside_region->popup(event->button, event->time); |
268 |
} else { |
} else { |
269 |
new_region_pos = k; |
new_region_pos = k; |
283 |
if (r) { |
if (r) { |
284 |
region = r; |
region = r; |
285 |
queue_draw(); |
queue_draw(); |
286 |
sel_changed_signal.emit(); |
region_selected(); |
287 |
} |
} |
288 |
} |
} |
289 |
} |
} |
424 |
return false; |
return false; |
425 |
} |
} |
426 |
|
|
427 |
sigc::signal<void> RegionChooser::signal_sel_changed() |
sigc::signal<void> RegionChooser::signal_region_selected() |
428 |
|
{ |
429 |
|
return region_selected; |
430 |
|
} |
431 |
|
|
432 |
|
sigc::signal<void> RegionChooser::signal_instrument_changed() |
433 |
{ |
{ |
434 |
return sel_changed_signal; |
return instrument_changed; |
435 |
} |
} |
436 |
|
|
437 |
void RegionChooser::show_region_properties() |
void RegionChooser::show_region_properties() |
471 |
|
|
472 |
instrument->MoveRegion(region, r); |
instrument->MoveRegion(region, r); |
473 |
queue_draw(); |
queue_draw(); |
474 |
sel_changed_signal.emit(); |
region_selected(); |
475 |
|
instrument_changed(); |
476 |
} |
} |
477 |
|
|
478 |
void RegionChooser::delete_region() |
void RegionChooser::delete_region() |
480 |
instrument->DeleteRegion(region); |
instrument->DeleteRegion(region); |
481 |
region = 0; |
region = 0; |
482 |
queue_draw(); |
queue_draw(); |
483 |
sel_changed_signal.emit(); |
region_selected(); |
484 |
|
instrument_changed(); |
485 |
} |
} |
486 |
|
|
487 |
void RegionChooser::manage_dimensions() |
void RegionChooser::manage_dimensions() |
492 |
} |
} |
493 |
|
|
494 |
void RegionChooser::on_dimension_manager_changed() { |
void RegionChooser::on_dimension_manager_changed() { |
495 |
sel_changed_signal.emit(); |
region_selected(); |
496 |
|
instrument_changed(); |
497 |
} |
} |