503 |
m_TreeViewScripts.signal_button_press_event().connect_notify( |
m_TreeViewScripts.signal_button_press_event().connect_notify( |
504 |
sigc::mem_fun(*this, &MainWindow::on_script_treeview_button_release) |
sigc::mem_fun(*this, &MainWindow::on_script_treeview_button_release) |
505 |
); |
); |
506 |
//FIXME: why the heck does this double click signal_row_activated() only fired while CTRL key is pressed ? |
//FIXME: why the heck does this double click signal_row_activated() only fire while CTRL key is pressed ? |
507 |
m_TreeViewScripts.signal_row_activated().connect( |
m_TreeViewScripts.signal_row_activated().connect( |
508 |
sigc::mem_fun(*this, &MainWindow::script_double_clicked) |
sigc::mem_fun(*this, &MainWindow::script_double_clicked) |
509 |
); |
); |
1893 |
} |
} |
1894 |
} |
} |
1895 |
|
|
1896 |
|
/// Returns true if requested dimension region was successfully selected and scrolled to in the list view, false on error. |
1897 |
|
bool MainWindow::select_dimension_region(gig::DimensionRegion* dimRgn) { |
1898 |
|
gig::Region* pRegion = (gig::Region*) dimRgn->GetParent(); |
1899 |
|
gig::Instrument* pInstrument = (gig::Instrument*) pRegion->GetParent(); |
1900 |
|
|
1901 |
|
Glib::RefPtr<Gtk::TreeModel> model = m_TreeView.get_model(); |
1902 |
|
for (int i = 0; i < model->children().size(); ++i) { |
1903 |
|
Gtk::TreeModel::Row row = model->children()[i]; |
1904 |
|
if (row[m_Columns.m_col_instr] == pInstrument) { |
1905 |
|
// select and show the respective instrument in the list view |
1906 |
|
show_intruments_tab(); |
1907 |
|
m_TreeView.get_selection()->select(model->children()[i]); |
1908 |
|
Gtk::TreePath path( |
1909 |
|
m_TreeView.get_selection()->get_selected() |
1910 |
|
); |
1911 |
|
m_TreeView.scroll_to_row(path); |
1912 |
|
on_sel_change(); // the regular instrument selection change callback |
1913 |
|
|
1914 |
|
// select respective region in the region selector |
1915 |
|
m_RegionChooser.set_region(pRegion); |
1916 |
|
|
1917 |
|
// select and show the respective dimension region in the editor |
1918 |
|
//update_dimregs(); |
1919 |
|
if (!m_DimRegionChooser.select_dimregion(dimRgn)) return false; |
1920 |
|
//dimreg_edit.set_dim_region(dimRgn); |
1921 |
|
|
1922 |
|
return true; |
1923 |
|
} |
1924 |
|
} |
1925 |
|
|
1926 |
|
return false; |
1927 |
|
} |
1928 |
|
|
1929 |
void MainWindow::select_sample(gig::Sample* sample) { |
void MainWindow::select_sample(gig::Sample* sample) { |
1930 |
Glib::RefPtr<Gtk::TreeModel> model = m_TreeViewSamples.get_model(); |
Glib::RefPtr<Gtk::TreeModel> model = m_TreeViewSamples.get_model(); |
1931 |
for (int g = 0; g < model->children().size(); ++g) { |
for (int g = 0; g < model->children().size(); ++g) { |
2898 |
|
|
2899 |
ReferencesView* d = new ReferencesView(*this); |
ReferencesView* d = new ReferencesView(*this); |
2900 |
d->setSample(sample); |
d->setSample(sample); |
2901 |
|
d->dimension_region_selected.connect( |
2902 |
|
sigc::mem_fun(*this, &MainWindow::select_dimension_region) |
2903 |
|
); |
2904 |
d->show_all(); |
d->show_all(); |
2905 |
d->resize(500, 400); |
d->resize(500, 400); |
2906 |
d->run(); |
d->run(); |