--- gigedit/trunk/src/gigedit/mainwindow.h 2007/07/05 17:12:20 1261 +++ gigedit/trunk/src/gigedit/mainwindow.h 2007/10/04 23:29:22 1382 @@ -55,7 +55,7 @@ public: InstrumentProps(); void set_instrument(gig::Instrument* instrument); - sigc::signal signal_instrument_changed(); + sigc::signal& signal_instrument_changed(); protected: Gtk::VBox vbox; Gtk::HButtonBox buttonBox; @@ -74,6 +74,8 @@ NoteEntry eDimensionKeyRangeLow; NoteEntry eDimensionKeyRangeHigh; int rowno; + void add_prop(BoolEntry& prop); + void add_prop(BoolEntryPlus6& prop); void add_prop(LabelWidget& prop); void key_range_low_changed(); void key_range_high_changed(); @@ -115,6 +117,15 @@ void load_file(const char* name); void load_instrument(gig::Instrument* instr); void file_changed(); + sigc::signal& signal_file_structure_to_be_changed(); + sigc::signal& signal_file_structure_changed(); + sigc::signal >& signal_samples_to_be_removed(); + sigc::signal& signal_samples_removed(); + sigc::signal& signal_region_to_be_changed(); + sigc::signal& signal_region_changed(); + sigc::signal& signal_dimreg_to_be_changed(); + sigc::signal& signal_dimreg_changed(); + sigc::signal& signal_sample_ref_changed(); protected: Glib::RefPtr actionGroup; @@ -126,6 +137,16 @@ PropDialog propDialog; InstrumentProps instrumentProps; + sigc::signal file_structure_to_be_changed_signal; + sigc::signal file_structure_changed_signal; + sigc::signal > samples_to_be_removed_signal; + sigc::signal samples_removed_signal; + sigc::signal region_to_be_changed_signal; + sigc::signal region_changed_signal; + sigc::signal dimreg_to_be_changed_signal; + sigc::signal dimreg_changed_signal; + sigc::signal sample_ref_changed_signal; + void on_instrument_selection_change(int index); void on_sel_change(); void region_changed(); @@ -214,9 +235,10 @@ LoadDialog* load_dialog; Loader* loader; - void load_gig(gig::File* gig, const char* filename); + void load_gig(gig::File* gig, const char* filename, bool isSharedInstrument = false); gig::File* file; + bool file_is_shared; bool file_has_name; bool file_is_changed; std::string filename; @@ -224,14 +246,17 @@ bool file_save(); bool file_save_as(); + bool check_if_savable(); void on_button_release(GdkEventButton* button); + void on_sample_treeview_drag_begin(const Glib::RefPtr& context); void on_sample_treeview_drag_data_get(const Glib::RefPtr&, Gtk::SelectionData& selection_data, guint, guint); void on_sample_label_drop_drag_data_received(const Glib::RefPtr& context, int, int, const Gtk::SelectionData& selection_data, guint, guint time); + void sample_name_changed(const Gtk::TreeModel::Path& path, const Gtk::TreeModel::iterator& iter); void instrument_name_changed(const Gtk::TreeModel::Path& path, @@ -241,10 +266,13 @@ void __clear(); bool close_confirmation_dialog(); + bool leaving_shared_mode_dialog(); Gtk::Menu* popup_menu; bool on_delete_event(GdkEventAny* event); + + bool first_call_to_drag_data_get; }; #endif