19 #ifndef __gtk_ardour_editor_regions_h__
20 #define __gtk_ardour_editor_regions_h__
23 #include <boost/unordered_map.hpp>
68 _display.get_selection()->unselect_all ();
78 struct Columns :
public Gtk::TreeModel::ColumnRecord {
98 Gtk::TreeModelColumn<std::string>
name;
99 Gtk::TreeModelColumn<boost::shared_ptr<ARDOUR::Region> >
region;
102 Gtk::TreeModelColumn<std::string>
end;
103 Gtk::TreeModelColumn<std::string>
length;
104 Gtk::TreeModelColumn<std::string>
sync;
105 Gtk::TreeModelColumn<std::string>
fadein;
111 Gtk::TreeModelColumn<std::string>
used;
112 Gtk::TreeModelColumn<std::string>
path;
128 bool selection_filter (
const Glib::RefPtr<Gtk::TreeModel>& model,
const Gtk::TreeModel::Path& path,
bool yn);
134 void name_edit (
const std::string&,
const std::string&);
150 int sorter (Gtk::TreeModel::iterator, Gtk::TreeModel::iterator);
177 Glib::RefPtr<Gdk::DragContext>
const &, gint, gint, Gtk::SelectionData
const &, guint, guint
206 typedef boost::unordered_map<boost::shared_ptr<ARDOUR::Region>, Gtk::TreeModel::RowReference>
RegionRowMap;
207 typedef boost::unordered_map<std::string, Gtk::TreeModel::RowReference >
RegionSourceMap;
Gtk::TreeModelColumn< Gdk::Color > color_
void populate_row_glued(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
Gtk::TreeModelColumn< std::string > used
void region_changed(boost::shared_ptr< ARDOUR::Region >, PBD::PropertyChange const &)
void show_context_menu(int button, int time)
Gtk::TreeModelColumn< std::string > path
void populate_row(boost::shared_ptr< ARDOUR::Region >, Gtk::TreeModel::Row const &)
void reset_sort_type(Editing::RegionListSortType, bool)
void populate_row_sync(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
bool focus_out(GdkEventFocus *)
Glib::RefPtr< Gtk::TreeStore > _model
Gtkmm2ext::DnDTreeView< boost::shared_ptr< ARDOUR::Region > > _display
Gtk::TreeModelColumn< bool > locked
void block_change_connection(bool b)
bool enter_notify(GdkEventCrossing *)
Gtk::TreeModelColumn< std::string > end
void populate_row_position(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
int sorter(Gtk::TreeModel::iterator, Gtk::TreeModel::iterator)
Gtk::TreeModelColumn< std::string > fadeout
void drag_data_received(Glib::RefPtr< Gdk::DragContext > const &, gint, gint, Gtk::SelectionData const &, guint, guint)
void populate_row_name(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row)
PBD::ScopedConnection editor_thaw_connection
bool leave_notify(GdkEventCrossing *)
bool key_press(GdkEventKey *)
bool button_press(GdkEventButton *)
Gtk::TreeModelColumn< boost::shared_ptr< ARDOUR::Region > > region
void update_row(boost::shared_ptr< ARDOUR::Region >)
Gtk::TreeModelColumn< bool > muted
Glib::RefPtr< Gtk::ToggleAction > toggle_show_auto_regions_action() const
void reset_sort_direction(bool)
void toggle_show_auto_regions()
boost::shared_ptr< ARDOUR::Region > get_single_selection()
Gtk::ScrolledWindow _scroller
void add_region(boost::shared_ptr< ARDOUR::Region >)
void name_edit(const std::string &, const std::string &)
Glib::RefPtr< Gtk::Action > hide_action() const
void populate_row_source(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row)
void populate_row_opaque(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
bool ignore_region_list_selection_change
void populate_row_used(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
Gtk::TreeModelColumn< std::string > sync
void locked_changed(std::string const &)
Gtk::TreeModelColumn< bool > opaque
boost::unordered_map< std::string, Gtk::TreeModel::RowReference > RegionSourceMap
void populate_row_fade_in(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used, boost::shared_ptr< ARDOUR::AudioRegion >)
void insert_into_tmp_regionlist(boost::shared_ptr< ARDOUR::Region >)
void remove_unused_regions()
std::list< boost::shared_ptr< ARDOUR::Region > > tmp_region_list
void muted_changed(std::string const &)
bool selection_filter(const Glib::RefPtr< Gtk::TreeModel > &model, const Gtk::TreeModel::Path &path, bool yn)
void opaque_changed(std::string const &)
void set_session(ARDOUR::Session *)
RegionSourceMap parent_regions_sources_map
Gtk::TreeModelColumn< std::string > length
PBD::ScopedConnection check_new_region_connection
bool _show_automatic_regions
Gtk::TreeModelColumn< bool > glued
sigc::connection _change_connection
Glib::RefPtr< Gtk::ToggleAction > toggle_full_action() const
void format_position(ARDOUR::framepos_t pos, char *buf, size_t bufsize, bool onoff=true)
Gtk::TreeModel::RowReference last_row
void set_state(const XMLNode &)
void populate_row_fade_out(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used, boost::shared_ptr< ARDOUR::AudioRegion >)
void populate_row_muted(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
void set_selected(RegionSelection &)
boost::unordered_map< boost::shared_ptr< ARDOUR::Region >, Gtk::TreeModel::RowReference > RegionRowMap
Editing::RegionListSortType sort_type() const
PBD::ScopedConnection region_property_connection
Gtk::TreeModelColumn< std::string > fadein
void name_editing_started(Gtk::CellEditable *, const Glib::ustring &)
void populate_row_length(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row)
Gtk::TreeModelColumn< bool > property_toggles_visible
bool ignore_selected_region_change
void selection_mapover(sigc::slot< void, boost::shared_ptr< ARDOUR::Region > >)
void populate_row_end(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
boost::shared_ptr< ARDOUR::Region > get_dragged_region()
Gtk::TreeModelColumn< std::string > name
XMLNode & get_state() const
RegionRowMap region_row_map
void glued_changed(std::string const &)
Gtk::TreeModelColumn< std::string > position
Glib::RefPtr< Gtk::Action > show_action() const
PBD::ScopedConnection editor_freeze_connection
Gtk::CellEditable * name_editable
Glib::RefPtr< Gtk::Action > remove_unused_regions_action() const
Editing::RegionListSortType _sort_type
bool focus_in(GdkEventFocus *)
void populate_row_locked(boost::shared_ptr< ARDOUR::Region > region, Gtk::TreeModel::Row const &row, uint32_t used)
Glib::RefPtr< Gtk::RadioAction > sort_type_action(Editing::RegionListSortType) const