1864 |
|
|
1865 |
gig::Instrument* MainWindow::get_instrument() |
gig::Instrument* MainWindow::get_instrument() |
1866 |
{ |
{ |
1867 |
gig::Instrument* instrument = 0; |
gig::Instrument* instrument = NULL; |
1868 |
|
|
1869 |
|
// get indeces of visual selection |
1870 |
std::vector<Gtk::TreeModel::Path> rows = m_TreeViewInstruments.get_selection()->get_selected_rows(); |
std::vector<Gtk::TreeModel::Path> rows = m_TreeViewInstruments.get_selection()->get_selected_rows(); |
1871 |
if (rows.empty()) return NULL; |
if (rows.empty()) return NULL; |
1872 |
|
|
1873 |
|
// convert index of visual selection (i.e. if filtered) to index of model |
1874 |
|
Gtk::TreeModel::Path path = m_refInstrumentsModelFilter->convert_path_to_child_path(rows[0]); |
1875 |
|
if (!path) return NULL; |
1876 |
|
|
1877 |
//NOTE: was const_iterator before, which did not compile with GTKMM4 development branch, probably going to be fixed before final GTKMM4 release though. |
//NOTE: was const_iterator before, which did not compile with GTKMM4 development branch, probably going to be fixed before final GTKMM4 release though. |
1878 |
Gtk::TreeModel::iterator it = m_refInstrumentsTreeModel->get_iter(rows[0]); |
Gtk::TreeModel::iterator it = m_refInstrumentsTreeModel->get_iter(path); |
1879 |
if (it) { |
if (it) { |
1880 |
Gtk::TreeModel::Row row = *it; |
Gtk::TreeModel::Row row = *it; |
1881 |
instrument = row[m_InstrumentsModel.m_col_instr]; |
instrument = row[m_InstrumentsModel.m_col_instr]; |
1945 |
// select item in instrument menu |
// select item in instrument menu |
1946 |
std::vector<Gtk::TreeModel::Path> rows = m_TreeViewInstruments.get_selection()->get_selected_rows(); |
std::vector<Gtk::TreeModel::Path> rows = m_TreeViewInstruments.get_selection()->get_selected_rows(); |
1947 |
if (!rows.empty()) { |
if (!rows.empty()) { |
1948 |
Gtk::TreeModel::iterator it = m_refInstrumentsTreeModel->get_iter(rows[0]); |
// convert index of visual selection (i.e. if filtered) to index of model |
1949 |
|
Gtk::TreeModel::Path row = m_refInstrumentsModelFilter->convert_path_to_child_path(rows[0]); |
1950 |
|
Gtk::TreeModel::iterator it = m_refInstrumentsTreeModel->get_iter(row); |
1951 |
if (it) { |
if (it) { |
1952 |
Gtk::TreePath path(it); |
Gtk::TreePath path(it); |
1953 |
int index = path[0]; |
int index = path[0]; |
3614 |
{ |
{ |
3615 |
instrumentProps.signal_name_changed().clear(); |
instrumentProps.signal_name_changed().clear(); |
3616 |
|
|
3617 |
|
// get visual selection |
3618 |
std::vector<Gtk::TreeModel::Path> rows = m_TreeViewInstruments.get_selection()->get_selected_rows(); |
std::vector<Gtk::TreeModel::Path> rows = m_TreeViewInstruments.get_selection()->get_selected_rows(); |
3619 |
if (rows.empty()) { |
if (rows.empty()) { |
3620 |
instrumentProps.hide(); |
instrumentProps.hide(); |
3621 |
return false; |
return false; |
3622 |
} |
} |
3623 |
|
|
3624 |
|
// convert index of visual selection (i.e. if filtered) to index of model |
3625 |
|
Gtk::TreeModel::Path path = m_refInstrumentsModelFilter->convert_path_to_child_path(rows[0]); |
3626 |
|
|
3627 |
//NOTE: was const_iterator before, which did not compile with GTKMM4 development branch, probably going to be fixed before final GTKMM4 release though. |
//NOTE: was const_iterator before, which did not compile with GTKMM4 development branch, probably going to be fixed before final GTKMM4 release though. |
3628 |
Gtk::TreeModel::iterator it = m_refInstrumentsTreeModel->get_iter(rows[0]); |
Gtk::TreeModel::iterator it = m_refInstrumentsTreeModel->get_iter(path); |
3629 |
if (it) { |
if (it) { |
3630 |
Gtk::TreeModel::Row row = *it; |
Gtk::TreeModel::Row row = *it; |
3631 |
gig::Instrument* instrument = row[m_InstrumentsModel.m_col_instr]; |
gig::Instrument* instrument = row[m_InstrumentsModel.m_col_instr]; |
3735 |
|
|
3736 |
void MainWindow::show_script_slots() { |
void MainWindow::show_script_slots() { |
3737 |
if (!file) return; |
if (!file) return; |
3738 |
|
|
3739 |
// get selected instrument |
// get selected instrument |
3740 |
std::vector<Gtk::TreeModel::Path> rows = m_TreeViewInstruments.get_selection()->get_selected_rows(); |
gig::Instrument* instrument = get_instrument(); |
|
if (rows.empty()) return; |
|
|
Gtk::TreeModel::iterator it = m_refInstrumentsTreeModel->get_iter(rows[0]); |
|
|
if (!it) return; |
|
|
Gtk::TreeModel::Row row = *it; |
|
|
gig::Instrument* instrument = row[m_InstrumentsModel.m_col_instr]; |
|
3741 |
if (!instrument) return; |
if (!instrument) return; |
3742 |
|
|
3743 |
ScriptSlots* window = new ScriptSlots; |
ScriptSlots* window = new ScriptSlots; |