--- gigedit/branches/linuxsampler_org/src/mainwindow.h 2007/03/03 12:20:01 1052 +++ gigedit/trunk/src/mainwindow.h 2007/03/10 08:16:38 1088 @@ -43,6 +43,9 @@ #include #include #include +#include + +#include #include "regionchooser.h" #include "dimregionchooser.h" @@ -468,6 +471,7 @@ PropDialog propDialog; InstrumentProps instrumentProps; + void on_instrument_selection_change(int index); void on_sel_change(); void region_changed(); void dimreg_changed(); @@ -484,9 +488,7 @@ Gtk::TreeModelColumn m_col_name; Gtk::TreeModelColumn m_col_instr; - }; - - ModelColumns m_Columns; + } m_Columns; Gtk::VBox m_VBox; Gtk::HPaned m_HPaned; @@ -495,7 +497,25 @@ Gtk::TreeView m_TreeView; Glib::RefPtr m_refTreeModel; + class SamplesModel : public Gtk::TreeModel::ColumnRecord { + public: + SamplesModel() { + add(m_col_name); + add(m_col_sample); + add(m_col_group); + } + + Gtk::TreeModelColumn m_col_name; + Gtk::TreeModelColumn m_col_sample; + Gtk::TreeModelColumn m_col_group; + } m_SamplesModel; + + Gtk::ScrolledWindow m_ScrolledWindowSamples; + Gtk::TreeView m_TreeViewSamples; + Glib::RefPtr m_refSamplesTreeModel; + Gtk::Notebook m_Notebook; + Gtk::Notebook m_TreeViewNotebook; Gtk::Table* table[5]; @@ -504,6 +524,12 @@ Gtk::Label* lSample; Gtk::Entry* wSample; + struct SampleImportItem { + gig::Sample* gig_sample; // pointer to the gig::Sample to which the sample data should be imported to + Glib::ustring sample_path; // file name of the sample to be imported + }; + std::list m_SampleImportQueue; + void VCFEnabled_toggled(); void VCFCutoffController_changed(); void VCFResonanceController_changed(); @@ -527,6 +553,13 @@ void on_action_file_properties(); void on_action_help_about(); + // sample right-click popup actions + void on_sample_treeview_button_release(GdkEventButton* button); + void on_action_sample_properties(); + void on_action_add_group(); + void on_action_add_sample(); + void on_action_remove_sample(); + LoadDialog* load_dialog; Loader* loader; void load_gig(gig::File* gig, const char* filename); @@ -535,6 +568,8 @@ void on_button_release(GdkEventButton* button); + void __import_queued_samples(); + Gtk::Menu* popup_menu; };